-
-
Notifications
You must be signed in to change notification settings - Fork 20
Voice Control
Voice control is the core feature of Ava, allowing you to control smart home devices by speaking.
Compatible with Android 5-16.
0.6.0+ brought native
status_panelcontrols, new manifest fields and on-device TTS/STT references. 0.6.1 completely rewrote the vsWakeWord C++ inference path, added an online model catalog and a dual-stage microWakeWord verification pass. 0.6.2 made wake feedback effects independently switchable and added the "End voice session manually" control.
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ You speak │ -> │ Ava records │ -> │Home Assistant│ -> │ Ava plays │
│ wake word + │ │ sends audio │ │ speech │ │ voice │
│ command │ │ │ │ recognition │ │ reply │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
Detailed Flow:
- Standby: Ava continuously listens for wake word (local processing, no internet)
- Wake Detection: When wake word detected, plays prompt sound, starts recording
- Audio Transmission: Recording sent to Home Assistant via ESPHome protocol
- Speech Recognition: Home Assistant's voice assistant performs speech-to-text
- Intent Processing: Home Assistant understands intent and executes action
- Speech Synthesis: Home Assistant generates voice response
- Playback: Ava receives and plays voice response
| Topic | Description |
|---|---|
| LLM Integration | Claw Assistant — multi-turn tool calls, Ava device detection, voice intent map, ADB runbook, workspace persona, 50+ tools |
| Wake Word Engines | microWakeWord vs vsWakeWord — architecture, comparison, engine switching, visual feedback, stop words |
| Custom Wake Words | Import custom wake word models via in-app library or APK injection — microWakeWord and vsWakeWord formats |
| Voiceprint Recognition | On-device speaker identification — Manual mode (enrollment-based gating) and Automatic mode (passive learning) |
| Audio Event Detection | Local detection of household sounds — alarm, baby crying, doorbell, glass breaking, siren, cough, speech |
| Audio Configuration | Microphone settings, noise suppression, echo cancellation, gain, continuous conversation, subtitles, mute |
| Text to Speech | Standard vs Streaming TTS playback, whisper response, announcement, pipeline error i18n, recommended TTS engine |
| Settings Summary & Services | Complete settings reference, Home Assistant services, and FAQ |
Ava ships with two self-developed voice engine mods that run entirely on the Android device — no separate server, no cloud dependency for STT:
| Engine | Protocol | Port | Description |
|---|---|---|---|
| HA Edge TTS | Wyoming TTS | 10301 | Cloud-based TTS using Microsoft Edge TTS voices. 400+ voices in 40+ languages. Natural neural voices without API costs. |
| HA STT Engine | Wyoming STT | 10300 | Offline speech recognition using SenseVoice model. Supports zh / en / ja / ko / Cantonese. ~230MB model download. |
Both mods expose Wyoming protocol servers for Home Assistant auto-discovery via mDNS. Install them from the Mod Store — see the Mod Catalog for full details, configuration, and setup instructions.
Setup:
- Install HA Edge TTS and/or HA STT Engine from Settings -> Advanced -> Mod Store
- For STT, download the model (~230MB) in mod settings
- In Home Assistant, add the Wyoming Protocol integration
- Connect to the Ava device IP on port
10301(TTS) or10300(STT) - Select the engine in your voice assistant pipeline
The wake ripple and screen-edge glow can now be enabled or disabled independently. Users with a custom assistant feedback implementation can turn off Ava's built-in effects so multiple animations do not overlap.
Path: Ava Settings → Voice Config → Voice feedback colors
Enabling End voice session manually automatically restarts the voice service and registers a Just stop button under Home Assistant Controls. Pressing it while Ava is listening, processing, or speaking immediately terminates the current session and prevents the remaining response from playing. It can also be used in automations as the opposite of Manual Wake.
Path: Ava Settings → Voice Config → Voice replies → End voice session manually
Changing the wake-word model during an active conversation now ends the current Assist run before rebuilding the microphone pipeline. A cancelled session cannot play delayed TTS after the model change or restore processing state that has already ended. This protection applies when changing a wake word in Settings, selecting a model from the library, or changing wake-word configuration through Home Assistant.
Path: Ava Settings → Voice Config → Wake Word
Back to Home
- Quick-Start
- System-Requirements
- Voice-Control
- Chorus-Wake
- ESPHome-Encryption
- HA-Direct-Connection
- Browser
- Screensaver
- Floating-Windows
- Home-Launcher
- Home-Screen-Widgets
- Notification-Scenes
- Quick-Entity
- Sensors
- Backup
- Sendspin
- Bluetooth
- Voice-Messages-Calls
- Music-Playback
- Camera
- Screen-Control
- Intent-Launcher
- ADB-Commands
- Mod-Store
- Ava-Fleet