Clone
3
Home
Michal Zaniewicz edited this page 2026-07-22 22:26:25 +02:00
ESPHome Voice Assistant for the Waveshare ESP32-S3-AUDIO-Board
A Home Assistant voice satellite running on the Waveshare ESP32-S3-AUDIO-Board, the smart-speaker devkit with a dual-mic array, an ES8311 codec, three buttons and a 7-LED RGB ring. It is pure ESPHome with no custom C firmware: an always-on core you pull as a package, plus one thin config file you edit.
This wiki is the full guide. For a quick overview and the source, see the repository README.
What it does
- Voice assistant: on-device wake word (
alexa,okay_nabu) viamicro_wake_word, the full Home Assistant Assist pipeline (STT, intent, TTS), a wake beep and music ducking while it listens. - Simultaneous music and announcements: a mixer speaker blends the media and announcement pipelines, so an announcement ducks the music instead of fighting it. Both are exposed to Music Assistant.
- LED ring: a single state machine drives it. Boot, no Wi-Fi, no HA, listening, thinking, replying, timer counting, ringing and volume changed are each a distinct colour or effect. Brightness and the animation for the listening, thinking and replying phases are pickable from Home Assistant: solid plus 14 animations.
- Timers: set by voice, with an on-ring countdown and a "Next timer" sensor in Home Assistant.
- Buttons: the three onboard keys do volume down, play-pause, volume up.
- Boot chime: a short sound once the device connects to Home Assistant, toggleable and swappable.
- Tunable live from Home Assistant: microphone mute, mic gain, LED brightness and wake-word sensitivity are entities, so there is no reflashing to tune it.
Where to go next
- Installation: first flash, Home Assistant setup, updating.
- Configuration: every substitution and every Home Assistant entity.
- Audio architecture: the shared-I2S two-bus design, in depth.
- LED ring: the state machine and every ring effect.
- Hardware: pinout, I2C map and sourced gotchas.
- Troubleshooting: boot loops, no sound, wake word, safe mode.
- FAQ: short answers to common questions.
Requirements
- A Waveshare ESP32-S3-AUDIO-Board.
- Home Assistant with the ESPHome integration and an Assist pipeline.
- ESPHome 2025.8.0 or newer.