Software matrix
Sixteen SDR frameworks, RAN and core stacks, simulators, libraries and analysis tools on one page, with the version at the time of writing, licence, operating system support, bindings and strengths.
This page is for anyone choosing a radio software stack or checking that theirs is current. We read every version and date from the project’s own release list, tag list or download page on 15 November 2026. We read every open-source licence from the licence file in the repository. Operating system support is what the project’s own documentation or published binaries show. Where macOS or Windows support comes only from a community package, we say so. Versions move within weeks, so check the release page before you pin anything.
The matrix
| Project | Version at the time of writing | Licence (from the repository) | OS support | Bindings | Strengths |
|---|---|---|---|---|---|
| GNU Radio | 3.10.12.0 (20 February 2025) is the latest stable release. GNU Radio 4.0.0-RC3 is a release candidate, published on GitHub on 22 September 2026 and announced on gnuradio.org on 13 October 2026 | 3.10: GPL-3.0 (COPYING). GNU Radio 4 is a separate repository under MIT | Linux distribution packages and an Ubuntu PPA. conda-forge builds 3.10.12.0 for Linux, macOS (x86-64 and arm64) and Windows. GR4 has a macOS section in its build guide | C++ blocks, Python flowgraphs and blocks. GR4 is a C++23 block API | Open-source signal processing framework for SDR, with a large block library, the GNU Radio Companion graphical editor and out-of-tree modules |
| SoapySDR | 0.9.0 (10 October 2026) | BSL-1.0 | conda-forge builds for Linux, macOS and Windows. The 0.9.0 changelog includes macOS and MinGW build fixes | C, C++, Python and C# (SWIG), LuaJIT | One vendor-neutral device API with a driver module per radio, so the same code runs on different hardware |
| UHD | 4.11.0.0 (9 September 2026) | GPL-3.0 for UHD and MPM, per LICENSE.md. Other licences may be obtained from Ettus Research. FPGA code licensed separately | The README lists Linux (Fedora and Ubuntu), macOS and Windows 11 as tested and supported | C++, C API, Python | Driver for all USRP radios, including RFNoC FPGA processing. See NI and Ettus |
| libiio | 1.0.0 (22 September 2026), the first release after 0.26 (September 2024) | LGPL-2.1 (COPYING.txt) | Release packages for Windows, macOS 13 to 15 and Ubuntu, Debian and Fedora. Runs on the embedded Linux target too | C, C++, C#, Python | Access to Linux IIO devices, including RF transceivers, locally or remotely over USB, Ethernet or serial. See Analog Devices |
| OCUDU (formerly srsRAN Project) | OCUDU 26.10 (GitLab release dated 30 September 2026). The srsRAN Project repository was archived after release 25.10 (11 November 2025) | OCUDU: BSD-3-Clause Open MPI variant. srsRAN Project 25.10: AGPL-3.0 | Linux only, with real-time kernel support required by the install guide, which covers Ubuntu 22.04 or later, Fedora and Arch Linux. No macOS or Windows | C++17 | 5G CU and DU with the full L1 to L3 stack, split 7.2 fronthaul or split 8 through UHD and ZMQ. Governed under the Linux Foundation, according to its README. See srsRAN |
| OpenAirInterface | v3.0.0 (git tag, 9 October 2026), plus weekly integration tags (2026.w45 on 6 November 2026). The GitLab releases list still ends at v2.4.0 (4 December 2025) | From v3.0.0, the Collaborative Standards Software License v1.0 (CSSL). Royalty-free patent licence for study, testing and research. Other uses need patent licences from contributors on FRAND terms | Ubuntu 22, 24 and 26, RHEL 9, Fedora 44, Debian 11 and Rocky 9 (doc/system_requirements.md). x86_64 needs AVX2. No macOS or Windows | C | NR gNB (monolithic or CU, DU and RU splits), NR UE, LTE eNB and UE, RF simulator, O-RAN 7.2 fronthaul, GPU LDPC offload |
| Open5GS | 2.8.0 (20 June 2026), titled “Release-19” | AGPL-3.0 | Documentation for Debian and Ubuntu, CentOS, Fedora, macOS (Apple Silicon and Intel) and FreeBSD | C | 5G core and LTE EPC in one C project. Its documentation states Release 19 coverage |
| free5GC | 4.3.0 (30 September 2026) | Apache-2.0 | Linux. The UPF needs the gtp5g kernel module, and the install guide is written for Ubuntu. No macOS or Windows | Go | 5G core aimed at 3GPP Release 15 and beyond, a Linux Foundation project according to its README |
| MATLAB 5G, LTE and WLAN Toolbox (commercial) | R2026b (September 2026) | Proprietary, paid licence | Windows 10 and 11, Windows Server. macOS 15, 26 and 27 on Apple silicon only, as Intel Macs are no longer supported. Ubuntu 22.04 to 26.04, Debian 12 and 13, RHEL 8 to 10, SUSE 15 | MATLAB | Standards-based waveforms, link-level and system-level simulation and conformance testing for 5G NR (5G Toolbox), LTE with NB-IoT and sidelink (LTE Toolbox) and IEEE 802.11 up to 802.11be and 802.11bn (WLAN Toolbox), according to MathWorks |
| Sionna | 2.2.0 (29 September 2026) | Apache-2.0 | Python 3.11 or later. The README recommends Ubuntu 24.04 and names no other OS. Sionna RT needs Mitsuba 3 and Dr.Jit, with LLVM for CPU-only use | Python. Since 2.0, PHY and SYS run on PyTorch 2.9 or later, not TensorFlow | Differentiable link-level (PHY), system-level (SYS) and ray-tracing (RT) simulation. 2.2 adds integrated sensing and communication utilities |
| liquid-dsp | 1.8.3 (26 September 2026) | MIT | Builds on Linux and macOS (README). conda-forge has Linux, macOS and Windows builds, but of 1.6.0 at the time of writing | C, usable from C++. PlatformIO for embedded targets | Lightweight DSP library for SDR on embedded platforms, without external dependencies: filters and filter design, oscillators, modems, synchronisers |
| Wireshark (radio dissectors) | 4.6.9 (tagged 23 September 2026). 5.0.0rc2 tagged 11 November 2026 | GPL-2.0 (COPYING). Most parts are GPL-2.0-or-later, per the README | Windows x64 and Arm64 installers, macOS disk images, Linux distribution packages and source | C dissectors, Lua plug-ins | Decodes NR and LTE MAC, RLC, PDCP and RRC, NGAP, F1AP, XnAP, E2AP, O-RAN fronthaul and eCPRI, GSMTAP, Bluetooth LE and IEEE 802.11 radiotap. Essential for debugging RAN and core stacks |
| SigMF tools | Specification 1.2.6 (21 December 2025). sigmf-python 1.15.0 (19 October 2026) | Specification: CC-BY-SA-4.0. sigmf-python: LGPL-3.0 | sigmf-python supports Python 3.10 to 3.14 via pip or conda, on any OS Python runs on | Python | Standard metadata for recorded IQ. The Python library reads and writes recordings and archives and converts WAV, BLUE and Signal Hound Spike files. See SigMF |
| GQRX | 2.17.7 (27 May 2025) | GPL-3.0 | Binaries for Linux and macOS, plus MacPorts and Homebrew. Windows only through the community radioconda distribution | C++ with Qt, on GNU Radio | AM, FM and SSB receiver or FFT-only instrument, with network hooks for other programs, for any radio gr-osmosdr supports, including SoapySDR devices |
| SDR++ | No tagged release since 1.0.4 (17 October 2021). A rolling nightly release titled “currently 1.3.2” was rebuilt on 7 November 2026 | GPL-3.0 | The README names Windows, Linux, macOS and BSD. Nightly builds for Windows x64, Debian and Ubuntu (amd64 and aarch64), macOS (Apple silicon and Intel) and Android. BSD from source | C++ with module plug-ins | Lightweight receiver with several VFOs at once, with an Android build |
| Inspectrum | 0.4.0 (6 December 2025) | GPL-3.0 | Most Linux distributions. macOS through Homebrew or MacPorts. Windows through radioconda or conda-forge | C++ (Qt) | Offline analysis of recorded IQ: spectrogram, amplitude, frequency and phase plots, cursors to measure symbol rate, symbol extraction. Handles files over 100 GB |
How to choose
Learning and prototyping a receiver or transmitter: GNU Radio 3.10 with SoapySDR or the vendor driver underneath. Our first flowgraph lesson uses it headless. GNU Radio 4 is still a release candidate. Keep production work on 3.10 until 4.0.0 is final and the out-of-tree modules you need have moved.
Writing your own DSP in C for a small target: liquid-dsp. Its MIT licence suits closed products, and it has no dependencies.
Talking to a radio from code: use the vendor driver (UHD for USRPs, libiio for Analog Devices transceivers) when you need every feature. Use SoapySDR when the same program must run on several radios. See the hardware table for which driver each device uses.
A 5G lab network: a RAN stack plus a core. OpenAirInterface covers both gNB and UE, which helps when you have no commercial phone to test with. OCUDU (the former srsRAN Project) focuses on the CU and DU for O-RAN deployments. Pair either with Open5GS or free5GC. Check the licence before you build a product: AGPL-3.0 (Open5GS, the archived srsRAN Project) obliges you to offer your modified source to users who interact with it over a network, and the OAI CSSL restricts the free patent grant to study, testing and research.
Simulation and algorithm work: MATLAB toolboxes as the commercial reference with conformance test models. Sionna when you want differentiable, GPU-accelerated Python and ray tracing.
Recordings: record to SigMF so metadata travels with the samples. Look at captures in Inspectrum. Our recording and reading IQ lesson shows the format.
Debugging a protocol stack: Wireshark, on packet captures from the core network interfaces or on MAC and fronthaul traces from stacks that can write them.
Changes worth knowing about
- srsRAN Project is now OCUDU. According to the archived repository’s README, development moved to the OCUDU repository on GitLab in December 2025. The licence changed from AGPL-3.0 to a permissive BSD variant.
- OpenAirInterface v3.0.0 changed the licence to the CSSL v1.0, according to its tag message.
- Sionna 2.0 moved PHY and SYS from TensorFlow to PyTorch. Code that uses only Sionna components should run unchanged, according to the release notes. Saved TensorFlow weights must be retrained.
- libiio reached 1.0.0 after two years at 0.26.
macOS in one paragraph
A Mac covers most of the SDR desktop. GNU Radio, SoapySDR, UHD, libiio, liquid-dsp, GQRX and Inspectrum all have conda-forge builds for Apple silicon, and SDR++, Wireshark and MATLAB ship native macOS builds. Open5GS documents a macOS build. The RAN stacks do not: OCUDU and OpenAirInterface are Linux-only, and free5GC needs a Linux kernel module. Sionna names only Ubuntu. Run the RAN and core on a Linux machine. A Linux virtual machine or container is enough for simulation-only work, such as OAI’s RF simulator or OCUDU over ZMQ.
Sources
Each version, date and licence was read from these pages on 15 November 2026:
- SDR frameworks and drivers: GNU Radio releases, GNU Radio 4 releases, gnuradio.org, SoapySDR changelog, UHD releases, UHD LICENSE.md, libiio releases, conda-forge gnuradio
- RAN and core: srsRAN Project (archived), OCUDU repository, OCUDU installation guide, OpenAirInterface repository, Open5GS releases, Open5GS documentation, free5GC releases, free5GC installation
- Simulation and DSP: MATLAB system requirements, 5G Toolbox, LTE Toolbox, WLAN Toolbox, Sionna releases, liquid-dsp releases
- Analysis tools: Wireshark download, Wireshark source, SigMF specification, sigmf-python, GQRX releases, SDR++, Inspectrum
For how these pieces fit together, see the software-defined radio hub, the 5G NR hub and the open-source platform page.