A very simple to build, Spectrum Analyzer

Page last updated on June 2, 2020 (more details added)

No, not the ones above, read on please:-

A Spectrum Analyzer (SA) is a handy piece of gear to have in the Amatuer Radio shack. Commercial ones are available and range from high end instruments either new or second hand, to relatively low cost units like the Rigole and Siglent instruments. (Pictured above) Still thousands of dollars though.

You can even build your own, although a fairly complex project, if you look on the web for Scotty's web pages. https://scottyspectrumanalyzer.us

Presented here is a minimal cost, "tinySA", an instrument which can be home built quickly and easily, from low cost modules available on eBay for example. NOTE: It's not a full blown SA but usefull nonetheless. It is based heavily on Eriks (PD0EK) version but now uses a different micro scontroller and heavily revised software.

There is a web site tinySA.org has some details of a potentially commercially avaialable version.Note, since this version is based on Eriks original concept, some limitations apply. Minimum RBW is ~3.6KHz for example.

Eriks (PD0EK) Github page gives more information. https//github.com/erik_kaashoek/tinySA

There is also a groups.io Group which covers this device too. https://groups.io/g/HBTE This is actually a Home Brew Test Equipment group, hence the "HBTE".

The tinySA uses several eBay modules which can be just connected up with co-ax cables and wires and connected to the PC. This hardly makes a fully usable instrument so I decided to make a PCB for the tinySA project and it is shown below. It's in the form of a 100 x 100mm sized panel from a Chinese PCB supplier at low cost. The panel is V-cut and is simply snapped into two individual PCB's to form the complete tinySA project. You can see the simplicity of tinySA. The hard work of course, is done in Erik's choice of easily available modules and of course, the software !

Version "1" PCB for tinySA

The original software didn't support an in-built display but used a PC to show the scans. The original used an Arduino NANO board but it was decided, in conjunction with WA2FZW & G3ZQC, to use an ESP32 board as it is much more powerful and has more memory plus in-built WiFi which is used to connect to the PC if required. Usung a PC is not mandatory, tinySA can be used on it's own using for example, a Li-Po battery as power source. One big advantage also, is the tinySA now can have an in-built TFT display.

Dave, M0WID has also done much work on the software, using the ESP32. The Schematic and PCB above, is based on his work. Further work has been done by Jon,WA2FZW, Jim, G3ZQC and myself, vk3pe.

Currently, the software by the above is at Version 2.7 (June 2020) The TFT screen for the tinySA features a touch screen menu structure. You can see the structure here.

Eventually, more info on this build will be available. ie Schematic, Bill of Material, Software


Here is a draft copy of the Schematic. It is shown for Version "2" of the PCB but the actual PCB that has been built so far, is Version "1".. Differences are shown on the Schematic in grey shaded areas.. The schematic is in two parts, the RF section and the Control section.

This drawing shows how the tinySA is built.

A draft copy of the Bill of Material (BOM), an Xcel file. (it's for V2 PCB so some parts are not required for the V1 PCB, refer to the Sch..)

The PCB uses mainly SMD components, but with care, most any experiecned builder should be able to tackle this project. Virtually no wiring is required, just the DC input if it's not being run from a USB port.

Software see https://groups.io/g/HBTE files area. It may not be the latest version there. Current Software version 2.7 (June 2020) ---> ask

A typical tinySA display:

1 to 100MHz scan example.

The picture above shows the output from an HP8640B signal generator at ~23.82MHz at a level of -20dBm. The other signals are harmonics. The TFT is a touch screen and is used to adjust various parameters.

The picture below shows how the 2 PCB's are stacked with the TFT display. You can just see the edge of the ESP32 board behind the display. Note just how small and self-contained the tinySA actually is ! A standard USB cable is plugged into the ESP32 for programming. WiFi is used to send the screen dump to a PC. The PC can also be used to adjust parameters too.

7th May:- There is a small modification required to my V1.0 PCB. It entails swapping the Chip Select (CS) lines to the RF modules. It can also be achieved by swapping the ports in the software, but to avoid any confusion or forgetting to do it, in later software releases, it's probably best to do it on the PCB. It's in the area of ferrite beads FB6 and FB7.

Instead of fitting these two beads on the PCB, one is fitted across pads from FB6 and FB7 as you can just see in the picture. It's easier to fit if the 'thin' side of the bead is uppermost. Make sure there are no shorts to other pads. Then fit a short piece of wire is fitted as shown. I used some wire wrap wire to do it, it's easier and neater.

The Attenuator module:

Remove the 6 x 10k ohm resistors on the back of this module. Easiest way to do this is to heat both ends of each resistor at the same time with two soldering irons. Fit this module onto the tinySA board using very short spacers (eg a nut) so that the 7 connections can be made without any shorts.


This is just a taste of the tinySA build. For more information consider joining the HBTE Group as per link above.

Major components used:-


ESP32 WROVER version (eBay) [NOTE: PCB shows V1.7, 1.8 OK also.]

2 x Si4432 "RF" module (eBay)

PE4302 attenuator module (eBay)

2 x EPCOS B3550 saw filter 433.92MHz


Mini-Circuits ADE-25MH mixer (eBay)


320 x 240 pixel ILI9341 2.8" TFT display (eBay)



Page created by vk3pe (see QRZ.COM for contact details) April 2020

Last updated on June 2, 2020