Note
Welcome to the SunFounder Raspberry Pi, Arduino & ESP32 Community on Facebook!
Get technical support and troubleshooting help.
Learn and share projects, tips, and tutorials.
Access early product previews and updates.
Enjoy exclusive discounts and giveaways.
π Join us here: [here]
RTL-SDR Blog V4ο
Note
The Pironman 5 series products do not include the following modules. You need to prepare one yourself or purchase it from our official website:
This guide covers a reliable installation procedure for the RTL-SDR Blog V4, a popular and affordable USB software-defined radio (SDR) receiver. The V4 version features an improved R828D tuner, direct sampling mode, better sensitivity, and integrated bias-tee for powering active antennas. It works well for receiving broadcast FM, airband, amateur radio, ADS-B, and many other signals on Linux and Raspberry Pi systems.
For the original manufacturerβs documentation, see the official RTL-SDR Blog V4 guide: https://www.rtl-sdr.com/V4/
Install Driver for RTL-SDR Blog V4ο
0. Preparation
sudo apt update
sudo apt install -y git cmake build-essential pkg-config libusb-1.0-0-dev sox
- Note:
sox(provides theplaycommand) is included for direct audio testing.
1. Full Cleanup of Old Libraries and Binaries (Critical)
sudo apt purge -y 'librtlsdr*'
sudo rm -rf /usr/lib/librtlsdr* /usr/include/rtl-sdr* \
/usr/local/lib/librtlsdr* /usr/local/include/rtl-sdr* \
/usr/local/include/rtl_* /usr/local/bin/rtl_*
sudo ldconfig
Verification A:
ldconfig -p | grep rtlsdr || echo "OK: No librtlsdr found in system cache."
2. Build and Install RTL-SDR Blog V4 Driver
cd ~
git clone https://github.com/rtlsdrblog/rtl-sdr-blog.git
cd rtl-sdr-blog
mkdir build && cd build
cmake .. -DINSTALL_UDEV_RULES=ON
make
sudo make install
sudo cp ../rtl-sdr.rules /etc/udev/rules.d/
sudo ldconfig
Verification B:
which rtl_test
ldd "$(which rtl_test)" | grep rtlsdr # Should point to /usr/local/lib/librtlsdr.so
3. Disable DVB Kernel Module and Reboot
echo 'blacklist dvb_usb_rtl28xxu' | sudo tee /etc/modprobe.d/blacklist-dvb_usb_rtl28xxu.conf
sudo reboot
- Note:
Immediate reload commands (
udevadm control --reload-rulesandudevadm trigger) are optional if you plan to reboot immediately.
4. Verify Driver After Reboot
rtl_test -t
- Expected:
Output should include
RTL-SDR Blog V4 Detectedwith no[R82XX] PLL not locked!messages. The lineUsing device 0: Generic RTL2832U OEMis normal β it is just the USB name.
6. Test FM Reception from Command Line
rtl_fm -f 97.1M -M wbfm -s 180000 -r 48000 -g 28 | play -t raw -r 48k -e s -b 16 -c 1 -
Tips:
-g: Try between 25β35 dB; higher is not always better.Reduce
-sto ~170kβ180k to lower noise.Adjust frequency slightly (e.g.
97.1005M) for fine tuning.Close any other SDR software that might hold the device.
Installing Common Radio Softwareο
This section introduces four widely used SDR applications, with short descriptions, installation instructions, and basic setup tips for Debian-based systems.
GQRXο
GQRX is a simple, user-friendly SDR receiver application with a graphical interface. It supports a wide range of SDR devices and is ideal for listening to FM, AM, SSB, and other signals with real-time spectrum and waterfall displays.
You can also refer to the official Raspberry Pi installation guide here: https://www.gqrx.dk/download/gqrx-sdr-for-the-raspberry-pi
Option 1 β Quick Installation (Recommended for most users)
Fast, simple, and integrates with system updates β but may not be the latest version.
sudo apt update
sudo apt install -y --no-install-recommends gqrx-sdr
Option 2 β Build from Source (Optional, Latest Features)
Ensures the latest version and full customization, but takes longer to compile and requires more dependencies.
sudo apt update
sudo apt-get install -y --no-install-recommends \
cmake gnuradio-dev gr-osmosdr qt6-base-dev qt6-svg-dev \
libasound2-dev libjack-jackd2-dev portaudio19-dev libpulse-dev
git clone https://github.com/gqrx-sdr/gqrx.git
cd gqrx
mkdir build && cd build
cmake ..
make
sudo make install
Preventing Driver Overwrite
When installing GQRX, SDR++, gnuradio-dev, or gr-osmosdr, the system may reinstall outdated librtlsdr.
After each installation, check:
ldd "$(which rtl_test)" | grep rtlsdr
If it no longer points to /usr/local/lib/librtlsdr.so, run:
sudo apt purge -y 'librtlsdr*'
sudo ldconfig
cd ~/rtl-sdr-blog/build && sudo make install && sudo ldconfig
You can test immediately (or after a reboot for a clean environment):
rtl_test -t
Expected output:
Contains RTL-SDR Blog V4 Detected.
No [R82XX] PLL not locked! messages.
First Run Setup
I/O Devices:
Device:
RTL-SDR (V4).Input Rate:
1.8 MSPS(1800000).
Input Controls:
LNA Gain: Start around 25β35 dB, adjust as needed
Receiver Options:
Set Frequency Correction (PPM) from your calibration.
Mode:
WFM (mono or stereo)for broadcast FM.
SDR++ (SDRpp)ο
SDR++ is a modern, fast, cross-platform software-defined radio (SDR) receiver that supports a variety of devices, including the RTL-SDR Blog V4. It offers a clean, user-friendly interface, wide modulation support, advanced DSP filtering, and recording capabilities.
You can refer to the official user manual here: https://www.sdrpp.org/manual.pdf
Install from Source
sudo apt update
sudo apt install -y --no-install-recommends build-essential cmake git pkg-config \
libfftw3-dev libvolk2-dev libglfw3-dev libglew-dev \
libzstd-dev librtaudio-dev
git clone https://github.com/AlexandreRouma/SDRPlusPlus
cd SDRPlusPlus
mkdir build && cd build
cmake .. -DOPT_BUILD_RTL_SDR_SOURCE=ON
make
sudo make install
Preventing Driver Overwrite
When installing GQRX, SDR++, gnuradio-dev, or gr-osmosdr, the system may reinstall outdated librtlsdr.
After each installation, check:
ldd "$(which rtl_test)" | grep rtlsdr
If it no longer points to /usr/local/lib/librtlsdr.so, run:
sudo apt purge -y 'librtlsdr*'
sudo ldconfig
cd ~/rtl-sdr-blog/build && sudo make install && sudo ldconfig
You can test immediately (or after a reboot for a clean environment):
rtl_test -t
Expected output:
Contains RTL-SDR Blog V4 Detected.
No [R82XX] PLL not locked! messages.
First Run Notes:
After installation, SDR++ will appear in your desktop menu (usually under βOtherβ), or you can run:
sdrpp
Device: Select RTL-SDR (V4) in the Source menu.
Sample Rate: 1.8 MSPS is typical; lower if CPU load is high.
Gain: Disable AGC and set manual gain (start ~35 dB).
PPM Correction: Enter your calibration value from
rtl_test -p.Demodulation Mode: Choose WFM for FM broadcast, SSB for amateur bands, etc.
rtl_433ο
rtl_433 is a command-line tool to decode radio transmissions from devices operating in the 433 MHz ISM band, such as weather stations, tire pressure sensors, and wireless thermometers.
Install:
sudo apt install -y rtl-433
Preventing Driver Overwrite
When installing GQRX, SDR++, gnuradio-dev, or gr-osmosdr, the system may reinstall outdated librtlsdr.
After each installation, check:
ldd "$(which rtl_test)" | grep rtlsdr
If it no longer points to /usr/local/lib/librtlsdr.so, run:
sudo apt purge -y 'librtlsdr*'
sudo ldconfig
cd ~/rtl-sdr-blog/build && sudo make install && sudo ldconfig
You can test immediately (or after a reboot for a clean environment):
rtl_test -t
Expected output:
Contains RTL-SDR Blog V4 Detected.
No [R82XX] PLL not locked! messages.
Basic Use:
Run
rtl_433to automatically detect and decode common 433 MHz devices.Use
rtl_433 -Gto list all supported protocols.
dump1090-mutabilityο
dump1090-mutability is a Mode S decoder for ADS-B aircraft transponder data. It receives and decodes aircraft positions, speeds, and other flight data, and can serve a live map via a web browser.
Install:
sudo apt install -y dump1090-mutability
Preventing Driver Overwrite
When installing GQRX, SDR++, gnuradio-dev, or gr-osmosdr, the system may reinstall outdated librtlsdr.
After each installation, check:
ldd "$(which rtl_test)" | grep rtlsdr
If it no longer points to /usr/local/lib/librtlsdr.so, run:
sudo apt purge -y 'librtlsdr*'
sudo ldconfig
cd ~/rtl-sdr-blog/build && sudo make install && sudo ldconfig
You can test immediately (or after a reboot for a clean environment):
rtl_test -t
Expected output:
Contains RTL-SDR Blog V4 Detected.
No [R82XX] PLL not locked! messages.
Basic Use:
Run:
dump1090 --interactive --net.Open
http://<raspberrypi-ip>:8080in your browser to view live aircraft tracking.