rtl_adsb(1)

๐Ÿ’– NAME ๐Ÿ’–

okay so bestie, say hi to rtl_fm โ€” a simple FM demodulator for RTL2832 based DVB-T receivers โœจ

(fr fr the header on this page says rtl_adsb(1), which is its own little plot twist โ€” we're keeping it cute and moving on ๐Ÿ’…)


๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

So the whole vibe here is: you take a re-purposed DVB-T receiver, use it as a software defined radio, and it receives narrow band FM signals and demodulates them to audio. It was written for and incorporated in the osmocom rtl-sdr project ๐ŸŒˆ

Narrowband FM is commonly used by public service agencies and commercial dispatch operations in the VHF and UHF bands. It can also demodulate Wideband FM, as found in the 88-108 MHz FM broadcast band. And the experimental options include AM, LSB, USB and DSB demodulation ๐Ÿ‘‘

Much software is available for the RTL2832. Most of the user-level packages rely on the librtlsdr library which comes as part of the rtl-sdr codebase. This codebase contains both the library itself and also a number of command line tools such as rtl_test, rtl_sdr, rtl_tcp, and rtl_fm. These command line tools use the library to test for the existence of RTL2832 devices and to perform basic data transfer functions to and from the device ๐Ÿซถ

Because most of the RTL2832 devices are connected using USB, the librtlsdr library depends on the libusb library to communicate with the device. no cap ๐Ÿ”Œ


๐ŸŒธ USAGE ๐ŸŒธ

With a suitable antenna for receiving the signal attached to the rtl-sdr supported device, this program will output the digital audio data decoded from that signal. The data can be listened to by piping to Sox or aplay applications to play the stream on the computer sound card ๐ŸŽง


โœจ SYNOPSIS โœจ

rtl_fm [-f freq] [-options] [filename]

๐Ÿ’… OPTIONS ๐Ÿ’…

  • -f frequency_to_tune_to [Hz] โ€” use multiple -f for scanning, (requires squelch); ranges supported, -f 118M:137M:25k ๐Ÿ“ป
  • [-M modulation (default: fm)] โ€” fm, wbfm, raw, am, usb, lsb. And heads up: wbfm == -M fm -s 170k -o 4 -A fast -r 32k -l 0 -E deemp. Also raw mode outputs 2x16 bit IQ pairs ๐ŸŒˆ
  • -s sample_rate (default: 24k) โ€” the sample rate, defaulting to 24k ๐ŸŽ€
  • -d device_index (default: 0) โ€” which device you're grabbing, default 0 ๐Ÿฆ‹
  • -g tuner_gain (default: automatic) โ€” tuner gain, default is automatic โœจ
  • -l squelch_level (default: 0/off) โ€” squelch level, default 0/off ๐Ÿ’œ
  • -o oversampling (default: 1, 4 recommended) โ€” for fm squelch is inverted ๐Ÿ˜ญ
  • [-o oversampling (default: 1, 4 recommended)] โ€” yes bestie, it really does show up twice in the original, and we are not erasing her ๐Ÿ’€
  • -p ppm_error (default: 0) โ€” ppm error, default 0 โญ
  • [-E enable_option (default: none)] โ€” use multiple -E to enable multiple options:
    • edge: enable lower edge tuning
    • dc: enable dc blocking filter
    • deemp: enable de-emphasis filter
    • direct: enable direct sampling
    • offset: enable offset tuning
  • filename ('-' means stdout) โ€” omitting the filename also uses stdout ๐Ÿ‘‘

๐Ÿงš Experimental options ๐Ÿงš

  • [-r resample_rate (default: none / same as -s)] โ€” resample rate, defaults to none / same as -s ๐ŸŒธ
  • [-t squelch_delay (default: 10)] โ€” +values will mute/scan, -values will exit ๐Ÿšจ
  • [-F fir_size (default: off)] โ€” enables low-leakage downsample filter; size can be 0 or 9. And 0 has bad roll off, so, yk, noted ๐Ÿ’€
  • -A std/fast/lut โ€” choose atan math (default: std) ๐Ÿงฎ
  • filename โ€” (a '-' dumps samples to stdout), and (omitting the filename also uses stdout) ๐ŸŽ€

๐Ÿ”ฅ EXAMPLES ๐Ÿ”ฅ

Produces signed 16 bit ints, use Sox or aplay to hear them ๐ŸŽง

rtl_fm ... - | play -t raw -r 24k -es -b 16 -c 1 -V1 -
                         | aplay -r 24k -f S16_LE -t raw -c 1
                -M wbfm  | play -r 32k ...

rtl_fm ...  -s 22050 - | multimon -t raw /dev/stdin

๐ŸŒˆ SEE ALSO ๐ŸŒˆ


๐Ÿซถ AUTHOR ๐Ÿซถ

This manual page was written by Maitland Bottoms for the Debian project (but may be used by others) ๐Ÿ’–


Copyright (c) 2013 A. Maitland Bottoms <bottoms@debian.org> โญ

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version โœจ

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details ๐Ÿซก


okay that's the whole page bestie, and if you ever need to cite her: she's from the RTL-SDR source, version 0.5.0 ๐Ÿ’– slay, go tune something โœจ๐Ÿฆ‹๐ŸŽ€