2
FAQ
MichalZaniewicz edited this page 2026-09-10 14:25:42 +02:00

FAQ

Which wake words are supported?

alexa and okay_nabu, both on-device via micro_wake_word. You can swap in other microWakeWord models by editing the micro_wake_word: block in base/core.yaml.

Does it need the cloud?

Only as much as your Assist pipeline does. The wake word runs entirely on the device. Speech-to-text, the conversation agent and text-to-speech are whatever you assign in Home Assistant, which can be fully local.

My Home Assistant only serves HTTPS. Does that matter?

Yes. If the certificate does not cover the LAN address the device connects to, the device cannot fetch announcements or text-to-speech and the assistant stalls after the wake word, with Failed to verify certificate in the log. Point the Home Assistant Internal URL at http://<ip>:8123, or terminate TLS at a reverse proxy and keep the built-in HTTP server plain. See Troubleshooting.

Can I interrupt a reply by saying "stop"?

Not reliably on this board. It has no acoustic echo cancellation reachable from stock ESPHome, so while a reply is playing the mic hears the speaker far louder than you, and a "stop" wake word is detected only weakly and too late. The feature was tried and removed. See Audio architecture.

Can I use my own boot sound?

Yes. Point the boot_sound_file substitution at any URL or local MP3, FLAC or WAV in your thin config. The board resamples playback to 16 kHz mono, so a small 16 kHz mono file sounds the same as a large stereo one on this speaker. See Configuration.

Why is the core pulled from GitHub instead of being one file?

So you keep only a small config (waveshare-va.yaml) with your settings, and the maintained core is shared. To update, you bump one ref: and rebuild. If you prefer a fully local copy, download base/core.yaml and include it directly instead of using the packages: block.

How do I pin a version so updates never surprise me?

The example config already pins the v1.0.0 tag. A pinned tag never moves, so builds are reproducible. Bump the ref: to a newer tag when you want to update. See Installation.

Can I run several of these?

Yes. Give each a unique name in its thin config. Each becomes its own device and its own voice satellite in Home Assistant.

Is Bluetooth audio (A2DP) possible?

No. The ESP32-S3 has BLE only, not Bluetooth Classic, so there is no A2DP sink.

Can I read the battery level?

Effectively no. The battery divider needs a 0 Ohm resistor soldered, and enabling it makes the camera unusable. Treat battery monitoring as unavailable. See Hardware.

The three buttons do volume and play-pause. Can I change them?

Yes, in the binary_sensor: button handlers in base/core.yaml. The BOOT button (GPIO0) is also free to use at runtime if you want a fourth function.

Is the API encrypted?

Not by default, since this is a LAN-only device. You can enable encryption in base/core.yaml and add the key to secrets.yaml. See Configuration.