Whither SDR?

05 Mar 2021

GNU Radio logo

As a long-time devotee of the concept of software defined radio (SDR), I remain somewhat discouraged at the current state-of-the-art with respect to its usage in the ham radio world.

I remember seeing a very nice talk at the SeaPac Convention some years ago, where a gentleman had eviscerated an old Heath SB-104 transceiver and installed some very up to date (for the time) SDR hardware inside it. His audience for the talk was a lot of older hams who had either never heard of SDR or did not know what it meant.

The meaningful part (at least to me) of his talk was where he explained that in the old days, if you wanted to change your radio, you had to change some hardware. You might change a tube, replace a coil, add a crystal in order to obtain the new functionality that was desired. The revolutionary part was that in the SDR world, you would make all of these changes in software, and the hardware portion of the system would remain unchanged.

I am disappointed that some 20 years after SDR first became practical in the ham radio domain, the vast majority of the implementations in use are ones where the end-user is simply unable to make any changes to the software (or even view the software), mostly due to a lack of open-source software licensing, thereby losing the major promise of SDR.

To be sure, a significant part of the reason for this is that the required knowledge; what SDR functions need to be implemented, how to encode these in software, and how to build and deploy this software on to the hardware are surely specialized domains of knowledge. However, many of the major SDR implementations in use are “black-box” and do not lend themselves to exploration or modification, either coincidentally or deliberately.

Having said all of that, let’s delve into what parts of an SDR implementation we might want to modify, and survey the market and see which general purpose SDRs allow modifications to which portions of the system.

Popularity1 Vendor SDR Software License Language
262000 HackRF HackRF One SDR# MS-RSL .Net
90100 KiwiSDR KiwiSDR KiwiSDR GPL C++
133000 NooElec NESDR CubicSDR GPL C++
398000 RTL-SDR RTL2832U SDR# MS-RSL .Net
29500 Red Pitaya Red Pitaya OpenHPSDR-PowerSDR GPL C#
9690 Ettus USRP Bus GNU Radio GPL C++
25000 Ettus USRP Network GNU Radio GPL C++
248000 Microtelcom Perseus Perseus Proprietary C++
4560 SRL QS1R SDRMAX V Proprietary C++
9220 OpenHPSDR Mercury PowerSDR GPL C#
5900 OpenHPSDR Hermes PowerSDR GPL C#
965000 Hermes-Lite Hermes-Lite Quisk GPL Python
18400 FlexRadio Flex-1500 PowerSDR LGPL C#
20900 FlexRadio Flex-3000 PowerSDR LGPL C#
19700 FlexRadio Flex-5000 PowerSDR LGPL C#
10900 FlexRadio Flex-6600 SmartSDR Proprietary  
773 Apache Labs Anan 7000DLE OpenHPSDR-Thetis GPL C#
1900 TAPR TangerineSDR GNU Radio GPL C++
616 AliExpress RaspberrySDR KiwiSDR GPL C++
708 AliExpress RX666 SDR Console Proprietary C++
39900 AliExpress RX888 SDR Console Proprietary C++
5740 Aferdi SDR-Net HDSDR Freeware C++
2190 WinRadio G33DDC G33DCC (Excalibur Pro) Proprietary  
10900 Elad FDM-S2 FDM-S2 Proprietary  
35500 RFSpace NetSDR SpectraVue Proprietary  
46900 RFSpace SDR-IQ SpectraVue Proprietary  
1170 SunSDR ColibriNANO ExpertSDR2 Proprietary  
44500 SDRPlay RSP1A SDRuno Proprietary  
116000 SDRPlay RSPdx SDRuno Proprietary  
20300 SDRPlay RSPduo SDRuno Proprietary  
23600 Airspy R2 SDR# MS-RSL .Net
9590 Airspy HF+ Discovery SDR# MS-RSL .Net
7970 Airspy HF+ Dual Port SDR# MS-RSL .Net
16300 Analog Devices PlutoSDR GNU Radio GPL C++
8930 Lime Microsystems LimeSDR SoapySDR Boost C++
10200 Nuand bladeRF SoapySDR Boost C++
16400 Ali Express New Horizons GNU Radio GPL C++
1430 AMSAT-UK Funcube Dongle Pro GNU Radio GPL C++
3520 Othernet KerberosSDR GNU Radio GPL C++
  1. Number of hits on a Google search of “SDR” “<SDR vendor>” “<SDR name>”

Looking at this data, there appear to be only three or four active open-source SDR software projects:

Project git Repo Started Contributors Commits Latest Release
GNU Radio https://github.com/gnuradio/gnuradio Jul 26, 2009 252 14444 Mar 22, 2021
SoapySDR https://github.com/pothosware/SoapySDR Sep 28, 2014 15 740 Apr 25, 2021
OpenHPSDR-Thetis https://github.com/TAPR/OpenHPSDR-Thetis Feb 26, 2017 2 64 Oct 20, 2020
OpenHPSDR-PowerSDR https://github.com/TAPR/OpenHPSDR-PowerSDR Feb 26, 2017 2 93 Mar 20, 2018
CubicSDR https://github.com/cjcliffe/CubicSDR Oct 26, 2014 18 1661 Aug 21, 2018
ghpsdr-alex https://github.com/alexlee188/ghpsdr3-alex Jun 19, 2011 16 1590 Jan 22, 2012
ghpsdr https://github.com/g0orx/ghpsdr Jan 29, 2017 1 1 n/a