There are all sorts of cool audio-based Raspberry Pi projects out there but sometimes you need something a little more niche. Today we’re sharing a really cool creation put together by Dan McCreary that uses a Raspberry Pi Pico 2 to drive a custom FFT sound spectrum analyzer. This gadget provides real time visual output of soundwaves and best of all, you can make it yourself!
Spectrum Analyzer using FFT running on Raspberry Pi Pico 2 – YouTube
Watch On
If you’re not familiar with the term, FFT stands for “Fast Fourier Transform”. This is an algorithm that can be used to take sound data from input devices like microphones and transforms it into a visual sound wave that you can see in real time on a screen. With a little bit of tweaking, this project can be modified to work for other systems too like radars.
McCreary was kind enough to share plenty of details about how this project works and what its current limitations are. In the project description, he goes on to explain that the FFT analyzer operates around 17 milliseconds. The algorithm was created to work in ARM assembler using an FFT library created by Peter Hinch.
Like we mentioned before, the main board powering the project is a Raspberry Pi Pico 2. The Pico is connected to a 2.42-inch I2C OLED display which has a resolution of 128 x 64px and relies on the SSD1306 driver to operate. For audio input it uses a microphone that is capable of providing 8K samples per second.
The code for the project was created using MicroPython. Over at GitHub, McCreary has shared details on how to recreate the project. In it, he breaks down the hardware setup as well as everything you need to build the FFT analyzer system. McCreary also shared a video to YouTube showing off the creation process as well as the final build in action.
If you want to get a closer look at this Raspberry Pi project, check out the project page shared to GitHub and YouTube for more details. There you’ll find not only details about its construction but also steps and additional resources for developing your own FFT system from scratch.