Hey Yossi: a custom wake word for Home Assistant

Hey Yossi is a custom wake word for Home Assistant, trained on real recordings, in two builds: openWakeWord for the server and Pi, microWakeWord for ESPHome, Voice PE and Android. 95% recall in testing.

Daniel Rosehill AI

(23 Cheshvan 5787)

3 min read

Hey Yossi: a custom wake word for Home Assistant

"Hey Google" and "Alexa" are fine, but they're somebody else's names, and in a house that runs on Home Assistant they wake somebody else's cloud. I wanted a wake word of our own, and for reasons that need no explanation to anyone who has lived in Israel, it is "Hey Yossi".

There are now two "Hey Yossi" models on Hugging Face. They're trained on the same recordings but built for the two wake word engines Home Assistant users actually run:

  • Hey-Yossi-openWakeWord: for the Home Assistant server (the Wyoming openWakeWord add-on), a Raspberry Pi or the desktop. TFLite and ONNX files, about 200 KB each.

  • Hey-Yossi-microWakeWord: an int8, streaming 61 KB model that runs on the device, for ESPHome's micro_wake_word, Home Assistant Voice PE, and the Ava satellite app on Android.

Hugging Face Model danielrosehill/Hey-Yossi-openWakeWord A custom "Hey Yossi" wake word for openWakeWord, trained 2026-10-29 for a personal voice assistant. It is a small classifier on openWakeWord's frozen speech embeddings, so it runs in real time on any CPU, Raspberry Pi… ↓ 12Audio classificationCC-BY-NC-4.0Updated Oct 2026 View model on Hugging Face Hugging Face Model danielrosehill/Hey-Yossi-microWakeWord A custom "Hey Yossi" wake word for microWakeWord, trained 2026-10-29. It is a streaming, int8-quantised TFLite model of 61 KB. It runs on the device in: - Android: the Ava satellite app - ESPHome microwakeword - Home… ↓ 10Audio classificationCC-BY-NC-4.0Updated Oct 2026 View model on Hugging Face

Why two models?

I trained the openWakeWord model first. ESPHome satellites, Voice PE and phone satellites like Ava use microWakeWord instead, a different architecture that needs its own training run. openWakeWord listens on the server, so it covers anything that streams audio to Home Assistant. microWakeWord listens on the device and only wakes the pipeline when it hears the word.

How it was trained

There are no synthetic voices in either model. The positives are 185 real takes of "Hey Yossi" from the Wake-Words dataset, recorded by me and Hannah at a laptop desk, each copy augmented with room echo and background noise. The negatives are 90 deliberate near-misses ("Hey Rossi", "Oh Yossi", "Hey Siri") plus each engine's own large sets of general speech and noise. Each run took under 20 minutes on a T4.

Hugging Face Dataset danielrosehill/Wake-Words Real recordings of Jewish and Israeli first-name wake words, for training local wake word models (openWakeWord, microWakeWord) to use with Home Assistant Assist and on the desktop, in place of "Hey Siri" or "OK Google". ↓ 160Audio classificationCC-BY-4.0Updated Oct 2026 View dataset on Hugging Face

How well does it work?

On held-out takes it never trained on:

  • microWakeWord at its 0.97 cutoff catches 95% of plain "Hey Yossi" takes and all 12 takes of "Hey Yossi" followed by a command. It fired on only one of 20 near-misses (a bare "Yossi"), and on its 5.3 hours of dinner-party audio it had zero false accepts.

  • openWakeWord at a 0.8 threshold catches 86% and fires about 1.1 times an hour on general audio. Use 0.8: its scores top out around 0.88, so the usual 0.9 never fires.

These are first, personal models, and the weak spot is obvious in the misses: Hannah recorded far fewer takes than I did, and her Israeli-accented takes are the ones it misses. If your voice is nothing like either of ours, expect worse.

The next step: voice commands

The wake word is only the front door. I'm also recording a Voice Command Sentences dataset for a local voice command agent on my KDE desktop. It covers opening and switching apps, moving windows between desktops, volume, keyboard layout, plus "chatter" (things said near the mic that aren't commands at all), so the agent learns when *not* to act. The plan is a small on-device model that turns "Hey Yossi, move this to desktop 3" into an action without a round trip to the cloud. That's still in progress, and it will get its own post when it does something useful.

Hugging Face Dataset danielrosehill/Voice-Command-Sentences One speaker reading desktop voice commands for a KDE Plasma voice-command agent: launching, switching to and closing apps (Konsole, Kate, Dolphin, Kdenlive, Audacity), browser and terminal tabs, windows and virtual… ↓ 81Automatic speech recognitionCC-BY-4.0Updated Nov 2026 View dataset on Hugging Face

Both wake word models are CC-BY-NC-4.0, since the augmentation and negative data they were trained on carry mixed licences. Setup steps for Home Assistant, ESPHome and Ava are on each model card.

Daniel Rosehill

Daniel Rosehill

Agentic AI systems architect in Jerusalem. I design and build multi-agent systems, MCP tooling and speech-to-text pipelines, and write up what I learn along the way.

More about me at danielrosehill.com