RTL-SDR on Raspberry Pi4

Introduction

When I was about eight years old, I received a “Rocket Radio” for Christmas. It was about six inches high, red and looked like a small rocket. It had a sliding rod which acted as a tuning inductor for the crystal receiver inside. I spent hours listening to the various powerful AM stations, with great DJs like Dave Boxer on CFCF 600 and Cousin Brucie on WABC 770. We were just starting to discover outer space and songs like “Telstar” were big hits.

Nowadays as anyone who reads this blog knows, I have discovered the modern day equivalent: the RTL-SDR receiver. The RTL is small, inexpensive and covers virtually DC to light (well almost). What’s not to like. The Raspberry Pi4 is also small, inexpensive and incredibly functional. The two work well together. The RTL is modest on power, taking about 130mA quiescent and 280mA with a typical SDR application. Scicos/Scicoslab can be used to simulate almost any telecommunications system as I have shown over the last two years. GNU Radio offers similar flexibility, but also has built in real time hardware interfaces, in particular for the RTL. In this post I am using the latest RPi4 Raspbian OS Bullseye.

Installation of GNU Radio

Fig.1 Install GNU Radio Software on RPi4

Scicos and GNU Radio are the software equivalents of Meccano & Lego. You can build practically anything. In order to use the RTL on RPi4, you can install GNU Radio which is Open Source Software. This is a great way to get started. Figure 1 shows the Add & Remove Software application in RPi. Just type “gnuradio” into the search box and then tick off the 3 boxes shown. This will install the basic toolkit along with development and documentation. Now let your imagination go wild!

RTL-SDR Schematics for GNURC

Fig.2 RTL-SDR FM Spectrum Test
Fig.3 RTL-SDR NBFM Marine Weather Rx
Fig.4 RTL-SDR WBFM Rx
Fig.5 RTL-SDR WBFM Rx Spectrum

GNU Radio Companion is the visual interface for GNU Radio. There are many tutorials on YouTube about how to build a GNURC schematic. Basically just type what you want in the search box to find a suitable module and drag it onto the schematic. The latest models are built with the QT GUI, so use these options. Figure 2 shows a very simple model to display the local FM radio spectrum. Search for “RTL” and you will find the RTL source. Then attach the QT GUI Sink. I go over construction in the YouTube video linked below.

Figure 3 shows a more advanced schematic showing a Marine FM Weather Receiver. This features more modules and connectivity. Next in Figure 4 there is a Wideband FM Receiver. Figure 5 shows the FM Spectrum along with the two GUI slider controls for center_frequency & volume. Both of these schematics are also explained in the YouTube video.

Installation of Gqrx

Fig.6 Install Gqrx on RPi4
Fig.7 Gqrx Configuration for RTL-SDR
Fig.8 Gqrx RTL-SDR Marine Weather 162.4MHz

Gqrx is another tremendous application to use the full potential of the RTL. It can be installed as before as shown in Figure 6. When you first start Gqrx, you have to chose the right device as shown in Figure 7. Figure 8 shows operation receiving local Marine Weather on 162.4MHz.

Fig.9 YouTube Video RTL-SDR on Raspberry Pi4

GRC Files

Please send your comments, questions and suggestions to:
contact:

YouTube Channel
YouTube Channel

References

#1. – “Raspberry Pi OS Bullseye”
https://www.raspberrypi.com/software/operating-systems/

#2. – “GNU Radio”
https://www.gnuradio.org/

#3. – “Gqrx SDR”
https://gqrx.dk/

By Jeremy Clark

Jeremy Clark is a Senior Telecommunications Engineer and Advanced Amateur Radio Operator VE3PKC. He is the author of E-Books on Telecommunications, Navigation & Electronics.