M5 Atom Echo wake word not working

I just followed the instructions in the $13 voice assistant for Home Assistant article and wake word detection is not working nor do I see the “Use wake word” binary sensor on my device. I even tried rebooting Home Assistant.

Here is my config.

substitutions:
  name: "living-room-atom-echo"
  friendly_name: Living Room Atom Echo
packages:
  m5stack.atom-echo-voice-assistant: github://esphome/firmware/voice-assistant/m5stack-atom-echo.yaml@main
esphome:
  name: ${name}
  name_add_mac_suffix: false
  friendly_name: ${friendly_name}
api:
  encryption:
    key: [REDACTED]


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

I just noticed that the device page says “Firmware: 2023.9.3 (Oct 13 2023, 11:16:16)” and according to the GitHub release notes it looks like wake word detection support is coming with 2023.10.0 which hasn’t been released yet.

Yeah we have to be patient :rofl:

It would be nice if “ESPHome 2023.10” was mentioned in the Required Material. I just spent half a day trying to work out why I was getting 'dict' object has no attribute 'move_to_end'.

That’s because if you follow those steps you will use the web flasher and that will use the 2023.10 beta version of ESPHome.
Nowhere in that guide it’s mentioned you need to flash using your local ESPHome software

Or use the 2023.10 beta, or the online flasher

my try with Beta2 is not successful I get some malloc errors all time in logs once booted :frowning:

I just noticed yesterday that the firmwares of these devices in github were updated two days ago so it’s definitely in active development mode by the team right now.

I’m excited to use the wake word stuff, too.

I guess I’m confused about the process then. I followed the instructions and after “Do you want to set up ESPHome” it asks for server details rather than listing the echo as shown in the documentation. If I then go to the ESPHome addon interface, it allows me to adopt, but wants to then update. If I let it update (which obviously now I shouldn’t), it causes the errors.

I have two Echo’s. I tried the process on the second one and that works - I see the “Use wake word” entity. But it I delete the first and try again, I still don’t see that entity for it. So it;s working for one but not the other.

EDIT: I put a dummy ESPHome project onto the first Echo, then did a “Clean build files” and deleted it from the ESPHome addon UI and deleted it from the ESPHome integration. Then I set it all up again, and now it works and shows the “Use wake word” entity. It also correctly listed the Echo to add to HA this time, whereas it didn’t for the 2nd Echo. I noticed that when it wasn’t working, the ESPHome integration still thought it was on an older ESPHome despite the flash being successful.

Anyone get this working? I flashed my echo that came today using the ESPHome page and it’s in 2023.10.0b2 now but wake word isn’t working. I see the device in Home Assistant under the ESPHome integration and my wake word is set to “hey Jarvis”. I am also using openwakeword docker container with hey_jarvis as the preloaded word.

There is a bug report now: Year of the Voice - Chapter 4: Wake words - #120 by cavaco

I have tried the recomended satellite with Raspi 3 , and anker s330 , and it works fine , so far no wake work freeze , it seams to be related only to ATOM

I followed those instructions and it actually worked for me. I originally set it up with “hey Jarvis”, one of the predefined wake words; and then I trained my own “okay Donnie” using the online notebook! The “hey Jarvis” works better but both of them work. It just didn’t always recognize the “Okay Donnie”.

I did notice that if I left the Atom Echo plugged in for a long time it eventually stopped listening and I’d have to restart it. You can see the wake word requests in the voice assistant area on home assistant. The voice assistant debugger is invaluable in this case.

By the way, I only used the in-browser programming option to write the firmware because I don’t actually have ESPHome 2023.10+ installed yet, I’m running on the official stable release which is 2023.9.3, at the moment. It works but I cannot re-flash it locally because likely much of the terminology in the new YAML hasn’t been officially released yet.

Also using this little trick was nice to be able to hear how the recordings sound:

Edit the general configuration:

  • Access the config folder and open the configuration.yaml file.
  • Enter the following text:
assist_pipeline:
   debug_recording_dir: /share/assist_pipeline

Just make sure you don’t leave it on, it saves a lot of wave files. :stuck_out_tongue:

Dec 6…

EDIT – Reflashed, and all OK

I had 2 Atom Echos working just fine, until about 2 weeks ago, and I recall briefly seeing a quick notification about firmware ? Currently 3 entities in each device are disabled: “word”, “light”, and “factory reset”. I am also unable to update firmware via ESPHome.

Is ESPHome no longer supporting these ?

One fo my devices has
Firmware: 2023.11.2 (Nov 20 2023, 19:32:38)

Cheers

Having similar issues, mine i can never git it to blink blue, the “assist in progress” is always off, i can confirm the button is working.

Make sure you have your correct network path information in Settings>System>Network. It fixed my issues of freezing after one command and no voice response.