ainfosec / FISSURE

The RF and reverse engineering framework for everyone. Follow and ★ to show your support!
https://twitter.com/FissureRF
GNU General Public License v3.0
1.56k stars 85 forks source link

Add support for SDRPlay devices + RTL_TCP #54

Open suzieq-1 opened 3 weeks ago

suzieq-1 commented 3 weeks ago

Hi, Could you please add support for SDRPlay devices?

Also RTL_TCP (most used form of connection to RTL SDR) and Spyserver (used by SDR#)

cpoore1 commented 3 weeks ago

Ok, I'll order some now to test. I'll search for answers but I can get a head start if you or anyone else can provide some input for me:

Same deal for the servers, they might be a little trickier to integrate but I'll test them out.

suzieq-1 commented 3 weeks ago

Thank you for your effort.

Mostly the receiver is remote on a raspberry pi, either use spyserver or rtl_tcp for RTL devices, then SDR Connect or RSP TCP for airplay devices.

The best thing would be to use it directly in FISSURE then select TCP as a device source, then select RTL_TCP, Airspy, RSP_TCP, SDR Connect, it also works this way in SDR Angel. Maybe a little textbox/select box on the TCP connect window, whereby you can give it a number so you can load multiple remote SDR's in.

cpoore1 commented 1 week ago

I now have the RSPduo and RSPdx. Looks like I'll only be using them only for 22.04-like operating systems. I don't think I can install the software as part of the FISSURE installer because of all the captchas. Best I can do is write the steps down and load the SDRconnect command from the FISSURE menu in the default location of where it gets installed. I might be able to do something with some of the plugins.

It doesn't seem to like the Soapy SDRPlay Source block out of the box in GNU Radio Companion. Nor does it appear to work after the API and SDRconnect software are installed. SDRconnect is working fine. I tried installing gr-sdrplay3 and that provides more GNU Radio blocks that work. I might not provide an option to change the antennas for the blocks since the fields are comboboxes (I have to check to see if I can tweak those settings in the FISSURE code). Gain is measured by attenuation in the block so I can either use the attenuation value or subtract it from whatever the max is to avoid doing things backwards. I'm not sure how to specify specific radios of the same type. I'm guessing it is the "RSP Selector" field and you give it a value of 0, 1, 2, etc. I only have one of each so I can't really test that other than knowing setting it to 1 produces an error for me but nothing if it is set to 0.

I'm not sure how to probe it. SoapySDRUtil commands don't do anything because SDRplay isn't installed as a module. I could do lsusb.