rtlSpectrum: A New GUI for rtl_power

Thank you to Andrey for submitting news about the release of his new open source program called "rtlSpectrum". rtlSpectrum is a GUI for rtl_power, which allows you to scan a wide swath of bandwidth with an RTL-SDR dongle. The scan can then be plotted with rtlSpectrum, and peaks of activity can then be determined. Some of the features include:

  • load from .csv file produced by rtl_power
  • run rtl_power directly. it should be available in the $PATH
  • add multiple graphs for analysis
  • subtract one graph from another
  • save/export graph in the rtl_power based format

In particular, the ability to subtract one graph from another is useful for analyzing filters. Andrey has posted about doing this with rtlSpectrum, a noise source and an RTL-SDR V3 over on his blog (note that the blog is in Russian, so please use Google Translate if necessary). He notes how the dynamic range of the RTL-SDR is limited, so that the true blocking power of a filter cannot be determined, but it is enough to see the shape and frequency response.

rtlSpectrum Screenshots
rtlSpectrum Screenshots
Notify of

Inline Feedbacks
View all comments

Anybody know how to ‘zoom’ like dark picture in this post? Even using small range for scanning, I always get full-range in graphs.


unfortuately no. rtl_power is available in my path and can be started with openening CLI and enter rtl_power, also i tested rtl_power available in same directory as rtlSpectrum.jar reside – same error: Caanot run rtl_power: error=2, No such file or directory


Anyone who get it run under MacOS (using Mojave)? Iam able to start the GUI, but after klick run it complains that rtl_power cant be find (but it is available in my PATH) Checked via terminal and “rtl_power”.


hey, did you manage to get it running ?


This is really cool, and such a simple idea. Is there a way to only scan a certain bandwidth. Every time I run it, it always defauilts to 25MHz to 1.8 GHz. It would be great to define start and stop frequencies, and step. I thought maybe you could do it by loading a csv file, but not sure that works (it doesn’t seem to work when I try using an existing file created by rtlspectrum, but truncated to only the frequencies I want). But maybe I am missing something.


and oddly enough, if I try to run rtl_power from the command line, I end up with a “PLL not locked” error every single time. Yet rtlSpectrum runs just fine……