Skip to content
foonerd edited this page Oct 5, 2026 · 6 revisions

FM/DAB Radio for Volumio

FM/DAB Radio (rtlsdr_radio) is a plugin for Volumio 4 that turns an inexpensive RTL-SDR USB dongle into an FM and DAB/DAB+ radio. Stations appear in Volumio's music library and play through Volumio's own audio output, so volume, DSP and multiroom apply to the radio as they do to everything else.

What it does

  • FM and DAB/DAB+ reception with one USB dongle and an antenna.
  • Scans that find the stations by measuring them: the FM band is surveyed channel by channel and stereo stations are told apart from noise and from signals an overloaded tuner invents; a DAB scan lists every service of every ensemble it can decode.
  • No tuning by hand: the receiver gain is measured for each station, and the frequency error of the dongle's crystal is found and followed automatically, so cheap dongles need no correction value.
  • What is on air: station name, programme text (RDS on FM, DLS on DAB), the pictures a DAB station sends, station logos published by the broadcasters, and album artwork looked up from the song the station names.
  • A Station Manager in the browser: rename, mark as favourite, hide and delete stations, choose logos, import and export CSV, make and restore backups, position the antenna, and update the plugin.
  • Eleven languages, following Volumio's language setting.

How it fits together

flowchart TB
    antenna(["Antenna"]) --> dongle["RTL-SDR dongle (USB)"]

    subgraph player["Volumio player"]
        subgraph receivers["Receiver programs"]
            fm["fn-rtl_fm<br/>FM receiver"]
            rds["fn-redsea<br/>RDS decoder"]
            dab["fn-dab<br/>DAB/DAB+ decoder"]
            tools["fn-rtl-gain, fn-dab-scanner<br/>gain and scans"]
        end
        output["Volumio audio output<br/>volume, DSP, multiroom"]
        plugin["FM/DAB Radio plugin<br/>stations, playback, metadata"]
        volumio["Volumio<br/>library, queue, player screen"]
        manager["Station Manager<br/>web page, port 3456"]
        data[("Station list, logos,<br/>backups, settings")]
    end

    dongle --> fm
    dongle --> dab
    dongle --> tools
    fm --> rds
    fm -- "sound" --> output
    dab -- "sound" --> output
    rds -- "name, text" --> plugin
    dab -- "text, pictures" --> plugin
    tools -- "stations, gain" --> plugin
    plugin <--> volumio
    plugin <--> manager
    plugin <--> data
    manager <--> browser(["Browser on your network"])
    plugin <--> internet(["Internet: station logos,<br/>album artwork, updates"])
Loading

The dongle feeds the plugin's receiver programs. Sound goes to Volumio's audio output; names, text and pictures go to the plugin, which hands them to Volumio's library and player screen and keeps the station list. The Station Manager is the plugin's own web page.

Where to start

If you want to Read
Know what to buy Dongles and Antennas
Install the plugin and hear the first station Installation, then Getting Started
Understand what a scan does and why a station is or is not found Scanning
Organise stations, logos and backups Station Manager
Fix something that does not work Troubleshooting
Look up a setting Settings Reference
Drive the plugin from a script Station Manager API

All pages

Using the radio

Managing it

Hardware

Help

Reference

Requirements at a glance

  • Volumio 4 (Bookworm) on a Raspberry Pi (any model the Volumio Pi image runs on) or an x86-64 computer.
  • An RTL-SDR USB dongle with an RTL2832U chip. Dongles with R820T, R820T2 and R828D tuners are measured and known to work, and dongles with an E4000 tuner play FM and DAB; see Dongles.
  • An antenna for the FM band (76 to 108 MHz depending on the region) and/or DAB Band III (174 to 240 MHz).

Licence and credits

The plugin is licensed under GPL-3.0. It builds on rtl-sdr, dab-cmdline and redsea. The gain measurement owes its starting point to an SNR measurement script by Wheaten of the Volumio community.

Questions and reports are welcome in the community thread.

Clone this wiki locally