Page 1 of 1

How to identify multiple RTL-SDR sticks in one computer?

Posted: Wed Jan 17, 2018 9:49 pm
by zeedoktor
Hi all,

I've been using multiple USRPs with one computer for many years - they're easy to differentiate as they each have a serial number that is specified when opening the device - so you always know which radio your software is talking to.

With the RTL-SDR sticks that's a different story unfortunately. They all appear to have the same serial number: <lots of zeroes followed by a single 1>. I need to make sure that my programs each know which stick they're talking to. This is because each stick has a slightly different frequency offset that needs to be compensated for. I also have different antenna inputs depending on what each stick does.

Imagine I run an AIS and an ADS-B decoder on the same machine at the same time. One stick has a VHF antenna for AIS, the other a stubby 1090 MHz stick. I need to make sure dump1090 is always talking to the stick with the ADS-B antenna, and ais_rx always to the VHF antenna equipped stick.

I can do this by passing rtl=0 or rtl=1 parameters, but this device enumeration appears random, I don't think I have any guarantee that the order won't change in the future or on next reboot.

I'm running on Linux, if it makes a difference.

Cheers

- Balthasar

Re: How to identify multiple RTL-SDR sticks in one computer?

Posted: Wed Jan 17, 2018 11:24 pm
by tim_rtd
I'm running Ubuntu with 5 dongles.
rtl_eeprom -s ............give each a new ser # .....number your case too so you can see it when plugged in.
The last inserted usb dongle always fills into -d 0 .......for me....
They seem to stay the same place until you add another unit.....then it takes -d 0 and everybody moves down.
I start them up in rc.local

Re: How to identify multiple RTL-SDR sticks in one computer?

Posted: Thu Jan 18, 2018 12:37 am
by zeedoktor
That was a quick fix - thanks!

Re: How to identify multiple RTL-SDR sticks in one computer?

Posted: Sun Mar 11, 2018 3:09 pm
by luma
I've encountered a similar problem and wrote up a solution that is working well for me. This approach allows me to run multiple dongles and assign a TCP port to each that "sticks" with the physical device, so if the devices are shuffled around or the system enumerates them in a different order for whatever reason, the assigned TCP port will stay the same. This way I can setup SDR Console/SDR#/etc to point at the correct device every time.