SDR++ Version 1.0.0 Released

SDR++ is an open source, cross platform, C++ based GUI general receiver program for various SDRs including the RTL-SDR. Since it's alpha release in mid 2020, it has undergone huge amount of development, and is quickly becoming the main program of choice for many users due to it's efficiency, cross platform and multi-SDR hardware support and increasing feature set. And with an easy GUI very similar to that of SDR#, it's easy for most users to learn.

Recently version 1.0.0 of the SDR++ software has recently been released. This is the first non-beta stable version, so represents a major milestone in development. Over on Reddit programmer u/xX_WhatsTheGeek_Xx summarizes the latest developments.

After over a year of work, I'm proud to released version 1.0.0 of SDR++!

For those who don't know, SDR++ is a crossplatform (Windows, Linux, MacOS, BSD) and open-source (https://github.com/AlexandreRouma/SDRPlusPlus/releases) general purpose receiver software meant to be simple and easy to use. It has advances features like multi-vfo and uses a fully custom DSP making it very efficient.

Here are the following additions compared to the last version:

  • Support for the SpyServer protocol
  • Support for all SDRplay devices
  • Support for all BladeRF devices
  • Support for all LimeSDR devices
  • Optional IQ correction
  • Optional Decimation
  • Broadcast FM Stereo
  • Frequency manager to create lists of frequency and optionally display them directly on the FFT/Waterfall
  • Network sink to stream the audio output via TCP or UDP
  • Options to set the FFT framerate, FFT size and FFT window.
  • Theming with Dark and Light themes supplied by default
  • RigCTL server module to control SDR++ from, for example, gpredict.
  • A bunch of keyboard shortcuts (see wiki on the github page)
  • SNR meter
  • More info when hovering a VFO
  • Colored VFOs to easily identify which is which at a glance
  • Meteor M2 demodulator compatible with LRPTOfflineDecoder and Satdump
  • Ability to resize VFOs by directly dragging the sides on the FFT and waterfall
  • Module manager to easily add or remove any module on the fly without having to restart or edit the config manually
  • File dialogs to select directories in the recorder or files in the file source (instead of having to type in the path)
  • Ability to disable modules that support it (Radio and Meteor M2 demodulator) with one click (to save CPU power or just if they're not needed)
  • Lots of performance improvements
  • Ludicrous amounts of bugfix :)

I'd like to thank the many contributors, patrons and companies (SDRplay, Airspy, Nuand, LimeMicro) who helped make this project possible!

If you have any issue with the software, please open a github issue or contact me directly on the SDR++ discord (see readme on github)

I hope this software comes in useful to at least some of you ;)

We also wanted to highlight the fact that SDR++ runs smoothly with about 50% CPU usage on a Raspberry Pi 4 with an RTL-SDR.

Also according to @cemaxecuter who created DragonOS, if rtaudio is installed on Linux , then an easy to use virtual audio sink becomes usable from SDR++, allowing audio to be easily passed to other programs such as WSJT-X just like on Windows.

A ready to use zip file for Windows is available on the GitHub Releases page, as well as amd64 .deb and .pkg install files for Ubuntu, Debian and MacOS systems. For other systems the compilation instructions are available on the readme or Git main page.

SDR++ V1.0.0 Screenshot

31 comments

  1. Brian Vind Borgstrom

    Hi and thanks for a nice program. I have encountered a problem on Ubuntu, please read on:
    I have 2 SDR receivers, a HachRF one and a simple DVB-TV (Bases on RTL).
    In Windows 11, both receivers are working fine, but on Ubuntu 20.04LTS (fresh installed) the HackRF one does not work.
    It terminates with the message (seen in terminal when starting sdrpp from there):
    28553 segmentation fault (core dumped) sdrpp

    I have also Gqrx installed and it works fine with HackRF one.

    Best regards, Brian

  2. eyilmaz

    Hello,
    Have problems on Windows systems while starting the SDR++ on some machines. A short splash screen and nothing.It looks like the software is missing something, libraries maybe, which is not installed on some PC’s.

    On other PC’s I use it regularly without any problem.

    Just extract in any directory and start, is not working on all Windows systems. What could be the missing dependencies?

  3. SQ3DHO

    Great Work!!!
    I am using Your APP to satellite monitoring I am having some problems with decoding signals.
    The problem is that the bandwith is too narrow for USB modulation, the old sdr# versions had 16kHz, the newer ones don’t have any limitations in FM and SSB. I would like to ask is it possible to increase this width for FM and SSB in SDR ++?
    Regards!

  4. Stormin' Norvin

    The new SDR++ v1.0.3 runs great on Kubuntu 21.04 GNU/Linux. My move to Linux is now fully complete. I am not using Windows at all anymore.

    I did have to do a few minor things after installing SDR++ to get it going:

    1) Open Kate text editor.

    2) Copy/Paste the following 3 blacklist lines below into it:

    blacklist dvb_usb_rtl28xxu
    blacklist rtl2830
    blacklist rtl2832

    3) Click SAVE AS, browse to the /etc/modprobe.d folder, and save the file as no-rtl.conf within that folder.

    4) Uninstall soapy in Terminal with sudo apt remove soapy* as SDR++ keep stalling on it when opening.

    5) Reboot computer.

    A Frequency Manager scanner is in the works 🙂

    https://github.com/AlexandreRouma/SDRPlusPlus/issues/299

  5. Kevin Loughin

    Installed from the .deb files, then tried building from source. Still had one annoying problem.
    I’m running POP! OS on a system76 laptop. Based on Ubuntu 20.04.
    The program runs and talks to my Airspy HF+ Discovery just fine. However, only in about 1 out of 7 tries, the audio is fine. The rest of the time it stutters and fills the terminal with ‘audio write error: buffer underrun’.
    Also, It lists 15 versions of my audio device, but reports the device is in use. I have to select ‘default’ at the bottom of the list to get audio.
    Even when the audio is clean, if I change the frequency by more than a few KHz, it will start stuttering and giving the buffer underrun errors again.

    • Ian Brooks

      I had audio stuttering problems with Lubuntu 20.04LTS and applied the solution mentioned under this discussion in GitHub:

      “Linux Mint Audio Fix when self building #112”
      Konradrundfunk’s solution fixed my problem.
      I enjoy your YouTube videos.
      Regards, Ian, Dorset, UK.

  6. Mark

    Go to Discussion #39 “Debian 10.7 (buster 2020-12-05) works, but hit a few issues along the way #39”
    in the SDRPlusPlus Github by Alexandre.
    I got a replay from him today.
    May be it helps because I saw exactly that error message you get.

    • David Mitchell

      I just want to say that, you have got me back into radio as a kid in the 80’s i was into CB and in the 90’s i was into scanners, then the internet was born and the scanner was put to bed, 40 years on i have started with the SDR and got a Hackrf

  7. G1RNB

    As a user of the BladeRF 2.0 – amongst others SDR’s – I am pleased to see a new interface that supports the device out of the box.

    I Installed it and it ran without a hitch and within a few minutes I was using the Blade in all it’s glory.

    On first inpressions this appears to be an excellent piece of software both in terms of performance and a clear representation of visual information.

    What a fascinating tier of Radio SDR has turned out to be, with all this fantastic hardware and now software.

    Congratulations to all involved on this project, we in the community live for this type of acheivement.

    G1RNB

  8. Lusa

    If you need to run SDR# on MacOS, before downloading .pkg file from github, you need to install following packages: glfw, volk, portaudio (I used Homebrew). Under BigSur it works perfectly 🙂

  9. Tim

    In core/src/core.cpp at line 276, change to

    const char* glsl_version = “#version 300 es”;
    glfwWindowHint(GLFW_CLIENT_API, GLFW_OPENGL_ES_API)
    glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
    glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 1);

    Then recompile.

    • Peter

      Thanks a lot , Tim. SDR++ works now on my Raspberry 4.

      Here is a short summary of what I did to get SDR++ running on a raspi: I took a fresh Raspberry Pi OS (to avoid the hash collision problem, see Alexandre’s readme, https://github.com/AlexandreRouma/SDRPlusPlus). First, I added cmake via apt install and then downloaded the programm code from the github mentioned. Then I did the changes Tim suggested and installed all the programs/drivers according to the first (!) line “sudo apt install libfftw3-dev …” under “Installing”, “Linux” and “Debian based ..”. Do not try to install the deb package (see second line) as it won’t work with a raspberry. From here on I followed Alexandre’s guide under “Building on Linux” , “Building” in the readme. cmake complained about two missing programs – librtlsdr-dev and libairspy-dev – which have to be installed manually via apt install before making the software. That’s it. I did just a short test with my AirspyHF+ discovery. Everything seems to work.

  10. Peter

    I could compile SDR++ on my Raspberry 4. Just had to add two dependencies. I can’t run the program, however. The error message is “Glfw Error 65543: GLX: Failed to create context: GLXBadFBConfig”. What did you do to get it working?

  11. Jos Zandstra

    Trying to figure out where to find help. When starting the program it crashes and the event log says it is a problem with ucrtbase.dll

    Tried to find a solution, a brother of mine has no issues but his ucrtbase version has a newer time/date but same version (and don’t know how to replace the dll)

  12. Martin

    At first I was sceptical, if it was worth all of this effort, just to produce a much less featured version of SDR#.

    However on loading it up, I quickly changed my opinion.

    What a joy, a nice clean simple interface, like SDR# used to be, before all the bells and whistles were added.

    The application opens almost immediately, and when you just want a quick simple SDR receiver that works, everything there where you need it.

    What’s even better is that it’s cross platform, so can run on Linux boxes too.

    Well done, but please don’t ever be tempted let it turn into over-featured bloatware.

Leave a Reply to Brian Vind Borgstrom Cancel reply

You may use the following HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>