LinuxCommandLibrary

rtl_fm

TLDR

Listen to FM radio

$ rtl_fm -f [100.1M] -M wbfm -s 200000 -r 48000 | aplay -f S16_LE -r 48000
copy
Narrow FM (ham radio)
$ rtl_fm -f [145.5M] -M fm -s 12000 | aplay -f S16_LE -r 12000
copy
AM mode
$ rtl_fm -f [1000k] -M am -s 12000 | aplay -f S16_LE -r 12000
copy
Save to file
$ rtl_fm -f [100.1M] -M wbfm -s 200000 > [radio.raw]
copy

SYNOPSIS

rtl_fm [options]

DESCRIPTION

rtl_fm is an FM demodulator for RTL-SDR dongles. It receives and demodulates radio signals using cheap DVB-T USB receivers as software-defined radios.

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 error correction.

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
copy

MODES

$ wbfm - Wideband FM (broadcast)
fm   - Narrow FM
am   - Amplitude modulation
usb  - Upper sideband
lsb  - Lower sideband
copy

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.

SEE ALSO

rtl_sdr(1), rtl_power(1), gqrx(1)

Copied to clipboard