Voice Assistant
Since ESPHome supports on-device wake word detection, it is possible to use the wake word detection to trigger a voice assistant. This is a sample configuration that uses the wake word detection to trigger a voice assistant.
Considering the chosen module (ESP32-S3-WROOM-1-N16R8) has PSRAM, the eNSPanel is fully capable to perform on-device wake word detection.
After properly configuring the microphone, the following configuration can be used to trigger a voice assistant.
esphome:
on_boot:
priority: -100
then:
- micro_wake_word.start:
external_components:
- source: github://pr#5230
components: esp_adf
refresh: 0s
micro_wake_word:
microphone: mic
model: hey_jarvis
on_wake_word_detected:
- rtttl.play: 'beep:d=16,o=5,b=100:e6'
- wait_until:
not:
rtttl.is_playing:
- voice_assistant.start:
voice_assistant:
on_client_connected:
- micro_wake_word.start:
on_client_disconnected:
- micro_wake_word.stop:
on_error:
then:
- rtttl.play: 'beep:d=16,o=5,b=100:e6'
on_end:
then:
- wait_until:
not:
voice_assistant.is_running:
- micro_wake_word.start:
For debug purposes, once recognized, the buzzer will play a beep and the voice assistant will start.