-
Notifications
You must be signed in to change notification settings - Fork 882
Supported devices
Device | Capabilities | Native support | External backend support |
---|---|---|---|
AirSpy Mini | RX | ✔️ | ✔️ (Gnuradio) |
AirSpy R2 | RX | ✔️ | ✔️ (Gnuradio) |
BladeRF | RX/TX | ✔️ | ✔️ (Gnuradio) |
DX Patrol (RTLSDR) | RX | ✔️ | ✔️ (Gnuradio) |
FUNcube | RX | ❌ | ✔️ (Gnuradio) |
HackRF | RX/TX | ✔️ | ✔️ (Gnuradio) |
rad1o | RX/TX | ✔️ | ✔️ (Gnuradio) |
LimeSDR | RX/TX | ✔️ | ❌ |
PlutoSDR | RX/TX | ✔️ | ❌ |
RTLSDR | RX | ✔️ | ✔️ (Gnuradio) |
RTLSDR (TCP) | RX | ✔️ | ❌ |
SDRPlay | RX | ✔️ (only v2.13 API) | ✔️ (Gnuradio) |
USRP N-series | RX/TX | ✔️ | ✔️ (Gnuradio) |
USRP B/X-series | RX/TX | ✔️ | ✔️ (Gnuradio) |
YARD Stick One | RX/TX | ❌ | ✔️ (RfCat, only TX) |
Flipper Zero | RX/TX | ❌ | ✔️ (.sub files, TX limited (Generator)) |
RX = SDR is able to receive, TX = SDR is able to transmit
Native device support is provided by C extensions and normally URH finds automatically all your installed SDR libraries and creates the corresponding native device extension. You can, however, enforce enabling or disabling native extensions with the following flags:
Device Extension | Force enable | Force disable |
---|---|---|
AirSpy | --with-airspy |
--without-airspy |
BladeRF | --with-bladerf |
--without-bladerf |
HackRF | --with-hackrf |
--without-hackrf |
LimeSDR | --with-limesdr |
--without-limesdr |
PlutoSDR | --with-plutosdr |
--without-plutosdr |
RTL-SDR | --with-rtlsdr |
--without-rtlsdr |
SDRplay | --with-sdrplay |
--without-sdrplay |
USRP | --with-usrp |
--without-usrp |
For example, python setup.py --with-hackrf --without-limesdr install
, will enforce installation with HackRF extension, but disable LimeSDR extension in any case. Other device extensions will be enabled if the corresponding library is found, as is the default for a device, when no flag is given.
Note, you do not have to reinstall URH if you installed a new device library afterwards. You can rebuild native device extensions in GUI via Options -> Device.