Running an RTL-SDR On up to 100 Meters of USB Ethernet Extension Cable
Over on Aliexpress and eBay there are now multiple USB2.0 extenders that work using Ethernet cable. These extenders advertise that is is possible to use up to 100m of Ethernet cable. Extending the USB connection rather than using coax cable is desirable as coax cable introduces signal losses the longer it is. Extending the digital side of the SDR (the USB cable) results in no signal being lost.
However, the USB2.0 specification notes that the maximum limit of the length of an extension cable is only 5 meters. We can go beyond 5 meters by using active repeater cables, but even this has limits of up to 30 meters maximum only.
So how can these USB2.0 Ethernet extenders advertise a length of up to 100m? These devices essentially convert the USB signal into an Ethernet network signal. Ethernet cable for network connections has a limit of 100 meters. Using this Ethernet extender is quite similar to using a Raspberry Pi and running the RTL_TCP software over an Ethernet cable, except that the network connection is handled entirely by the hardware.
We purchased a $45 USB2.0 extender from Aliexpress to test (there is also a cheaper $32 unit that we saw recently that should work too). The extender comes with a 1.5m USB Male to Male cable, a transmit box, a receive box and a 5V plug pack. The transmit side plugs into the PC via the USB Male to Male cable. The receiver end is placed up to 100m away, and this side must be powered by the 5V plug pack. In between you can run up to 100m of Ethernet CAT cabling.
In our testing we purchased a 50m CAT6 cable and tested to see if the extender would work with an RTL-SDR Blog V3, Airspy and SDRplay. Initially we had trouble getting SDR# to connect to the RTL-SDR. Eventually we found out that the provided USB Male to Male cable provided was of poor quality. After replacing it with a higher quality cable the extender began working properly. We also found that some USB ports on our PC wouldn't run the unit. The USB3.0 ports on the back of the PC connected directly to the motherboard worked best.
Using SDR# the RTL-SDR Blog V3 worked exactly like it was connected directly to the PC. There was no lag noticed at all, with tuning being instant. Sample rates up to 3.2 MSPS worked fine, although of course 2.56 MSPS was the limit without drops. As the receiver box is powered by a 5V plug pack, there was plenty of power available to power a 100 mA LNA via the V3's bias tee as well.
Reliability was a bit of an issue. Sometimes we'd need to replug the USB port several times before it would connect to the RTL-SDR. But once running everything appeared to be stable, and we left it running overnight at 2.56 MSPS without any problems.
Unfortunately the lower bit rate and sample rate of the RTL-SDR appears to be the limit of what the extender can handle. The Airspy with it's higher data transfer requirements due to it's 12-bit ADC didn't work properly, with audio stuttering from dropped packets (even at the lower 3 MSPS sample rate with packing enabled). The SDRplay also wouldn't work, with the SDRUno software being unable to detect the RSP1A. Even using a shorter 2M Ethernet cable did not help for these SDRs. In theory it should work since Ethernet can support a much higher data rate, but perhaps the converter chipset used in the cheap extender unit that we have isn't fast enough.
If you want to try this out, be very careful of what you purchase on Aliexpress/eBay/Amazon. There are some very very cheap USB to Ethernet extenders out there that are advertised as USB2.0, but not all of them are truly USB2.0. The very cheap ones under $5 won't work. Those cheap units actually degrade USB2.0 down to USB1.1 which will not work for an RTL-SDR or any other common SDR. The extender units that will probably work properly are all priced over $30.
It's also possible that some of the more expensive units available on Amazon (e.g. ) may be implemented better and might work with the Airspy and SDRplay. If you've tried one of the pricier units please let us know in the comments if it works. In particular this $156 KVM unit which claims a high data rate and also supports PoE may work (although PoE may cause switching noise). For extreme extensions of up to 250m, USB2.0 fiber optic extenders such as this $359 unit, or this $459 fiber optic unit which can go up to 5km (3.1 miles) might also work. If you've tried any of these please let us know in the comments.
I run a USB – Fiber Extender! Why Glas Fiber? Its simple the are an 100% Galvanic Isolation!
If y Lighting Strike Kicks in my IT Hardware many Hundred Meters Away (behind a UPS, Curqite Braker,…) dont get brocken to!
I got one is from here: http://www.studiofibersystem.com/
If someone is interested in them there is a new model who work finde with Multiple SDR!
PLEASE NOTE! The behave weird when the first get connected you should put someone at the other end until the run! When the run the run 24/7!!!
Sadly I dont get any benefit from the company for posting here…
Hi to all,
I run the extender 4 months using 20 meters CAT 6 double shielded, on the end i connect a HUB with 4x USB 3.0 ports and this use external power.
In 4x HUB are: 3x RTLSDR-V3 and 1x AIRSPY i run these for trunk DSD on SDR#.
Just start test 1x RTLSDR for inmarsat see how that go.
When startup, it take some seconds to communicate but when you know need to wait some seconds, the extension is working fine. I got 4x raspberryPi but why i use the cable option? I dont like wireless wifi send fast data 🙂 I buy the extender from company in Germany.
Another possibility for the range that may be nearly as cheap (or cheaper) is to plug the RTL-SDR into a Raspberry Pi Zero W, and then connect to the PC via rtl_tcp over WiFi. Or use a Raspberry Pi 3 or 4 with either WiFi or a long ethernet cable back to the desktop. I use these methods to connect to my RTL-SDR and Airspy HF+ Discovery from an iPad or MacBook on the opposite side of the building. WiFi for lower sample rates, or ethernet cable via the building’s network routers for higher data rates over greater distances. Requires a quiet 5V supply for the Raspberry Pi near the RTL-SDR and antenna. Ferrite cores on all the cables to reduce Pi RF noise.
Common sense is cheaper? An ex-spares-box Raspberry Pi 3 “see RPiF official how to: Headless Raspbian install (Buster? Check for latest version) VNC Server-remotely controlled [ enter name(s) of required radio data &/or Ethernet tx software settings here ] into which the rtl-sdr USB is plugged, with a pi-ups hat connected to x4 18650 cells, charging by solar panel/wind generator, charge viewing to provide typical service time as required by the radio operator. Access via WoL magic packet to a fixed IP address.
A fast-Ethernet 100 duplex connection ?
CATV twisted pair shielded cable Max length 100m
[ enter name(s) of required Ethernet connection software for both ends here ]
A new Raspberry Pi 4b (4GB) rx-fast Ethernet 100 duplex. Max resolution 4K displays x2
[ enter name(s) of required Ethernet rx connection settings + received radio data processing software here ]
You will need to install the VNC Viewer software onto the Raspberry Pi 4b to remotely control your other RPi(3b).
Also: to run the graphics of the radio data takes a lot of processing power. The RPi4b (4GB) can run a maximum of x2 4K displays simultaneously. Ensure you have the official RPi4 power supply (USB-C) and either a Flirc passive cooling case or an active cooling fan with all chip heatsinks installed to prevent thermal performance reductions being automatically applied by the operating system. I use my RPi4b(4GB) intensively as a desktop machine! With active cooling from a brushless DC fan powered directly from the APPROPRIATE GPIO pins.
Overall the RPi solutions consume little power compared to a desktop or laptop machine. I can also run a LoRa gateway from a RPi3b usb2 port and Ethernet to router. Linux is far more resilient than Windows in this connection scenario. If necessary, OpenVPN is available through the Raspbian repositories. “Seek and you shall find” in old coinage. I hope this helps.
Mentioned that using an extender is quite similar to using rtl_tcp, but there is a few advantages to the hardware USB extender:
1) Zero latency. rtl_tcp, even with ring buffer improvements has noticeable latency. If you’re rapidly scanning with a program or even by hand it can be very slow.
2) Less power, no need to run a SBC.
3) Easy setup, plug and play, no software. Theoretically it should be more reliable too.
Of course the disadvantage is that you cannot connect from anywhere.
I have used a “AV Access USB Extender 50M” (U2EX50 – four ports) – beautifully made and presented kit.
I have used it without remote power for a few SDR’s (one at a time) but for full use of more than one device, remote power (5V) probably would be required.
I have no connection with them (no pun intended) but remember when opening the boxes I thought “this is how buying it kit used to feel” I.E. well made kit in a neatly folded and secured wrapper in well fitted box, kit that actually works really well for a reasonable price.
Another option I forgot to mention, Virtualhere (*)
I have only dabbled with one low bandwidth device but it was remarkably simple to get going.
I downloaded the free RaspberryPI Zero W image, installed, few steps of setup then had a SDR-IQ connected to my network wirelessly as if it was connected locally.
Note: the FREE image only supports one device so RTL dongles are out as they present as two (I might be wrong on that but I didn’t try for long) The hardware specific, full license costs a bit more than a base PI so I figured I might go that route if I have a PI4 (or small X86 box) I want to dedicate to serving USB devices over the network. I don’t know the limitations of hardware to bandwidth so don’t buy a license then blame me if the device can’t do X bandwidth.
* or USBIP if you fancy a challenge, I have tried but with limited sucess.