WEBSPECTOR - a Web Based FFT Spectrum Analyzer With ESP32

by emdee401 in Circuits > Arduino

9453 Views, 11 Favorites, 0 Comments

WEBSPECTOR - a Web Based FFT Spectrum Analyzer With ESP32

webspectrum.png

This is simple project that can be build in a matter of minutes. Yet, the result is so much more than a quick and dirty solution. Using an ESP32 controller, it is easy to build an audio spectrum analyzer with up to 64 channels. And you don't need a display or leds. Just access the analyzer with a computer, tablet or phone. All you need is a wifi access point

This project uses some really tough Mathematics behind the curtain. It does a FFT analyses of the incomming audio signal. If you want to know more about what is going on behind the curtain, check out this website

https://en.wikipedia.org/wiki/Fast_Fourier_transform

Supplies

61ZvAGEHPML._AC_SL1000_.jpg

You'll need :

  • ESP32 DEVKIT V1. Other onces might work but I used this one.
  • 2 identical resistors with a value of 1K-50K. Make sure the two you use are identical in value
  • 1 capacitor of 220nF
  • You need the arduino IDE to upload the Sketch
  • You can use the USB to power the circuit or use an external power supply

Schematic

F6JXW4RKW994QIE.png

The schematic is as easy as 1, 2,,3

Upload the Sketch

Tutorial-of-Programming-ESP32-in-Arduino-IDE.jpg

Use the arduino IDE to load and compile the sketch.

The latest version can be found here:

https://github.com/donnersm/Webspector

You need the following libaries:

arduino FFT, i used version 1.5.6

easybutton, I used verdion 2.0.1

Wifimanager, I used verdion 2.0.5Beta

Websockets, I used verdion 2.1.4


After uploading, you can use the serial monitor to keep track of what's going on.

Setting Up the WIFI

5676b2fd3b47c370a7bd7510524b6566.png

If you haven't used the web manager on this ESP32 before, after booting, the webmanager will take over.

You can see the web address you need to connect to in the serial manager. However, first you need to connect to the access point it has created. ESP32 no password is required.

After that, visit the webaddress that is given by IP number in the serial monitor and follow the instructions to setup your WIFI access. When done, manually reboot your ESP32.

After booting, the new P address will be visible in the serial monitor. Visit this new ip adress with your browser to see the analyzer user interface.

If the wifi manager doesn't appear after booting, or if you need to change your WIFI settings, you can press and hold the mode button ( connected to GPIO15) while pressing the reset button.


Let's Analyze That Audio Signal

FLRJF1GKW994QID.png
Build a web based spectrum analyzer with ESP32

Once everything is up and running, you can press the mode button ( GPIO15) to change the number of channels. 8, 16, 24, 32 and even 64 channels are available.

Buy Me a Coffee!

espresso-coffee-cup-with-beans-on-table-restricted.jpg

If you like my project, check out my youtube channel here:

https://www.youtube.com/channel/UCm5wy-2RoXGjG2F9wpDFF3w

And if you really like it, feel free to buy me a coffee here:

https://www.buymeacoffee.com/MarkDonners