Creative Hardware

An ESP32 and a $20 Touchscreen Make a Perfectly Good Spectrum Analyser

Mirko Pavleski's build runs FFT on a CrowPanel 3.5 and needs about a handful of passive components between the audio and the ADC pins.

Audio-reactive work has a standard hardware answer — send audio into a computer, do the FFT there, drive the output over a network. It works, and it means an installation depends on a laptop staying awake.

Mirko “mircemk” Pavleski’s DIY ESP32 Audio Spectrum Analyzer is the other answer: do it all on a $20 board.

The build

  • Board: CrowPanel 3.5 — an ESP32 with an integrated 480×320 touchscreen LCD
  • Input: analog audio into the MCU’s ADC pins
  • Analog front end: as Hackaday put it, “a handful of passives to tame the incoming analog audio signal”
  • Output: live frequency breakdown rendered on the built-in display

That’s the whole bill of materials. One board with a screen already on it, plus resistors and capacitors.

Pavleski’s own demonstration of the analyser running.

Why this is worth paying attention to

The point isn’t that spectrum analysers are novel — they are the “hello world” of audio DSP. The point is where the computation is happening.

An ESP32 running an FFT fast enough to drive a smooth 480×320 display in real time is a microcontroller doing a job that, not long ago, wanted a dedicated DSP chip or a host computer. For anyone building audio-reactive objects, that changes the architecture:

  • No host computer. The installation is the object. Nothing to boot, nothing to babysit, nothing that shows a software update dialog during an exhibition.
  • Cheap enough to duplicate. Twenty of these is a plausible budget line. Twenty laptops is not.
  • It fits inside things. An ESP32 and a small board go in a prop, a sculpture, a wall panel.

The integrated-display board is the specific convenience here. The CrowPanel class of hardware — ESP32 plus screen plus touch, pre-assembled — removes the most annoying part of this category of project, which is wiring a display to a dev board and fighting the driver.

Adapting it

Pavleski notes that similar results are achievable with different display hardware, though code changes will be needed depending on the components. That’s the honest caveat: the FFT and audio handling port easily, the display layer usually doesn’t.

Where this becomes more than a bench instrument is when the FFT output drives something other than bars on a screen. The same analysis that renders a spectrum can drive addressable LEDs, servo positions, motor speeds or projection parameters. The spectrum display is a debugging view for a signal you can send anywhere — and having it already on the board means you can see what your installation is actually hearing, which is the thing that’s hardest to diagnose once the lights are the only output.

The project lives on Hackaday.io with the code available.