rtl_fm
Receive FM radio with RTL-SDR USB dongle
TLDR
Listen to FM radio
$ rtl_fm -f [100.1M] -M wbfm -s 200000 -r 48000 | aplay -f S16_LE -r 48000
Narrow FM (ham radio)$ rtl_fm -f [145.5M] -M fm -s 12000 | aplay -f S16_LE -r 12000
AM mode$ rtl_fm -f [1000k] -M am -s 12000 | aplay -f S16_LE -r 12000
Save to file$ rtl_fm -f [100.1M] -M wbfm -s 200000 > [radio.raw]
SYNOPSIS
rtl_fm [options]
DESCRIPTION
rtl_fm is an FM demodulator for RTL-SDR dongles. It receives and demodulates radio signals using inexpensive DVB-T USB receivers (based on the RTL2832U chipset) as software-defined radios. Output is raw 16-bit signed PCM audio on stdout, typically piped to an audio player or file.
PARAMETERS
-f freq
Center frequency.-M mode
Demodulation (fm, wbfm, am, usb, lsb).-s rate
Sample rate.-r rate
Output sample rate.-g gain
Gain (0=auto).-d index
Device index.-p ppm
PPM frequency error correction for the dongle's crystal oscillator.-l level
Squelch level; mute output when signal strength is below this threshold.-A method
Output audio filtering: fast (default) or lut (lookup table, slower but slightly better quality).-E option
Enable extra features: edge (edge tuning), dc (DC blocking filter), deemp (FM de-emphasis filter), direct (direct sampling mode), offset (offset tuning mode).
EXAMPLES
$ # FM broadcast
rtl_fm -f 100.1M -M wbfm -s 200000 -r 48000 | aplay -r 48000 -f S16_LE
# With squelch
rtl_fm -f 145.5M -M fm -s 12000 -l 50 | aplay -r 12000 -f S16_LE
# Scan frequencies
rtl_fm -f 145.0M:148.0M:25k -M fm -s 12000 | aplay -r 12000 -f S16_LE
# Record to WAV
rtl_fm -f 100.1M -M wbfm -s 200000 | sox -r 200000 -e s -b 16 -c 1 -t raw - radio.wav rate 48000
rtl_fm -f 100.1M -M wbfm -s 200000 -r 48000 | aplay -r 48000 -f S16_LE
# With squelch
rtl_fm -f 145.5M -M fm -s 12000 -l 50 | aplay -r 12000 -f S16_LE
# Scan frequencies
rtl_fm -f 145.0M:148.0M:25k -M fm -s 12000 | aplay -r 12000 -f S16_LE
# Record to WAV
rtl_fm -f 100.1M -M wbfm -s 200000 | sox -r 200000 -e s -b 16 -c 1 -t raw - radio.wav rate 48000
MODES
$ wbfm - Wideband FM (broadcast)
fm - Narrow FM
am - Amplitude modulation
usb - Upper sideband
lsb - Lower sideband
fm - Narrow FM
am - Amplitude modulation
usb - Upper sideband
lsb - Lower sideband
CAVEATS
Requires RTL-SDR dongle. May need PPM correction. Audio player needed for output.
HISTORY
rtl_fm is part of rtl-sdr tools by osmocom, enabling software-defined radio with RTL2832U dongles.
