GRDAB(1)

πŸ“¦
version 0.5 Β· 3 versions
, in ubuntu resolute, ubuntu stonking

πŸ’– GRDAB β€” DAB / DAB+ receiver for software defined radio πŸ’–

okay bestie, gather round, because grdab (that's a section-1 manual page, so like, a command you run in a shell 🫢) is genuinely one of the cutest little radios you can drive from a terminal, and i'm about to explain the whole thing to you. no cap, every flag is staying, i'm just making it fun.


✨ NAME ✨

grdab β€” DAB / DAB+ receiver for software defined radio


🌈 SYNOPSIS 🌈

grdab [global_options] <command> [options]

πŸ¦‹ DESCRIPTION πŸ¦‹

so basically: every SDR that gr-osmosdr supports and that can tune to the DAB frequencies? yeah, it works with grdab. it has been verified to work with RTL-SDR, HackRF and USRP B200. and it can receive both DAB and DAB+ audio. iconic behavior honestly πŸ’…

πŸŽ€ Calibration:

when you connect a new radio, run:

grdab adjust

this will bring up a GUI where you will see the frequency spectrum and the constellation diagram. it's giving science lab but make it cute.

  1. Drag the channel selector to a valid DAB/DAB+ frequency in your area.
  2. Adjust the gain sliders such that frequency spectrum looks good. It should be an almost square looking wide signal.
  3. Adjust the ppm slider until the constellation diagram consists of 4 quite confined dots.
  4. Then click 'save configuration'
  5. Your SDR is now calibrated and can be used to receive DAB/DAB+ audio.

the calibration data is stored in the file ~/.grdab/adjustment.yaml. whenever you connect a new SDR, you will have to repeat the adjustment procedure above. yes, every new radio. it's a whole ritual, but it's our ritual. πŸ™ˆ

πŸ”₯ Check available channels:

to see what channels are available on a chosen frequency, run:

grdab info -f <frequency_in_mhz>

cute, fast, tells you what's out there. ⭐

πŸ“ Listen to DAB/DAB+:

when you find a channel, you can start receiving audio with:

grdab receive -f 227.360 --bit_rate 80 --address 204 --subch_size 60 --protect_level 2 --audiorate 48000

where you replace the different options with the output from grdab info for the desired channel. you might have to experiment with a few different values for --audiorate (such as 44100 or 48000). note that DAB+ is default. to receive classic DAB, add --classic as an argument. periodt. 🎧

🧚 Ncurses app:

if you create a file called ~/.grdab/channels.yaml, and list all the channels in your area, you can afterward use the grdab ncurses application:

grdab curses

it allows you to select a channel and listen to it. see /usr/share/doc/gr-dab/examples/channels.yaml for an example of a channels.yaml file. main character terminal energy, lowkey obsessed. πŸ‘‘

πŸ’œ ZMQ source:

to allow starting and stopping grdab without having to reinitialize the Software Defined Radio, you can start apps/sdr-zmq-daemon in the background. if you then start grdab with grdab -z, it will start much faster. no more waiting around, it's giving instant gratification. ✨


πŸ’… OPTIONS πŸ’…

Commands:

  • grdab [global_options] adjust [options] β€” Adjustment GUI for gain, timing error etc.
  • grdab [global_options] info [options] β€” List DAB/DAB+ channels on a specific frequency
  • grdab [global_options] receive [options] β€” Receive audio from a DAB/DAB+ channel
  • grdab [global_options] curses [options] β€” Ncurses GUI for selecting between multiple channels

Global options:

  • -z β€” ZeroMQ mode. Expects zmq-sdr-daemon to be running
  • --server <address> β€” Address to ZeroMQ (Default is: tcp://127.0.0.1:10444)
  • --server_control <address> β€” Address to ZeroMQ for configuration (Default is: tcp://127.0.0.1:10445)

Other options (common for all):

  • -f/--freq <freq> β€” Receive frequency in MHz

Other options (for 'grdab receive' only):

  • -a/--audiorate <rate> β€” Audio rate in Hz (default: 48000)
  • --bit_rate <val> β€” Bit rate of the DAB/DAB+ channel.
  • --address <val> β€” Address of the DAB/DAB+ channel.
  • --subch_size <val> β€” Subchannel size of the DAB/DAB+ channel.
  • --protect_level <val> β€” Protection level of the DAB/DAB+ channel.
  • --classic β€” Use DAB instead of DAB+

🌸 SEE ALSO 🌸

sdr-zmq-daemon(1)


🫢 AUTHOR 🫢

This manual page was written by Ruben Undheim <rubund@debian.org> for the Debian project (and may be used by others).


and that's the whole lore, bestie πŸ’– this page was living under the GRDAB(1) header and signed off down at the bottom with 14 February 2026 β€” so yeah, dated, versioned, and fully slaying. go tune something cute. πŸ“»βœ¨

πŸ“¦ where this page comes from