M5Stack Atom Echo - no sound?

OK, I’ve searched and and tried everything I have found but…

Voice commands work but there is no sound. Volume on max, Is this another dead Atom?

Log when activated - “Okay Nabu: What time is it?”

Any ideas folks?

[16:32:02.218][D][micro_wake_word:325]: Detected ‘Okay Nabu’ with sliding average probability is 0.99 and max probability is 1.00
[16:32:02.218][D][voice_assistant:482]: State changed from IDLE to START_MICROPHONE
[16:32:02.218][D][voice_assistant:489]: Desired state set to START_PIPELINE
[16:32:02.221][D][micro_wake_word:370]: Stopping wake word detection
[16:32:02.221][D][voice_assistant:208]: Starting Microphone
[16:32:02.221][D][ring_buffer:034]: Created ring buffer with size 16384
[16:32:02.228][D][voice_assistant:482]: State changed from START_MICROPHONE to STARTING_MICROPHONE
[16:32:02.241][D][micro_wake_word:378]: State changed from DETECTING_WAKE_WORD to STOPPING
[16:32:02.241][D][voice_assistant:482]: State changed from STARTING_MICROPHONE to START_PIPELINE
[16:32:02.263][D][voice_assistant:229]: Requesting start
[16:32:02.267][D][voice_assistant:482]: State changed from START_PIPELINE to STARTING_PIPELINE
[16:32:02.274][D][voice_assistant:504]: Client started, streaming microphone
[16:32:02.282][D][voice_assistant:482]: State changed from STARTING_PIPELINE to STREAMING_MICROPHONE
[16:32:02.282][D][voice_assistant:489]: Desired state set to STREAMING_MICROPHONE
[16:32:02.283][D][voice_assistant:628]: Event Type: 1
[16:32:02.290][D][voice_assistant:631]: Assist Pipeline running
[16:32:02.298][D][voice_assistant:628]: Event Type: 3
[16:32:02.299][D][voice_assistant:650]: STT started
[16:32:02.305][D][light:091]: ‘M5Stack Atom Echo’ Setting:
[16:32:02.309][D][light:115]: Red: 0%, Green: 0%, Blue: 100%
[16:32:02.312][D][light:165]: Effect: ‘Slow Pulse’
[16:32:02.319][D][micro_wake_word:274]: Inference task is stopping, deallocating buffers
[16:32:02.330][D][micro_wake_word:279]: Inference task is finished, freeing task resources
[16:32:02.331][D][micro_wake_word:378]: State changed from STOPPING to STOPPED
[16:32:03.460][D][voice_assistant:628]: Event Type: 11
[16:32:03.473][D][voice_assistant:831]: Starting STT by VAD
[16:32:04.586][D][voice_assistant:628]: Event Type: 12
[16:32:04.588][D][voice_assistant:835]: STT by VAD end
[16:32:04.588][D][voice_assistant:482]: State changed from STREAMING_MICROPHONE to STOP_MICROPHONE
[16:32:04.589][D][voice_assistant:489]: Desired state set to AWAITING_RESPONSE
[16:32:04.598][D][light:091]: ‘M5Stack Atom Echo’ Setting:
[16:32:04.601][D][light:115]: Red: 0%, Green: 0%, Blue: 100%
[16:32:04.601][D][light:165]: Effect: ‘Fast Pulse’
[16:32:04.606][D][voice_assistant:482]: State changed from STOP_MICROPHONE to STOPPING_MICROPHONE
[16:32:04.612][D][voice_assistant:482]: State changed from STOPPING_MICROPHONE to AWAITING_RESPONSE
[16:32:04.625][D][voice_assistant:628]: Event Type: 4
[16:32:04.630][D][voice_assistant:667]: Speech recognised as: “What time is it?”
[16:32:04.634][D][voice_assistant:628]: Event Type: 5
[16:32:04.634][D][voice_assistant:672]: Intent started
[16:32:04.661][D][voice_assistant:628]: Event Type: 6
[16:32:04.665][D][voice_assistant:628]: Event Type: 7
[16:32:04.670][D][voice_assistant:725]: Response: “4:32 PM”
[16:32:04.676][D][voice_assistant:628]: Event Type: 8
[16:32:04.677][D][voice_assistant:747]: Response URL: “http://192.168.1.84:8123/api/tts_proxy/OueohWyFRrQrmwxPZajs-g.wav
[16:32:04.677][D][voice_assistant:482]: State changed from AWAITING_RESPONSE to STREAMING_RESPONSE
[16:32:04.677][D][voice_assistant:489]: Desired state set to STREAMING_RESPONSE
[16:32:04.682][D][voice_assistant:628]: Event Type: 2
[16:32:04.683][D][voice_assistant:770]: Assist Pipeline ended
[16:32:04.690][D][light:091]: ‘M5Stack Atom Echo’ Setting:
[16:32:04.694][D][light:079]: Brightness: 100%
[16:32:04.702][D][light:115]: Red: 0%, Green: 0%, Blue: 100%
[16:32:04.703][D][light:165]: Effect: ‘None’
[16:32:04.707][D][media_player:084]: ‘M5Stack Atom Echo’ - Setting
[16:32:04.707][D][media_player:091]: Media URL: http://192.168.1.84:8123/api/tts_proxy/OueohWyFRrQrmwxPZajs-g.wav
[16:32:04.717][D][media_player:097]: Announcement: yes
[16:32:04.727][D][light:091]: ‘M5Stack Atom Echo’ Setting:
[16:32:04.734][D][light:079]: Brightness: 100%
[16:32:04.739][D][light:115]: Red: 0%, Green: 0%, Blue: 100%
[16:32:04.751][D][speaker_media_player:410]: State changed to ANNOUNCING
[16:32:05.359][D][speaker_media_player.pipeline:114]: Reading WAV file type
[16:32:05.375][D][ring_buffer:034][ann_read]: Created ring buffer with size 6000
[16:32:05.400][D][speaker_media_player.pipeline:124]: Decoded audio has 2 channels, 16000 Hz sample rate, and 16 bits per sample
[16:32:05.404][D][i2s_audio.speaker:102]: Starting
[16:32:05.410][D][i2s_audio.speaker:106]: Started
[16:32:05.410][D][ring_buffer:034][speaker_task]: Created ring buffer with size 3840
[16:32:07.693][D][i2s_audio.speaker:111]: Stopping
[16:32:07.698][D][i2s_audio.speaker:116]: Stopped
[16:32:07.701][D][light:091]: ‘M5Stack Atom Echo’ Setting:
[16:32:07.705][D][light:079]: Brightness: 60%
[16:32:07.711][D][light:115]: Red: 100%, Green: 89%, Blue: 71%
[16:32:07.711][D][speaker_media_player:410]: State changed to IDLE
[16:32:07.711][D][voice_assistant:352]: Announcement finished playing
[16:32:07.720][D][voice_assistant:482]: State changed from STREAMING_RESPONSE to RESPONSE_FINISHED
[16:32:07.722][D][voice_assistant:489]: Desired state set to RESPONSE_FINISHED
[16:32:07.724][D][voice_assistant:482]: State changed from RESPONSE_FINISHED to IDLE
[16:32:07.725][D][voice_assistant:489]: Desired state set to IDLE
[16:32:07.725][D][micro_wake_word:360]: Starting wake word detection
[16:32:07.725][D][light:091]: ‘M5Stack Atom Echo’ Setting:
[16:32:07.737][D][light:079]: Brightness: 60%
[16:32:07.742][D][light:115]: Red: 100%, Green: 89%, Blue: 71%
[16:32:07.746][D][micro_wake_word:378]: State changed from STOPPED to STARTING
[16:32:07.773][D][micro_wake_word:262]: Inference task has started, attempting to allocate memory for buffers
[16:32:07.775][D][micro_wake_word:267]: Inference task is running
[16:32:07.775][D][micro_wake_word:378]: State changed from STARTING to DETECTING_WAKE_WORD
[16:32:07.795][D][ring_buffer:034][mww]: Created ring buffer with size 3840

Can the M5 access the file?

Hummmm good point lol. That file doesnt exist? So, what is going on, any ideas?

And, wav files are in: \192.168.1.84\config\tts

So, its in some config file…

I’m not sure how long that link stays active. I would make a new voice command and check the newly created link. If still no file verify your TTS provider is working

Is 192.168.1.84 your HA server?

No. The audio response is sent as a sound file to the device. The device downloads and plays it. Generally you can access same link and play file as vetification

Ah ha I see. The original path, /api/… in the logs doesn’t exist on my RPi either. As I said my was files are at \192.168.1.84\config\tts

192.168.1.84 is indeed my HA server.

TTS all okay, works via media player on the PC. I wonder if it’s a legacy issue and/or there has been a breaking change where the wav files are located?

I’m thinking to uninstall voice and start again, see if that fixes the issue? But the path must be in some config file somehwere, looking now…

api always exist. Not as a folder but as weblink

I think a get request to /api/states will show this

Some people have vlans so I want to be sure the vlan the esp is using can access that weblink?

Next, play music file to test audio works

Then go to device info of device. If you select the media player there you can send voice announcement to device directly

Atom echo is a bit touchy. The original yaml with arduino worked well for me but you may need to flash via usb(not OTA) and maybe a few times. I recently modded my units to go into some usb speaker(giving it larger speaker) but weirdly had difficulty getting them to work because I used esphome yaml that used esp-idf instead of arduino. In the end I believe flashing via usb fixed it but it took more effort than initial install. I’m actually working another unit later and will take notes to document this to make this easier in future.

Right will have a look, but will be Thursday - need to leave it alone now or I’ll get moaned at lol. Thanks for your help, I’ll report back when attempted.

this yaml worked for me

1 Like

Update: Atom is still doing the same and have used code above, was the same I has installed prior but still no voice. Have completely reset via usb a couple of times but no change.

Any further suggestions?

try loading using usb connection not wireless if not tried already.

Do you have error message in log when try playback?

This is standard atom echo not the newer revised version atom echo(like aqua color)?

are you sure voice assistant setup in HA? can you get voice response in your browser?

I found probablilty for the wake words were too high so they werent being detected well. I added below

micro_wake_word:
  on_wake_word_detected:
    - micro_wake_word.stop:
    - media_player.volume_set:
        id: echo_media_player
        volume: 1.0
    - voice_assistant.start:
        wake_word: !lambda return wake_word;
  vad:
  models:
    - model: hey_jarvis
      probability_cutoff: 0.85    
    - model: alexa
      probability_cutoff: 0.85 

did you try sending announcement to device directly or playing music?

try loading using usb connection not wireless if not tried already Yes, done via USB

Do you have error message in log when try playback? No errors in log

This is standard atom echo not the newer revised version atom echo(like aqua color)? The original, bought as soon as they came out

are you sure voice assistant setup in HA? can you get voice response in your browser? - all working

Have updated as you said, but still no response. I wonder if the speaker is dead? I did also have another atom but that died, and looking online they don’t appear to be reliable.

I may just order another and see how that goes…

Maybe it is dead.
Last check you can add a button and set a command on button that plays the timer wav file listed as a file under media player in the yaml

As an aside I took some usb unpowered speakers and directly connected the atom speaker to speaker inside of it. Sound is very clear/crisp/solid. Almost human sounding voice verse tin rattley trash from its normal speaker.

I am using these in bedrooms. Sound actually fills room and great for announcing/personal music

https://www.ebay.com/itm/297380362626

1 Like

Just tried to play a message thru media player, works fine on google and amazon assistants, but when trying on the atom it says ‘nothing playing’. Hummm.

What is “it”?

it = the message at the bottom of the screen on media player within HA. Anyways, just ordered Atom, so will see what happens when that arrives, this will hopefully clarify if an Atom will work on my HA.

Even though the sound quality of the speaker from the Atom Echo is really not good, it should work with HA.