-
-
Notifications
You must be signed in to change notification settings - Fork 95
Open
Description
The problem
Since the last two ESPHome updates, 2025.6.0 and 2025,5,2, my Atom Echo only responds to one voice command after which it never responds again until the device is rebooted. I know it's not hung because I can press the button on the device and the log responds telling me that it's already listening
Which device are you using?
m5stack-atom-echo
Firmware Version
Firmware: 2025.6.0 (Jun 18 2025, 19:36:18)
Logs
INFO ESPHome 2025.6.0
INFO Reading configuration /config/esphome/m5ae-31b338.yaml...
INFO Generating C++ source...
INFO Updating https://github.com/espressif/[email protected]
INFO Updating https://github.com/espressif/[email protected]
INFO Compiling app...
Processing m5ae-31b338 (board: m5stack-atom; framework: espidf; platform: https://github.com/pioarduino/platform-espressif32/releases/download/53.03.13/platform-espressif32.zip)
--------------------------------------------------------------------------------
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
- framework-espidf @ 3.50302.0 (5.3.2)
- tool-cmake @ 3.30.2
- tool-esptoolpy @ 4.8.6
- tool-mklittlefs @ 3.2.0
- tool-ninja @ 1.7.1
- tool-riscv32-esp-elf-gdb @ 14.2.0+20240403
- tool-xtensa-esp-elf-gdb @ 14.2.0+20240403
- toolchain-esp32ulp @ 2.35.0-20220830
- toolchain-xtensa-esp-elf @ 13.2.0+20240530
Reading CMake configuration...
Dependency Graph
|-- noise-c @ 0.1.6
|-- ArduinoJson @ 6.18.5
|-- ESPMicroSpeechFeatures @ 1.1.0
|-- esp-audio-libs @ 1.1.4
Compiling .pioenvs/m5ae-31b338/src/main.cpp.o
Linking .pioenvs/m5ae-31b338/firmware.elf
RAM: [= ] 11.5% (used 37640 bytes from 327680 bytes)
Flash: [========= ] 88.5% (used 1624120 bytes from 1835008 bytes)
Building .pioenvs/m5ae-31b338/firmware.bin
Creating esp32 image...
Successfully created esp32 image.
esp32_create_combined_bin([".pioenvs/m5ae-31b338/firmware.bin"], [".pioenvs/m5ae-31b338/firmware.elf"])
SHA digest in image updated
Wrote 0x19c9a0 bytes to file /data/build/m5ae-31b338/.pioenvs/m5ae-31b338/firmware.factory.bin, ready to flash to offset 0x0
esp32_copy_ota_bin([".pioenvs/m5ae-31b338/firmware.bin"], [".pioenvs/m5ae-31b338/firmware.elf"])
========================= [SUCCESS] Took 16.98 seconds =========================
INFO Successfully compiled program.
INFO Connecting to 192.168.1.39 port 3232...
INFO Connected to 192.168.1.39
INFO Uploading /data/build/m5ae-31b338/.pioenvs/m5ae-31b338/firmware.bin (1624480 bytes)
Uploading: [============================================================] 100% Done...
INFO Upload took 6.35 seconds, waiting for result...
INFO OTA successful
INFO Successfully uploaded program.
INFO Starting log output from 192.168.1.39 using esphome API
INFO Successfully resolved m5ae-31b338 @ 192.168.1.39 in 0.000s
INFO Successfully connected to m5ae-31b338 @ 192.168.1.39 in 5.142s
INFO Successful handshake with m5ae-31b338 @ 192.168.1.39 in 0.112s
[11:15:25][I][app:137]: ESPHome version 2025.6.0 compiled on Jun 19 2025, 11:14:54
[11:15:25][C][wifi:613]: WiFi:
[11:15:25][C][wifi:434]: Local MAC: [redacted]
[11:15:25][C][wifi:439]: SSID: [redacted]
[11:15:25][C][wifi:442]: IP Address: 192.168.1.39
[11:15:25][C][wifi:446]: BSSID: [redacted]
[11:15:25][C][wifi:446]: Hostname: 'm5ae-31b338'
[11:15:25][C][wifi:446]: Signal strength: -44 dB ▂▄▆█
[11:15:25][C][wifi:455]: Channel: 1
[11:15:25][C][wifi:455]: Subnet: 255.255.255.0
[11:15:25][C][wifi:455]: Gateway: 192.168.1.1
[11:15:25][C][wifi:455]: DNS1: 192.168.1.11
[11:15:25][C][wifi:455]: DNS2: 192.168.1.71
[11:15:25][D][api.connection:1570]: Home Assistant 2025.6.1 (192.168.1.18) connected
[11:15:25][C][logger:211]: Logger:
[11:15:25][C][logger:211]: Max Level: DEBUG
[11:15:25][C][logger:211]: Initial Level: DEBUG
[11:15:25][C][logger:217]: Log Baud Rate: 115200
[11:15:25][C][logger:217]: Hardware UART: UART0
[11:15:25][C][logger:224]: Task Log Buffer Size: 768
[11:15:25][C][esp32_rmt_led_strip:250]: ESP32 RMT LED Strip:
[11:15:25][C][esp32_rmt_led_strip:250]: Pin: 27
[11:15:25][C][esp32_rmt_led_strip:255]: RMT Symbols: 192
[11:15:25][C][esp32_rmt_led_strip:283]: RGB Order: GRB
[11:15:25][C][esp32_rmt_led_strip:283]: Max refresh rate: 0
[11:15:25][C][esp32_rmt_led_strip:283]: Number of LEDs: 1
[11:15:25][C][template.select:065]: Template Select 'Wake word engine location'
[11:15:25][C][template.select:066]: Update Interval: 60.0s
[11:15:25][C][template.select:069]: Optimistic: YES
[11:15:25][C][template.select:069]: Initial Option: On device
[11:15:25][C][template.select:069]: Restore Value: YES
[11:15:25][C][gpio.binary_sensor:015]: GPIO Binary Sensor 'Button'
[11:15:25][C][gpio.binary_sensor:016]: Pin: GPIO39
[11:15:25][C][light:092]: Light 'M5Stack Atom Echo 31b338'
[11:15:25][C][light:094]: Default Transition Length: 0.0s
[11:15:25][C][light:094]: Gamma Correct: 2.80
[11:15:25][C][template.switch:079]: Template Switch 'Use listen light'
[11:15:25][C][template.switch:079]: Restore Mode: restore defaults to ON
[11:15:25][C][template.switch:057]: Optimistic: YES
[11:15:25][C][template.switch:079]: Template Switch 'timer_ringing'
[11:15:25][C][template.switch:079]: Restore Mode: always OFF
[11:15:25][C][template.switch:057]: Optimistic: YES
[11:15:25][C][factory_reset.button:011]: Factory Reset Button 'Factory reset'
[11:15:25][C][factory_reset.button:011]: Icon: 'mdi:restart-alert'
[11:15:25][C][i2s_audio.microphone:083]: Microphone:
[11:15:25][C][i2s_audio.microphone:083]: Pin: 23
[11:15:25][C][i2s_audio.microphone:083]: PDM: YES
[11:15:25][C][i2s_audio.microphone:083]: DC offset correction: YES
[11:15:25][C][psram:018]: PSRAM:
[11:15:25][C][psram:022]: Available: NO
[11:15:26][C][i2s_audio.speaker:114]: Speaker:
[11:15:26][C][i2s_audio.speaker:114]: Pin: 22
[11:15:26][C][i2s_audio.speaker:114]: Buffer duration: 60
[11:15:26][C][i2s_audio.speaker:120]: Timeout: 500 ms
[11:15:26][C][i2s_audio.speaker:128]: Communication format: std
[11:15:26][C][captive_portal:089]: Captive Portal:
[11:15:26][C][esphome.ota:073]: Over-The-Air updates:
[11:15:26][C][esphome.ota:073]: Address: 192.168.1.39:3232
[11:15:26][C][esphome.ota:073]: Version: 2
[11:15:26][C][safe_mode:018]: Safe Mode:
[11:15:26][C][safe_mode:019]: Boot considered successful after 60 seconds
[11:15:26][C][safe_mode:019]: Invoke after 10 boot attempts
[11:15:26][C][safe_mode:019]: Remain for 300 seconds
[11:15:26][D][esp32.preferences:142]: Writing 2 items: 2 cached, 0 written, 0 failed
[11:15:26][C][api:182]: API Server:
[11:15:26][C][api:182]: Address: 192.168.1.39:6053
[11:15:26][C][api:187]: Using noise encryption: YES
[11:15:26][C][http_request:013]: HTTP Request:
[11:15:26][C][http_request:013]: Timeout: 4500ms
[11:15:26][C][http_request:013]: User-Agent: ESPHome/2025.6.0 (https://esphome.io)
[11:15:26][C][http_request:013]: Follow redirects: YES
[11:15:26][C][http_request:013]: Redirect limit: 3
[11:15:26][C][http_request.idf:029]: Buffer Size RX: 512
[11:15:26][C][http_request.idf:029]: Buffer Size TX: 512
[11:15:26][C][mdns:122]: mDNS:
[11:15:26][C][mdns:122]: Hostname: m5ae-31b338
[11:15:26][C][micro_wake_word:064]: microWakeWord:
[11:15:26][C][micro_wake_word:065]: models:
[11:15:26][C][micro_wake_word:014]: - Wake Word: Okay Nabu
[11:15:26][C][micro_wake_word:014]: Probability cutoff: 0.97
[11:15:26][C][micro_wake_word:014]: Sliding window size: 5
[11:15:26][C][micro_wake_word:014]: - Wake Word: Hey Mycroft
[11:15:26][C][micro_wake_word:014]: Probability cutoff: 0.95
[11:15:26][C][micro_wake_word:014]: Sliding window size: 5
[11:15:26][C][micro_wake_word:014]: - Wake Word: Hey Jarvis
[11:15:26][C][micro_wake_word:014]: Probability cutoff: 0.97
[11:15:26][C][micro_wake_word:014]: Sliding window size: 5
[11:15:26][C][micro_wake_word:022]: - VAD Model
[11:15:26][C][micro_wake_word:022]: Probability cutoff: 0.50
[11:15:26][C][micro_wake_word:022]: Sliding window size: 5
[11:15:28][D][micro_wake_word:360]: Starting wake word detection
[11:15:28][D][micro_wake_word:378]: State changed from STOPPED to STARTING
[11:15:28][D][ring_buffer:034][mww]: Created ring buffer with size 3840
[11:15:28][D][micro_wake_word:261]: Inference task has started, attempting to allocate memory for buffers
[11:15:28][D][micro_wake_word:266]: Inference task is running
[11:15:28][D][micro_wake_word:378]: State changed from STARTING to DETECTING_WAKE_WORD
[11:16:20][I][safe_mode:042]: Boot seems successful; resetting boot loop counter
[11:16:20][D][esp32.preferences:142]: Writing 1 items: 0 cached, 1 written, 0 failed
Additional information
substitutions:
name: "m5ae-31b338"
friendly_name: M5Stack Atom Echo 31b338
packages:
base: 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: !secret m5ae_key
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
manual_ip:
static_ip: 192.168.1.39
subnet: 255.255.255.0
gateway: 192.168.1.1
dns1: 192.168.1.11
dns2: 192.168.1.71
domain: !secret dns_suffix
on_connect:
- delay: 5s # Gives time for improv results to be transmitted
http_request:
verify_ssl: false
micro_wake_word:
on_wake_word_detected:
then:
- media_player.speaker.play_on_device_media_file:
media_file: timer_finished_wave_file
announcement: true
- delay: 10ms
- wait_until:
- media_player.is_idle:
- speaker.is_stopped:
- voice_assistant.start:
wake_word: !lambda return wake_word;
media_player:
- id: !extend echo_media_player
on_idle:
then:
- delay: 1ms
I have tried removing some of the "additions" in my yaml e.g. the whole micro_wake_word section, the on_connect parameter, media_player section, but nothing helps and sometimes makes it worse and it doesn't respond at all.
bcutter and mwhdc
Metadata
Metadata
Assignees
Labels
No labels