Demonstration of fast (44.1kHz) sampling via I2S on an ESP32 microcontroller, streaming via WebSocket over wifi to a live strip chart webpage served by the ESP32. This provides a handy way to remotely sample, stream, and inspect any arbitrary analog signal (not necessarily audio) in 0 to 3.3V range.
For this demo, I arbitrarily used an online tone generator ([ Ссылка ]) and my laptop's headphone jack as an analog signal source. The headphone-out audio plays through a speaker (just for fun) and also routes to a GPIO pin on the ESP32 via a bias circuit which pulls the center voltage up to 1.65 Vdc in order to envelope the audio signal within the 0 to 3.3V range of the ADC. Again, the signal source is arbitrary. The point is that the ESP32 samples an analog signal and provides a means for you to view the signal remotely over a network.
This has been super useful during my own various ESP32 audio projects, but this could be just as useful for sampling miscellaneous high-rate analog sensors.
Code: [ Ссылка ]
This is part of a bigger project which aims to use the ESP32 as a modem for packet radio: [ Ссылка ]
Sorry for the fan noise, lack of narration, and imprecise synchronization.
![](https://i.ytimg.com/vi/fNJ8EVhi6e0/maxresdefault.jpg)