Skip to main content

Voice Pipeline

Overview

The home runs a fully local, cloud-independent voice pipeline using HA's Assist framework. The pipeline is anchored by a Home Assistant Voice PE device in the Bedroom and composed of four add-on components. An Ollama LLM provides conversational AI beyond basic HA commands.


Pipeline Components

1. Wake Word — openWakeWord

Property Value
Add-on core_openwakeword v2.1.0
Protocol Wyoming
Entity wake_word.openwakeword
Purpose Passively listens for wake phrase on the HA Voice PE microphone

2. Speech-to-Text

Two local STT options:

Option Add-on Version Best For
Speech-to-Phrase core_speech-to-phrase 1.4.3 Fast home control commands
Whisper core_whisper 3.2.0 Free-form speech, better accuracy
HA Cloud Fallback cloud STT

Recommendation: Use Speech-to-Phrase as primary for HA commands — it's significantly faster than Whisper for intent-matched phrases.

3. Conversation / Intent Processing

Option Entity Notes
Home Assistant conversation.home_assistant Built-in intent matching for HA commands
Ollama conversation.ollama_conversation Local LLM (qwen3:4b-instruct at 192.168.1.85:11434)

4. Text-to-Speech

Option Add-on Version Notes
Piper core_piper 2.2.2 Local neural TTS (offline)
Google Translate Cloud TTS (requires internet)
HA Cloud Nabu Casa cloud TTS

Hardware — HA Voice PE

Property Value
Device Home Assistant Voice 0919e8
Model Home Assistant Voice PE
Manufacturer Nabu Casa
Firmware ESPHome 2026.3.2
Area Bedroom

The Voice PE connects to HA via the ESPHome integration over local LAN.

Controls:

  • Physical button on device
  • LED ring (color/pattern indicates pipeline state)
  • Mute switch
  • Wake sound toggle
  • Pipeline selector (select.home_assistant_voice_0919e8_assistant_2)

Conversation Pipelines

HA supports multiple named pipelines. The Voice PE's assistant_2 select entity allows switching between pipelines at runtime.

Typical pipelines:

  1. Default — Speech-to-Phrase → Home Assistant Assist → Piper
  2. LLM — Whisper → Ollama → Piper
  3. Cloud — HA Cloud STT → HA Cloud TTS

Announcement Targets

Beyond the Voice PE, TTS announcements can be pushed to any media_player entity. Key announcement targets:

Target Entity Notes
HA Voice PE media_player.home_assistant_voice_0919e8 Primary
Bedroom Echo Show 5 media_player.bedroom Alexa
VLC media_player.vlc_telnet Local fallback
Everywhere (MA group) media_player.everywhere All speakers

Notes / Gotchas

  • The Ollama server runs on a separate machine at 192.168.1.85:11434. If that machine is off, the Ollama conversation agent will be unavailable — HA Assist built-in handles fallback.
  • Whisper model size affects accuracy vs. speed. Check the Whisper add-on configuration for the selected model (tiny/base/small/medium).
  • Speech-to-Phrase requires a custom vocabulary configuration to recognize non-standard commands — check add-on settings for custom phrase lists.
  • The Voice PE LED ring color indicates pipeline state: idle (off/dim), listening (blue), processing (yellow), error (red) — exact colors depend on ESPHome firmware version.

Last Updated

2026-06-24