GNU Radio is a software toolkit that turns an ordinary computer into a radio signal processing lab. Filtering and demodulation, normally handled by electronic circuits, are done in software from the samples streamed by a software-defined radio (SDR). The project was registered on Savannah, the GNU project’s hosting platform, in March 2001. According to the history the team presented at the Australian GNU Radio Days 2025, its early development was funded by John Gilmore and carried out by Eric Blossom.
The code is released under the GPL v3 free software license. Today the project is run by a group of project leads chaired by Derek Kozel, and it joined the SETI Institute in 2020. The stable branch is 3.10, with version 3.10.12.0 released in February 2025. A new generation, GNU Radio 4, is in preparation.
What GNU Radio is for
Everything is built from blocks. Each block does one job: read samples from an RTL-SDR dongle, select a slice of spectrum, demodulate an FM signal, compute a Fourier transform or play audio through the sound card. You wire blocks together into a flowgraph, and GNU Radio runs it by streaming data from one block to the next. Compute-heavy blocks are written in C++, while Python is the usual glue.
Most people start with GNU Radio Companion, the graphical editor that ships with the project. You drop blocks onto a canvas, fill in their parameters, and the tool generates a Python script ready to run. Sliders, virtual oscilloscopes and waterfall displays let you tweak settings while the signal is flowing.
It helps to compare it with a receiver such as Gqrx or SDR#, which we also cover. Those are finished applications: pick a frequency and a mode, and listen. GNU Radio offers nothing of the sort out of the box. It is a workshop where you build your own receiver, modem or measurement tool. Gqrx itself is built on GNU Radio, which says a lot about the toolkit’s role as a foundation for other software.
Uses go far beyond amateur radio. The official repository lists digital communications, radio astronomy, astrophysics and particle physics among them. Universities teach modulation and channel coding with it, labs prototype new wireless protocols, and radio amateurs use it to receive satellites or try digital modes. It drives the most common hardware, from RTL-SDR dongles to Ettus Research USRPs, and it can also run with no hardware at all to simulate a full transmission chain, noise included.
Who is it for?
GNU Radio is aimed at telecom students, teachers, engineers designing radio systems and radio amateurs who want to understand what happens between the antenna and the speaker. The official tutorials at tutorials.gnuradio.org cover the first steps, and the graphical editor lets you put together an FM receiver without writing any code.
The limits are real. Once you move past the examples, you need some signal processing background: sample rate, decimation, filters and gain are all set by hand. If you simply want to listen or scan a band, a receiver like Gqrx on Linux and macOS, or SDR# on Windows, will get you there much faster. Transmitting with compatible hardware also requires an amateur radio license or another authorization, and in many countries even receiving certain communications is regulated by law.
Download GNU Radio safely
The official starting point is the InstallingGR page on the project wiki, linked from gnuradio.org. On Linux, the recommended route is your distribution’s package manager: Debian, Ubuntu, Fedora and Raspberry Pi OS all ship a gnuradio package, sometimes a few versions behind. Ubuntu users can also add the PPA maintained by the team on Launchpad. For Windows and macOS, the wiki points to radioconda, a conda-based installer that bundles GNU Radio, drivers for the main SDR devices and a set of companion tools, with builds for both Intel and Apple Silicon Macs. The source code is on the gnuradio/gnuradio GitHub repository.
Everything is free, with no commercial edition and no locked features. The project does not publish a standalone Windows installer under its own name and sends Windows users to radioconda instead. A file labeled as a GNU Radio setup on a generic download portal is therefore best avoided: stick to the official wiki and your distribution’s repositories.
Frequently asked questions
Is GNU Radio free?
Yes. It is distributed under the GPL v3 and has no paid version. The project is supported by donations and by the work of its contributors. Only the radio hardware costs money, and a basic RTL-SDR dongle is enough to start receiving.
Do I need to know how to code?
Not to get started. GNU Radio Companion lets you build and run a flowgraph entirely with the mouse. Writing your own blocks, however, means coding in Python or C++, with help from the gr_modtool utility provided by the project.
Should I wait for GNU Radio 4?
No. GNU Radio 4 is built on a new runtime and developed in a separate repository. Its first release candidate came out in March 2026, but no final release had been published when this page was written. The 3.10 branch is still what the wiki and Linux distributions provide.