RTL SDR As A Spectrum Analyzer

RTL-SDR, the USB TV tuner turned software-defined radio is an amazing device, capable of listening to nearly anything from 25MHz to 1750MHz, fits in your pocket, and costs about $20. Even more astonishing is that it’s also a kinda-okay spectrum analyzer. [Kerry D. Wong] tested out one of these USB TV tuner, and the results are exactly what you would expect: it lacks a little precision, and sampling bandwidth is only a tiny bit terrible, but it does work.

A stock USB TV tuner doesn’t come with a connector that would normally be used for spectrum analysis. A BNC connector can be easily attached, as can a terminator to match the 75Ω impedance of the SDR. This isn’t really necessary; the frequencies being measured are low enough that you can get away without one.

As far as software goes, [Kerry] first pulled out the usual suspects of the SDR world; rtlsdr-scanner distorted the measured spectrum, as did a lot of other SDR receivers. Gqrx SDR was the first one that worked well, but the king of this repurposing of USB TV tuners was OSMOCOM. There’s a huge number of tools for spectrum analysis right out of the box with this package.

How did the RTL SDR fare as a spectrum analyzer? Feeding some stuff in from a signal generator, [Kerry] discovered the LO in the RTL SDR was off by a hair. Also, OSMOCOM only measures amplitude in dB, not the dBm found in every other spectrum analyzer ever made. By measuring a 0 dBm signal whatever value displayed can be shifted up or down.

So, does it work? Yes, it does. If, for some reason, you need a spectrum analyzer now, can you use this? Yep. Pretty cool.

Sine Waves, Squares Waves, and the Occasional FFT

I became aware of harmonics and the sound of different shaped waveforms early in my electronics career (mid 1970’s) as I was an avid fan of [Emerson Lake and Palmer], [Pink Floyd], [Yes], and the list goes on. I knew every note of [Karn Evil 9] and could hear the sweeping filters and the fundamental wave shapes underneath it.


I remember coming to the understanding that a square wave, which is a collection of fundamental and (odd) harmonics frequencies, could then be used to give an indication of frequency response. If the high frequencies were missing the sharp edges of the square wave would round off. The opposite was then true, if the low frequencies were missing the square wave couldn’t “hold” its value and the top plateau would start to sag.

Continue reading “Sine Waves, Squares Waves, and the Occasional FFT”

THP Quarterfinalist: 3GHz Spectrum Analyzer

Radio seems to be an unofficial theme for The Hackaday Prize, with a few wireless frameworks for microcontrollers and software defined radios making their way into the quarterfinal selection. [roelh]’s project is a little different from most of the other radio builds. It’s a simple spectrum analyzer, but one that works up to 3GHz.

The hardware is a mishmash of chips including an ADL5519 power detector, an Si4012 for the local oscillator, and a MAX2680 mixer. An Atmel XMega takes care of all the on board processing, displaying the spectrum on a small LCD, writing data to an SD card, and sending data over a 3.5mm jack that doubles as either an analog input or a half duplex RS232 port.

Seen in the video below, [roelh]’s spectrum analyzer is more or less finished, complete with a nice looking enclosure. Now [roelh] is working on documentation, porting his source to English, and getting all the files ready to be judged by our real judges.

SpaceWrencherThe project featured in this post is a quarterfinalist in The Hackaday Prize.

Continue reading “THP Quarterfinalist: 3GHz Spectrum Analyzer”

A Modular 1GHz Spectrum Analyzer


[MrCircuitMatt] has been doing a lot of radio repair recently, quickly realized having a spectrum analyzer would be a useful thing to have. Why buy one when you can build one, he thought, and he quickly began brushing up on his RF and planning out the design of a 1000 MHz spectrum analyzer

The project is based on Scotty’s Spectrum Analyzer, a sweep-mode, modular 1GHz spectrum analyzer that is, unfortunately, designed entirely in ExpressPCB. [Matt] didn’t like this proprietary design software tied to a single board house. The basic building blocks of [Scotty]’s spectrum analyzer were transferred over to KiCAD, the boards sent off to a normal, Chinese board house.

In the second video, [Matt] goes over the design of the control board, a small module that connects the spectrum analyzer to the parallel port of a PC. There’s a lot of well thought out design in this small board, a good thing, too, since he’s powering his VCO with a switched mode supply. The control board has a 32-bit I/O, so how’s he doing that with a parallel port, what is ultimately an 8-bit port? A quartet of 74ACT573, a quad buffer with latch enable. Using the eight data lines on the parallel port allows him to toggle some pins while the ancient pins on the parallel bus – Strobe, Select Printer, and Line Feed control the latches on each of the buffers. This gives him the ability to write to 32 different pins in his spectrum analyzer with a parallel port.

Right now, [Matt] is wrapping up the construction of his control board, with the rest of the modules following shortly. He thinks the completed analyzer might even be cheaper than a professional, commercial offering, and we can’t wait to see another update video.

Continue reading “A Modular 1GHz Spectrum Analyzer”

Build an Audio Spectrum Analyzer the Analog Way


[Ryan] wanted a spectrum analyzer for his audio equipment. Rather than grab a micro, he did it the analog way. [Ryan] designed  a 10 band audio spectrum analyzer. This means that he needs 10 band-pass filters. As the name implies, a band-pass filter will only allow signals with frequency of a selected band to pass. Signals with frequency above or below the filter’s passband will be attenuated. The band-pass itself is constructed from a high pass and a low pass filter. [Ryan] used simple resistor capacitor (RC) filters to implement his design.

All those discrete components would quickly attenuate [Ryan’s] input signal, so each stage uses two op-amps. The first stage is a buffer for each band. The second op-amp, located after the band-pass filters, is configured as a non-inverting amplifier. These amplifiers boost the individual band signals before they leave the board. [Ryan] even added an “energy filler” mode. In normal mode, the analyzer’s output will exactly follow the input signal. In “energy filler” (AKA peak detect) mode, the output will display the signal peaks,  with a slow decay down to the input signal. The energy filler mode is created by using an n-channel FET to store charge in an electrolytic capacitor.

Have we mentioned that for 10 bands, all this circuitry had to be built 10 times? Not to mention input buffering circuitry. With all this done, [Ryan] still has to build the output portion of the analyzer: 160 blue LEDs and their associated drive circuitry. Going “all analog” may seem crazy in this day and age of high-speed micro controllers and FFTs, but the simple fact is that these circuits work, and work well. The only thing to fear is perf board solder shorts. We think debugging those is half the fun.

An RTL-SDR Spectrum Analyzer

With the combination of small, powerful, and pocketable computers and cheap, off-the-shelf software defined radio receivers, it was only a matter of time before someone built a homebrew spectrum analyzer with these ingredients. This great build is the project of [Stephen Ong] and he’s even released all the softwares for you to build this on your own.

The two main components of this build are a BeagleBone Black and its 7″ Touchscreen cape. The BeagleBone is running Angstrom Linux, a blazingly fast Linux distro for small embedded devices. The radio hardware consists of only a USB TV tuner supported by RTL-SDR. In his demo video, [Stephen] shows off his project and by all accounts it is remarkable, with a UI better than most desktop-oriented SDR software suites.

You can grab the BeagleBone image [Stephen] is using over on his blog, but for more enterprising reader, he’s also put up the source of his ViewRF software up on GitHub.

Rigol WFM viewer ported for non-Windows users


[Matthias Blaicher] may think this isn’t a big deal when it comes to the amount of work he put into the hack. But for us, anything that extends the functionality of the versatile yet affordable Rigol DS1052E is a win. In this case he’s taken a previous hack and made it work for more people by extending the functionality of the WFM file format viewer.

[Dexter2048] pulled off the original hack which allows this oscilloscope to be used as a spectrum analyzer. [Matthias] didn’t want the tool to be limited to running only on Windows systems so he got to work. This isn’t quite as easy as sounds because the only part of the original code that was released is the parser itself. [Matthias] had to build everything up from that starting point. His software uses standard Python to parse the WFM file and reformat the data. The features included in the current version allow you to export data as a CSV file and even plot the waveform and FFT as seen above.