#M5Stack Atom Echo: Wake word only works once, then stops responding

1 messages · Page 1 of 1 (latest)

viral oxide
#

Hey there,

I've already created a post in the forum (https://community.home-assistant.io/t/wake-word-engine-set-to-home-assistant-only-works-once-then-stops-responding/866285), but seems nobody had an idea yet, so I'm trying my luck here:

I’ve successfully set up and m5stack Atom Echo using this guide: https://www.home-assistant.io/voice_control/thirteen-usd-voice-remote/

My assist pipeline is local only, please see pics of it and my echo attached.

Versions:
Core: 2025.3.3
Supervisor: 2025.03.3
Operating System: 15.0
Frontend: 20250306.0

Issue:
When I set the “Wake word engine location” to “On device”, I can use “OK Nabu”, the LED turns blue, I can say a command and it gets executed. After that, the LED goes back to white and I can say “OK Nabu” again.

When I set the “Wake word engine location” to “In Home Assistant”, I can use “OK Nabu”, the LED turns blue, I can say a command and it gets executed. After that, the LED goes to a light blue/cyan and it stops responding to “OK Nabu”… No matter how long I wait, it never responds again.
If I power cycle it, it still lights up in cyan. I wait for it to be back available (~1min) and it responds to “OK Nabu” again, but again only one time; after that it’s again unresponsive…

Any ideas?

I've crawled through the existing topics here a bit and found this one: https://discord.com/channels/330944238910963714/1287619920594468885
Sadly that one also has never fixed it?

Thanks and greetings,

Andy!

viral oxide
#

I had two ideas already, but I can't validate them without building the ESPHome config myself. And this currently seems still impossible.
The ideas:

  • My WiFi is hidden, maybe that is an issue? However, why would it work with on device detection but not with detection on HA... To fix it, I need to add fast_connect to the config
  • My IoT devices are in their own subnet, but HA sits in both. So this has never been an issue for any device just yet. It's just an idea that somehow the Echo might get the wrong IP from HA (the one from the subnet it's not in) and can't connect to it? For that, I need to enable debug in the config...

Sadly building the ESPHome config is still (2025.2.2 & 2025.3.0) impossible... If you just try to build it, you run into this error: https://community.home-assistant.io/t/error-when-updating-voice-assistant-pe-to-2025-2-0/850345
You can uncomment rmt_channel to fix it, but if you do, you run into this one: https://github.com/esphome/firmware/issues/286
You can fix that by pinning the IDF versions (which is not recommended). If you do that, you have to enable the rmt_channel again.
If you do that, you run into a hell lot more compiling errors (which is probably related to the wrong IDF version), so I stopped...

Is there really still no way to build it locally???

Overall, that m5stack atom echo solution has been an absolute nightmare for me and money on three wasted Echos...

still axle
viral oxide
#

Hrm, if I install it via the page you linked, it tries to install "m5stack.atom-echo-wake-word-voice-assistant 25.2.1". Did that, added it to HA but the entity to select a wake word is deactivated. Am I missing something?

#

It feels like the same firmware as I had before. Also, the "The YAML configuration is on GitHub" link on that page points to the same repo with the old firmware

#

It even is the same firmware number (if I compare the old screen i posted with this one now): 25.2.1

still axle
viral oxide
#

ok, reason I wanted to use the wakeword on HA is that I wanted something else than "OK Nabu". So either I would love to bake something else in (so would love to get a working yaml I can add to my ESPHome Builder) or fix that the detection only works once (so my initial reported issue)

still axle
#

microwaveword has stock options of
okay nabu / hey jarvis / hey mycroft / alexa
but you have to adopt the device and change it in the yaml (i dont think the atom echo doesnt have the memory for all of them to be stored at once)

viral oxide
#

or just a yaml that can be compiled. can even be on my local machine, I don't mind :p so to be able to make changes to it, like enabling debug and fast_connect

#

doesn't need to be inside the builder in HA

viral oxide
still axle
#

if you adopt the device in the esphome builder you should get access to it

#

in the substitutions section there is
micro_wake_word_model: okay_nabu # alexa, hey_jarvis, hey_mycroft are also supported

viral oxide
#

ah yeah, I totally forgot about that adopting function! thx

still axle
viral oxide
#

just did that. it doesn't have the full config, but it points to it:

substitutions:
  name: m5stack-atom-echo-fdb168
  friendly_name: M5Stack Atom Echo fdb168
packages:
  m5stack.atom-echo-wake-word-voice-assistant: github://esphome/wake-word-voice-assistants/m5stack-atom-echo/m5stack-atom-echo.yaml@main
esphome:
  name: ${name}
  name_add_mac_suffix: false
  friendly_name: ${friendly_name}
api:
  encryption:
    key: hwIm1rSD+I+O7FdoMTVUQkdfh7xwYxp+mlVb1d4hkAo=


wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
#

I'll give that a look and try, thanks so far!

#

will report back

still axle
#

if in the substituions section you should be able to add
micro_wake_word_model: alexa for example and it should replace the one in the package

viral oxide
#

jepp ^^

#

trying that rn

still axle
#

else you can instead of pulling the package you can go grab the code and merge it with your existing yaml but then it wouldnt auto update if any changes were made in the repo

viral oxide
#

yeah, I know. thanks though! just compiled and installed! testing...

#

ah wait... adding fast_connect first...

#

awesome, that works! thanks a ton!!

still axle
#

no worries, good luck with it!

#

atom echo is a great little device for starting to mess around with voice

pallid onyx
#

I'm running this same issue: my custom wake word works flawlessly, but only once. Then the LED switches to light blue and it becomes unresponsive to the wake word until i press the button.

Should I just avoid custom wake words for now?

still axle
pallid onyx
#

Ok, understood, so only recommended for users with a deeper familiarity with the toolchain

still axle