Raspberry Pi RTL-SDR Spectrum Analyzer Scanner

Adafruit has released a tutorial showing how to build a portable TFT screen based Raspberry Pi RTL-SDR spectrum analyzer that was inspired by the HackRF portapack. Construction of the project is very simple and the “FreqShow” python software is provided as a simple download that is ready to run once the RTL-SDR is installed on the Raspberry Pi.

The FreqShow software appears to be fully featured with the ability to change the center frequency, sample rate, and gain.  It can show on the TFT screen the real time RF spectrum of the currently tuned area or it can be switched to show a waterfall of the spectrum as well. Below is a video of the finished project that shows the software in action.

"Freq Show" Software in action on a Raspberry Pi
“Freq Show” Software in action on a Raspberry Pi with TFT Screen

Notify of

Inline Feedbacks
View all comments
Frank S

Has anyone tried this with the NooElec Ham it up, upconverter? I was going to see how well it works, but the SW may need a tweak for the freq offset (-125MHz)

Frank S

Where can I get the Pi software? I have the dongle (and ordered another NooElec nano) plus a 7″: screen
I haven’t seen a repository for the SW
Frank KA2FWC


Here’s my version: https://github.com/rgrokett/FreqShow
Adafruit’s original version is at
(You need to login, then go to the url again.)

Frank S

Thanks, Ill Dl and play when I get my display


wheres the best place to buy the correct rtl dongle de david zl2ic

Russell WA4EFH

Right here on RTL-SDR site store (well actually, its on Amazon)
These are all metal case construction so decently shielded and I have found mine to be very reliable.

Russell WA4EFH

Alternately, I have used this one from Amazon as well:
NooElec NESDR SMArt – Premium RTL-SDR w/ Aluminum Enclosure…


New to this pi world! i have Raspberry pi3b and would like to know if there is any way to have it display on HDMI display with mouse. I also rxed the error on line 77. Any help would be great. Thank You!!

Russell WA4EFH

Yes, it worked fine on my HDMI display (using a mouse instead of touch). Just plug them in and boot.

John Nix KC0KBG

Is someone using this in a QRP transceiver kit?

Russell Grokett WA4EFH

Just FYI… In case you want to use a real mouse instead of touch screen:
$ nano freqshow.py
Change “CLICK_DEBOUNCE = 0.1″
Comment out the touchscreen driver:
#os.putenv(‘SDL_MOUSEDRV’ , ‘TSLIB’)
#os.putenv(‘SDL_MOUSEDEV’ , ‘/dev/input/touchscreen’)
Set the Mouse to Visible:

This worked fine with my 5” HDMI monitor and a regular USB mouse.


what frequencies Can it display? and if possible can I be able to listen to the spectrum or will I need a add on to do so?

Russell Grokett WA4EFH

I found mine to do all frequencies between 52 – 2200 MHz (with gaps for cell phone freqs). Basically, whatever your RTL-SDR dongle will do. You type in the center freq and it gives display of bandwidth of the dongle (usually about 2mhz).

Joseph T WA4UJY

I get the error below , is there a solution/edit in the script ?


pi@raspberrypi:~/FreqShow $ sudo python freqshow.py
MobaXterm X11 proxy: Unsupported authorisation protocol
Traceback (most recent call last):
File “freqshow.py”, line 77, in
pygame.error: Unable to open mouse
pi@raspberrypi:~/FreqShow $


I have FreqShow working now but only with a AdaFruit PiTFT 3.5″ touchscreen. It’s on a 16MB SD card. Joe, if you would like the image let me know.

Josrph Totter WA4UJY

Sure I would love the image. Whow can i get that ?

The display I am using is an 480X320 pixel with an XTP2046 touchscreen controller ans says 3.5 inch RPi Display so it may be the adafruit. It works fine on the PI I just get that friggin error in python. I will get that adafruit display to verify thats not my issue though.

Jim Kocsis

Joe, check your email as shown in QRZ.


Jim Kocsis

Joe, I tried to reach you via your email shown on QRZ, it bounced back. Tried to call you and your phone mail box is full. Mail me a 16 GB micro SD card, class 10 and I will load the image and mail it back. My address is okay on QRZ.



Thanks for the info Chris. I ‘m just now getting back into the Pi and SDR. I’m real beginner on the Pi and will only be able to follow a “recipe” for now but I’ll try it anyway. I’ve been reading books on the Pi, watching the hundreds of videos and learning a lot!

best regards


Jim Kocsis WA9PYH

what is the resolution of the Raspberry Pi SDR-RTL spectrum analyzer? can you see individual carriers (CW -morse code) signals? can the display be zoomed in (narrow the bandwidth)?


Touch screen fails when sdr program is started. Mouse cannot be seen, but with some guess work, functions can be started. Why stops my touch functionality?

Jeff Flowers

Hey there – same issue as @Beernick. Got it running on my 7″ official screen – and no ability to touch. Could use the mouse with a bit of guesswork. Anyone got a work around?


Peter Lechner


same Issue for mee. Great program but not usefull without a mouse or correct touch functionality.

Best regards,

Chris Eckman

Same for me too, Someone needs to add 7″ touchscreen functionality!


need more on this topic


It has to do something with giving the program rights to access the touch screen data. try running it as root to see if it fixes it. This is a common problem with touch screen on raspi

Die Bastelkammer

I rebuild this nice pocket spectrum analyzer – It is runnig flawlessly!
More can be found in my blog: