Local speech recognition & synthesis
Last updated
A Home Assistant voice satellite that listens and answers without leaving the house
A command-only model finishes under a second; a model that transcribes everything can take 8 s depending on the box.
An Assist round trip has four stages: wake word, transcription, processing and synthesis. The choice of transcription engine changes perceived latency the most, and Piper handles synthesis. This guide covers satellite placement and the conditions that keep latency down.
The satellite only exchanges audio
A voice satellite is a device with a microphone and a speaker. It detects the wake word itself, opens a connection to Home Assistant and streams your speech. Home Assistant does the reasoning and the storage; the satellite only moves audio.
That is why several satellites can share one pipeline1. Put a satellite in each room and point them at the same transcription and synthesis services, and you speak the same way wherever you are.

Choosing the transcription engine
Home Assistant offers two local transcription options: Speech-to-Phrase, which only understands commands, and Whisper, which transcribes everything. They trade speed against range in opposite directions.
For home control alone, Speech-to-Phrase wins: it cannot handle sentences outside its list, but it finishes under a second even on a Green or Pi 4. If you want the transcript for something else, you need Whisper, and a faster host with it.
Scroll sideways to compare all columns.
| Engine | Latency | Range | Good host |
|---|---|---|---|
| Speech-to-Phrase | Under 1 s (Green, Pi 4) | Home-control commands; open sentences such as lists or timer names are limited | Green, Pi 4 |
| Whisper | About 8 s on a Pi 4, under 1 s on a NUC | Open-ended transcription, passing text to other apps | Intel NUC, mini PC, Mac |
Piper makes the voice
Piper handles synthesis. It is a local neural text-to-speech2 system that generates 1.6 s of speech per second even on a Pi 4. Short answers synthesize quickly, so this stage is rarely the bottleneck.
Voice quality varies a lot by language and model. For Korean, pick a Korean voice model and listen to the same sentence a few times to check pronunciation and pace.
The install order
1) Install the Whisper and Piper apps on Home Assistant. 2) The Wyoming3 integration discovers the services; if it does not, enter the host and port yourself. 3) In Voice assistants, create a pipeline and choose the wake word, transcription, synthesis and conversation agent.
4) Add the satellite and assign that pipeline. 5) Turn on one light by voice and note the response time and any misheard sentence. If you installed the apps on another machine, add that machine's address in the Wyoming integration.

Conditions that cut latency
The transcription host is the biggest variable: an 8 s transcription on a Pi 4 drops under a second on an Intel NUC. Wire the satellite and Home Assistant, and put the transcription server on the same switch to cut network waits.
Add a conversation model and its response time joins the total. Instruct it to answer briefly, and run it on the same host as transcription to remove one network hop.
Limits and checks
Speech-to-Phrase cannot understand words outside its list. Adding items to a shopping list or naming a timer needs Whisper. Whisper alone, on a slow host, means waiting 8 s.
Korean quality differs by model, so say the same sentence three times and switch models if it mishears often. Running cloud speech for a while to compare is also reasonable.

Terminology notes
Pipeline — A sequence of processing stages from input to output. Different models or tools may be used at each stage.
Back to the textText-to-Speech — Technology that converts text into spoken audio with pronunciation and prosody.
Back to the textWyoming — The protocol Home Assistant and voice services use to exchange audio and text. It has no authentication or encryption, so it is used on trusted networks only.
Back to the text
Frequently asked questions
- What should you check first in this article?
- An Assist round trip has four stages: wake word, transcription, processing and synthesis. The choice of transcription engine changes perceived latency the most, and Piper handles synthesis. This guide covers satellite placement and the conditions that keep latency down.
Read next
Agents and automation
Running local AI for a smart home: splitting voice, conversation and video across your own machines
Model setup recipes
Local CCTV person detection with Frigate: N100, Coral or a Mac?
Local speech recognition & synthesis
Local AI speech recognition: transcribe on your own PC
Local speech recognition & synthesis
Compare local TTS models: languages, hardware and speed evidence
