Build an FM Radio Receiver with GNU Radio
~90 minBeginnerBuild a complete FM broadcast receiver in GNU Radio Companion, from RTL-SDR source through stereo audio output and RDS text decoding.
Hardware
- •RTL-SDR dongle (Blog V4 recommended)
- •Antenna for 88–108 MHz (dipole or discone)
- •Computer with USB port
- •Speakers or headphones
Software / Knowledge
- •GNU Radio 3.10+ (installed in Step 1)
- •gr-osmosdr package
- •Basic comfort with block diagrams
- •Local FM station frequency (check radio.garden)
GNU Radio is the foundational signal-processing framework that will power your FM receiver. It provides a visual flowgraph editor (GNU Radio Companion) and a rich library of signal-processing blocks written in Python and C++.
Ubuntu / Debian
sudo apt install gnuradio
For a newer version: sudo add-apt-repository ppa:gnuradio/gnuradio-releases && sudo apt update && sudo apt install gnuradio
Fedora / RHEL
sudo dnf install gnuradio
The Fedora package is usually recent. Also install gr-osmosdr for RTL-SDR support.
macOS
brew install gnuradio
Homebrew installs take 20–40 min. Also run: brew install rtl-sdr for the RTL-SDR driver.
Windows
Use the official installer at gnuradio.org/releases
The Windows installer bundles most dependencies. Install Zadig for RTL-SDR USB drivers afterward.
Verify the installation
gnuradio-companion --version # Should print: GNU Radio 3.10.x or higher gnuradio-config-info --prefix # Shows install prefix
On Ubuntu/Debian, always prefer the PPA over the default apt package — it stays several versions closer to the current release.