USB/ethernet extender for radio

I am attempting to connect the flightaware pro plus receiver to the Rasperry pi using a USB/ethernet extender. It basically uses an ethernet cable to tie both ends of the USB. The receiver works fine when it is directly plugged into the Raspberry pi. However, I am getting no hits when it is connected via the extender. The url screen shows the radio in amber status (the message is ‘Connected to receiver but no recent data seen’). The Raaspberry pi also shows the radio as connected under lsusb:
lsusb:
Bus 001 Device 013: ID 0bda:2832 Realtek Semiconductor Corp. RTL2832U DVB-T

This means that the extender is doing its job correctly - the USB device is being recognized correctly. But I am puzzled why there is no signal. The antenna and location are identical under both cases.

Any suggestions or tests I could run to figure out the problem would be appreciated.

I should add that this is a powered extender, fed from a different 5V supply.

which decoder/feeder software you’re using dump1090-fa and Skyview ?
try to post output from sudo rtl_test -t

Thanks for that suggestion. I ran rts_test, and this is what I got.
With the transmitted plugged directly to the Raspberry. System works and reports ADSB traffic.
pi@piaware:~ $ sudo rtl_test -t
Found 1 device(s):
0: Realtek, RTL2832U, SN: 00001000

Using device 0: Generic RTL2832U
usb_claim_interface error -6
Failed to open rtlsdr device #0.

With the USB extender. No traffic being reported.
pi@piaware:~ $ sudo rtl_test -t
Found 1 device(s):
0: , , SN:

Using device 0: Generic RTL2832U
usb_claim_interface error -5
Failed to open rtlsdr device #0.

I am unsure what to make of these results.

I should add that the extender I am using is advertised to work on USB 1.0 and USB 2.0, but not USB 3.0. Could that be a possible reason? But I can’t imagine that the ADSB data really needs the data rates from USB 3.0.

@sarangan

FIRST STOP dump1090-fa to make dongle free for test.

Without Stopping dump1090-fa

pi@piaware:~ $ rtl_test -t 
Found 1 device(s):
  0:  Realtek, RTL2832U, SN: 00000000

Using device 0: Generic RTL2832U
usb_claim_interface error -6
Failed to open rtlsdr device #0.

After stopping dump1090-fa

# First stop dump1090-fa 
pi@piaware:~ $ sudo systemctl stop dump1090-fa 

# Now test
pi@piaware:~ $ rtl_test -t 
Found 1 device(s):
  0:  Realtek, RTL2832U, SN: 00000000

Using device 0: Generic RTL2832U
Found Rafael Micro R820T tuner
Supported gain values (29): 0.0 0.9 1.4 2.7 3.7 7.7 8.7 12.5 14.4 15.7 16.6 19.7 20.7 22.9 25.4 28.0 29.7 32.8 33.8 36.4 37.2 38.6 40.2 42.1 43.4 43.9 44.5 48.0 49.6
[R82XX] PLL not locked!
Sampling at 2048000 S/s.
No E4000 tuner found, aborting.

Do NOT forget to restart dump1090-fa aftrer the test

pi@piaware:~ $ sudo systemctl restart dump1090-fa 

To me it almost looks like you have power issues and the dongle doesn’t work correctly. Voltage drop maybe?

I searched a bit regarding the code -5. this pointed to a libusb error and not librtlsdr as I thought initially.

so I found FWIW all relevant error codes here and are as follows:

enum  	libusb_error { 
LIBUSB_SUCCESS = 0,
LIBUSB_ERROR_IO = -1,
LIBUSB_ERROR_INVALID_PARAM = -2,
LIBUSB_ERROR_ACCESS = -3, 
LIBUSB_ERROR_NO_DEVICE = -4,
**LIBUSB_ERROR_NOT_FOUND = -5,**
LIBUSB_ERROR_BUSY = -6,
LIBUSB_ERROR_TIMEOUT = -7,
LIBUSB_ERROR_OVERFLOW = -8,
LIBUSB_ERROR_PIPE = -9,
LIBUSB_ERROR_INTERRUPTED = -10,
LIBUSB_ERROR_NO_MEM = -11, 
LIBUSB_ERROR_NOT_SUPPORTED = -12,
LIBUSB_ERROR_OTHER = -99 
}

Error codes.

Most libusb functions return 0 on success or one of these codes on failure. You can call libusb_error_name() to retrieve a string representation of an error code or libusb_strerror() to get an end-user suitable description of an error code.

Enumerator
LIBUSB_SUCCESS 	
Success (no error)

LIBUSB_ERROR_IO 	
Input/output error.

LIBUSB_ERROR_INVALID_PARAM 	
Invalid parameter.

LIBUSB_ERROR_ACCESS 	
Access denied (insufficient permissions)

LIBUSB_ERROR_NO_DEVICE 	
No such device (it may have been disconnected)

LIBUSB_ERROR_NOT_FOUND 	
**Entity not found.**

LIBUSB_ERROR_BUSY 	
Resource busy.

LIBUSB_ERROR_TIMEOUT 	
Operation timed out.

LIBUSB_ERROR_OVERFLOW 	
Overflow.

LIBUSB_ERROR_PIPE 	
Pipe error.

LIBUSB_ERROR_INTERRUPTED 	
System call interrupted (perhaps due to signal)

LIBUSB_ERROR_NO_MEM 	
Insufficient memory.

LIBUSB_ERROR_NOT_SUPPORTED 	
Operation not supported or unimplemented on this platform.

LIBUSB_ERROR_OTHER 	
Other error.

I redid the rtl_test after stopping dump1090-fa. This is what I found:

With the radio connected directly to the Raspberry Pi

pi@piaware:~ $ rtl_test -t
Found 1 device(s):
0: Realtek, RTL2832U, SN: 00001000

Using device 0: Generic RTL2832U
Detached kernel driver
Found Rafael Micro R820T tuner
Supported gain values (29): 0.0 0.9 1.4 2.7 3.7 7.7 8.7 12.5 14.4 15.7 16.6 19.7 20.7 22.9 25.4 28.0 29.7 32.8 33.8 36.4 37.2 38.6 40.2 42.1 43.4 43.9 44.5 48.0 49.6
[R82XX] PLL not locked!
Sampling at 2048000 S/s.
No E4000 tuner found, aborting.
Reattached kernel driver

With the radio attached through the extender cable:

pi@piaware:~ $ rtl_test -t
Found 1 device(s):
0: , , SN:

Using device 0: Generic RTL2832U
rtlsdr_write_reg failed with -1
Resetting device…
rtlsdr_write_reg failed with -4
rtlsdr_write_reg failed with -4
rtlsdr_write_reg failed with -4
rtlsdr_write_reg failed with -4
rtlsdr_write_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_read_reg failed with -4
rtlsdr_write_reg failed with -4
rtlsdr_read_reg failed with -4
rtlsdr_write_reg failed with -4
rtlsdr_read_reg failed with -4
rtlsdr_write_reg failed with -4
rtlsdr_read_reg failed with -4
rtlsdr_write_reg failed with -4
No supported tuner found
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
Enabled direct sampling mode, input 1
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
Supported gain values (1): 0.0
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
rtlsdr_demod_write_reg failed with -4
rtlsdr_demod_read_reg failed with -4
WARNING: Failed to set sample rate.
No E4000 tuner found, aborting.
rtlsdr_write_reg failed with -4

@sarangan

The USB extender cable is the culprit.

  • Plug-in the dongle directly into the Pi
    OR
  • Use another better USB extender cable. Avoid using long one, keep it as short as practicable.
1 Like

If you are running an ethernet cable anyway and have power where the dongle is just place the raspi there?

Or does the usb extender run the power over the ethernet cable? In that case you could still get PoE i guess.

I should add that the ethernet cable is only 3 ft long, for this test. The other end of the USB is powered from a 5V supply (also a short length lead from the outlet). I swapped out the power supply and got the same results.

One thing I’d like to know is, does the flightaware pro plus radio require USB 3.0?

My FA Pro and Pro Plus both work OK with my 2 Pis and a Windows Desktop, all having USB 2.0

OK thanks. That seems to suggest the USB extender might be faulty. However, this is brand new. The make/model is IOGEAR GUEC62 USB 2.0 BoostLinq Ethernet - 164ft. I guess I’ll buy another model and try it again.

the datasheet says for Linux, Unix and other USB supported systems, additional drivers and support may be needed, so best to give their support a call and explain the problem.

curiosity, have you tried without powering the remote unit ?

USB 2.0 BoostLinq Ethernet - 164ft (TAA Compliant)

The kit includes a power supply and two dongles. The local dongle connects directly to your computer and the remote dongle connects directly to your USB device. These two dongles are interconnected with Cat5, Cat5e, or Cat6 cabling (not included) to extend the USB device any distance desired- up to 164 feet (50 meters). The GUCE62 is simple to set up and requires no additional drivers to install.

Operating System Requirements

Windows
Windows Vista®, Windows® 7, Windows® 8, Windows® 8.1

Mac
Mac OS X v10.3.9

Linux
Linux Kernel

Chrome OS
Google Chrome OS?

USB Specification USB 2.0

Cable Connections
Input Transmitter: USB A Male; Receiver: RJ45
Output Transmitter: RJ45; Receiver: USB A Female

Transfer Rate Up to 480Mbps

Cable Length Transmitter: USB cable 1ft (included); Receiver: Cat 5, Cat 5e or Cat 6 cable (not included) up to 164ft (50m)

Cable Distance Maximum cable distance from Transmitter to Receiver: 164ft (50m)
Cable Type Ethernet Cat 5, Cat 5e or Cat 6 required for connection between receiver and transmitter.

Connectors
AC Power Inlets Barrel type

Max Output Power 500mA @ 5V

LEDs
Link 1

Operating Temperature 0 to 85 degrees (Celsius)

I suggest that to clear USB 2.0 / 3.0 doubt, if you have a small (say 6 ft) USB 2.0 extender, then use it to connect Pro Stick to Pi. This test will clear your doubt.

https://www.amazon.com/AmazonBasics-Extension-Cable-Male-Female/dp/B00NH136GE

This unit cannot be used without powering the remote end because the connection is a Cat5 cable (I assume no power is carried by the cable).

The Dollar Store variety did the trick for me.

1 Like

Try using one of these instead:

https://www.amazon.com/dp/B005LJKEXS/ref=sxts_kp_tr_2?pf_rd_m=ATVPDKIKX0DER&pf_rd_p=8778bc68-27e7-403f-8460-de48b6e788fb&pd_rd_wg=eHtHV&pf_rd_r=MKT11TXX37AEQ2VD674W&pf_rd_s=desktop-sx-top-slot&pf_rd_t=301&pd_rd_i=B005LJKEXS&pd_rd_w=bfyB9&pf_rd_i=usb+repeater+cable&pd_rd_r=5da72ecd-2723-44e9-b54b-52f063fb4bd4&ie=UTF8&qid=1536286403&sr=2

There are other lengths.

When trying to get a good rooftop solution, I tried several of the USB-over-CAT5 cables, only to be disappointed with each one. I bought one of the 10M (32ft) BlueRigger cables a couple of years ago and had success between an Orange Pi PC and an FA ProStik. After buying a second cable, was able to string them together and still have success.
There is also a 20M (64ft) version that has the same appearance but without a brand name, that has two repeaters on it that also works, although combining a 20M and a 10M doesn’t work.
Eventually, settled on PoE for the long distances.

I use two USB2 extenders (one of them is from a Logitech keyboard receiver) on my receivers because… I cannot shove two receivers in one Pi, don’t have the physical space, they are too “fat”.
So, USB2 definitely not an issue.