Developer builds 512-LED music-reactive wall using ESP32, FFT, and custom serial protocol
A developer built a 512-LED wall display using eight 8×8 WS2812B panels arranged in a 32×16 grid, driven by an ESP32 microcontroller. The PC handles all audio analysis — decoding MP3s, computing FFT into 32 frequency bands, and building RGB frames — while the ESP32 acts solely as a display renderer. Frames of exactly 1542 bytes are streamed over USB serial at 921600 baud, with a deliberate cap of 24 fps to stay safely below the ~31 fps hard ceiling and avoid data corruption. An early fire-and-forget approach caused frame corruption during LED updates, which was resolved by implementing lock-step flow control where the ESP32 sends an ACK after each rendered frame. The audio stack was later rebuilt using sounddevice and numpy to ensure the visual output stays sample-synced with playback, eliminating any drift between sound and light.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)
Log in to join the discussion and vote.
Log in