-
Notifications
You must be signed in to change notification settings - Fork 3
Usage with rtl_fm
DJ edited this page May 31, 2020
·
6 revisions
While GQRX seems to give the best results in terms of audio quality (and runs well even on a Raspberry Pi 3B+), if you are using very low-spec hardware like a Raspberry Pi Zero, rtl_fm is much more forgiving and may be your only option. Additionally, rtl_fm has built-in frequency scanning functionality.
These instructions are written for Linux, but it is likely possible to set up on MacOS and Windows.
Note that the standard rtl_fm is not compatible, because it does not zero-pad the UDP output when squelch is enabled. You must install the keenerd fork which allows zero-padding.
- To install the keenerd rtl_fm fork, there are good instructions found here. Follow steps 3-5: "Install pre-reqs and update", "Install the latest rtl-sdr code", "Blacklist the kernel's bundled RTL drivers".
-
Optional but helpful: Run
rtl_test -p
, take the ppm error measurement it gives you and provide that to rtl_fm with the-p
option. - Test out the audio quality on a known frequency (Here's a NOAA weather frequency for example):
rtl_fm -E pad -f 162.55M -s 48k | aplay -r 48000 -f S16_LE
-
NOTE: rtl_fm settings have a lot of configuration options, and you can probably do a lot better than this - read the rtl_fm docs. Particularly important:
-
-E pad
is necessary for usage with timestampSDR - Sample rate provided to timestampSDR must be 48kHz (
-s 48k
, or-s <input sample rate> -r 48k
to resample) - You will generally need to set the
-l
squelch option.
-
-
NOTE: rtl_fm settings have a lot of configuration options, and you can probably do a lot better than this - read the rtl_fm docs. Particularly important:
- Once you have that working,
ctrl+c
that process and start it again, this time redirecting the output to the UDP port that timestampSDR will be using:rtl_fm -E pad -f 162.55M -s 48k > /dev/udp/127.0.0.1/7355
- Refer back to the main README to start up timestampSDR