Basic SoundReactive Setup w/ ESP32-A2DP

Sound-reactive effects for a backlit Honeycomb wall panel. Check this YouTube vid out:

SR Honeycomb wall panel

Original LED wall panel idea from here.

Two ESP32’s involved – one for ESP32-A2DP Bluetooth (which also runs the custom sound reactive module) and the other for WLED-WiFi; check this discussion out for Bluetooth/WiFi coexistence issues on the same ESP32 radio in A2DP setups. These two ESP32s are connected via UART. Using WLED JSON API over ArduinoSerial communication to update WLED presets upon beat detection.

Bluetooth audio streaming presents several advantages over, say, traditional mic capture. For example:

  • Better audio source signal fidelity can be maintained by digital/electrical (rather than acoustic) transmission
  • Input signals are received electrically (rather than sonically), eliminating the need for a loud/audible audio source

Nevertheless, traditional audio capture methods still retain several advantages including:

  • Mic capture works transparently with any system that outputs audible sound above a certain threshold
  • Line-in and mic capture are not subject to the latencies associated with Bluetooth audio

The ESP32-A2DP project supports audio output via i2s. A basic setup could include an external audio interface, e.g. PCM5102 DAC, as shown below (ESP32 internal DAC not recommended). Check a more generic architecture out for other sound output options.