#Ok, no problem

1 messages · Page 1 of 1 (latest)

sleek linden
naive topaz
#

is this a new one ?

sleek linden
#

Yeah

#

But give it a once over, I'm good at mistakes

#

So I don't really know what I'm talking about, but I noticed the stock yaml is inconsistent in how it calls for voice assistant to start. I used to have the same problem, and now I don't. I made a lot of changes to my yaml though for completely unrelated things, but one of the things I did change was make the calls to start consistent.

#

Maybe that's the problem, maybe not.

naive topaz
#

Hmm, worked once , not again

#

[11:02:03][D][voice_assistant:422]: State changed from STOPPING_MICROPHONE to AWAITING_RESPONSE
[11:02:04][D][voice_assistant:529]: Event Type: 4
[11:02:04][D][voice_assistant:557]: Speech recognised as: " Turn on backyard."
[11:02:04][D][voice_assistant:529]: Event Type: 5
[11:02:04][D][voice_assistant:562]: Intent started
[11:02:04][D][voice_assistant:529]: Event Type: 6
[11:02:04][D][voice_assistant:529]: Event Type: 7
[11:02:04][D][voice_assistant:585]: Response: "Turned on light"
[11:02:04][D][light:036]: 'M5Stack Atom Echo 9d86ac' Setting:
[11:02:04][D][light:051]: Brightness: 100%
[11:02:04][D][light:059]: Red: 0%, Green: 0%, Blue: 100%
[11:02:04][D][light:109]: Effect: 'None'
[11:02:04][D][voice_assistant:529]: Event Type: 2
[11:02:04][D][voice_assistant:619]: Assist Pipeline ended
[11:02:04][D][i2s_audio.speaker:161]: Starting I2S Audio Speaker
[11:02:04][D][i2s_audio.speaker:164]: Started I2S Audio Speaker
[11:02:04][D][i2s_audio.speaker:167]: Stopping I2S Audio Speaker
[11:02:04][D][i2s_audio.speaker:178]: Stopped I2S Audio Speaker
[11:02:04][D][light:036]: 'M5Stack Atom Echo 9d86ac' Setting:
[11:02:04][D][light:051]: Brightness: 60%
[11:02:04][D][light:059]: Red: 100%, Green: 89%, Blue: 71%

#

Which part of the yaml makes it start listening again ?

sleek linden
#

is the switch for use wake word on?

#

It's handled internally through "start_continuous"

#

I think it's broken, internally

#

as long as "use wake word" is on, and "assist in progress" is off, it should start the loop again after doing the response

naive topaz
sleek linden
#

on the entity itself for the echo

naive topaz
#

yes it is on, just checked

sleek linden
#

and the "assist in progress" sensor is off?

naive topaz
#

yes, it is off

sleek linden
#

so try this

#

turn wake word off

#

then back on

naive topaz
#

I did

sleek linden
#

is it scrolling now?

naive topaz
#

no

sleek linden
#

hold down the top button while watching the logs, should be about 10 seconds and you'll see movement

naive topaz
#

which top button ?

sleek linden
#

on the echo

naive topaz
#

INFO Processing expected disconnect from ESPHome API for m5stack-atom-echo-9d86ac @ 10.1.0.234
WARNING Disconnected from API
INFO Successfully connected to m5stack-atom-echo-9d86ac @ 10.1.0.234 in 3.184s
INFO Successful handshake with m5stack-atom-echo-9d86ac @ 10.1.0.234 in 0.288s
[11:14:06][D][voice_assistant:422]: State changed from IDLE to START_MICROPHONE
[11:14:06][D][voice_assistant:428]: Desired state set to WAIT_FOR_VAD
[11:14:06][D][light:036]: 'M5Stack Atom Echo 9d86ac' Setting:
[11:14:06][D][light:051]: Brightness: 60%
[11:14:06][D][light:059]: Red: 100%, Green: 89%, Blue: 71%
[11:14:06][D][esp-idf:000]: E (9186) I2S: i2s_driver_install(2026): I2S set clock failed

#

wait but it started scrolling

sleek linden
#

yeah it should scroll a loop

#

does it stop when you give it a command again

naive topaz
#

I gave it command that it didn't understand, then stopped

#

now it's stuck on this:

[11:16:46][D][i2s_audio.speaker:164]: Started I2S Audio Speaker
[11:17:26][D][i2s_audio.speaker:167]: Stopping I2S Audio Speaker
[11:17:26][D][i2s_audio.speaker:178]: Stopped I2S Audio Speaker
[11:17:26][D][light:036]: 'M5Stack Atom Echo 9d86ac' Setting:
[11:17:26][D][light:051]: Brightness: 60%
[11:17:26][D][light:059]: Red: 100%, Green: 89%, Blue: 71%

sleek linden
#

Alright. Push that top button for 1 second then release and see if it starts back up

#

doing that should run this part of the yaml under binary_sensor:

                - delay: 1s
                - script.execute: reset_led
                - script.wait: reset_led
                - voice_assistant.start_continuous:```
naive topaz
#

[11:16:46][D][i2s_audio.speaker:164]: Started I2S Audio Speaker
[11:17:26][D][i2s_audio.speaker:167]: Stopping I2S Audio Speaker
[11:17:26][D][i2s_audio.speaker:178]: Stopped I2S Audio Speaker
[11:17:26][D][light:036]: 'M5Stack Atom Echo 9d86ac' Setting:
[11:17:26][D][light:051]: Brightness: 60%
[11:17:26][D][light:059]: Red: 100%, Green: 89%, Blue: 71%
[11:19:07][D][binary_sensor:036]: 'Button': Sending state ON
[11:19:07][I][ota:117]: Boot seems successful, resetting boot loop counter.
[11:19:07][D][esp32.preferences:114]: Saving 1 preferences to flash...
[11:19:07][D][esp32.preferences:143]: Saving 1 preferences to flash: 0 cached, 1 written, 0 failed
[11:19:08][D][binary_sensor:036]: 'Button': Sending state OFF
[11:19:09][D][light:036]: 'M5Stack Atom Echo 9d86ac' Setting:
[11:19:09][D][light:051]: Brightness: 60%
[11:19:09][D][light:059]: Red: 100%, Green: 89%, Blue: 71%

sleek linden
#

scrolling or still just stopped there?

naive topaz
#

stopped

sleek linden
#

hmm it didnt' signal the stop and then start

naive topaz
#

I tried again, but it stopped at the same point

sleek linden
#

share the logs again, starting with button on

naive topaz
#

[11:24:27][D][binary_sensor:036]: 'Button': Sending state ON
[11:24:28][D][binary_sensor:036]: 'Button': Sending state OFF
[11:24:29][D][light:036]: 'M5Stack Atom Echo 9d86ac' Setting:
[11:24:29][D][light:051]: Brightness: 60%
[11:24:29][D][light:059]: Red: 100%, Green: 89%, Blue: 71%

sleek linden
#

so reset_led is executing

#

voice_assistant.stop: is not

#

I think whatever is happening internally with start_continuous is broken

#

There's only 1 other thing I can think to try, which is to change the platform

#

sec

naive topaz
#

what do you mean ?

sleek linden
#

I mean framework. At the top of the yaml you'll see it's framework type esp-idf

#

It can also be run as type arduino, with some other tweaks

#

Changing that will make it interpret/run code a little differently.

naive topaz
#

Is the problem with HA code?

#

Or is it just this device ?

sleek linden
#

with the esp code

#

yeah jsut the device

#

I don't know that, it's a hunch

#

Alright this changes the platform to arduino. In arduino there's no such thing as "speaker" so we have to create a media_player and tell it to use that instead. The other changes are related to that.

#

All the original stuff is just commented out so you can see where the changes are.

#

You'll see it will add a media_player entity to echo, but you can't use it as a generic media player... it won't play anything while wake word is on.

naive topaz
#

do I need to reboot HA after Yaml change ?

sleek linden
#

no

#

if you watch the entity page for your echo in a different window you'll actually see the media player pop in

#

after installing the yaml and the echo reboots

naive topaz
#

it worked once again

#

then stopped at the same point

sleek linden
#

Alright, sorry I don't know then. You may want to take the yaml all the way back to orginal and see if the people on the esphome discord that are smarter than me have any ideas

naive topaz
#

ok, thank you for your time, really appreciate trying to help

sleek linden
#

You're welcome, sorry it didnt' work out.

naive topaz
#

So, besides Atom Echo, what are some devices people use for this? Is there something like a nice standalone speaker that works ?

sleek linden
#

I haven't used it, don't know anybody who has. I don't know that it doesn't just have the same problem.

naive topaz
#

Hmm, you would think someone would jump on this and developed something

sleek linden
#

oh something I forgot to ask, if you still have that arduino framework on the echo... when you press that top button for at least 1/4 second and then release, it should stop voice assist, and then restart voice assist

naive topaz
#

[11:57:04][D][binary_sensor:036]: 'Button': Sending state ON
[11:57:06][D][binary_sensor:036]: 'Button': Sending state OFF
[11:57:07][D][light:036]: 'M5Stack Atom Echo 9d86ac' Setting:
[11:57:07][D][light:051]: Brightness: 60%
[11:57:07][D][light:059]: Red: 100%, Green: 89%, Blue: 71%

sleek linden
#

It should look like this

[10:56:58][D][binary_sensor:036]: 'Button': Sending state OFF
[10:56:58][D][voice_assistant:522]: Signaling stop...
[10:56:58][D][voice_assistant:422]: State changed from STREAMING_MICROPHONE to STOP_MICROPHONE
[10:56:58][D][voice_assistant:428]: Desired state set to IDLE
[10:56:59][D][voice_assistant:529]: Event Type: 0
[10:56:59][E][voice_assistant:656]: Error: no_wake_word - No wake word detected
[10:56:59][D][voice_assistant:522]: Signaling stop...
[10:56:59][D][voice_assistant:422]: State changed from STOP_MICROPHONE to STOP_MICROPHONE
[10:56:59][D][voice_assistant:428]: Desired state set to IDLE
[10:56:59][D][voice_assistant:422]: State changed from STOP_MICROPHONE to STOPPING_MICROPHONE
[10:56:59][D][light:036]: 'Atom Echo Office' Setting:
[10:56:59][D][light:051]:   Brightness: 100%
[10:56:59][D][light:059]:   Red: 100%, Green: 0%, Blue: 0%
[10:56:59][D][voice_assistant:529]: Event Type: 2
[10:56:59][D][voice_assistant:619]: Assist Pipeline ended
[10:56:59][D][voice_assistant:422]: State changed from STOPPING_MICROPHONE to IDLE
[10:56:59][D][light:036]: 'Atom Echo Office' Setting:
[10:56:59][D][light:051]:   Brightness: 60%
[10:56:59][D][light:059]:   Red: 100%, Green: 89%, Blue: 71%
[10:57:00][D][light:036]: 'Atom Echo Office' Setting:
[10:57:00][D][light:051]:   Brightness: 60%
[10:57:00][D][light:059]:   Red: 100%, Green: 89%, Blue: 71%
[10:57:00][D][voice_assistant:422]: State changed from IDLE to START_PIPELINE
[10:57:00][D][voice_assistant:428]: Desired state set to START_MICROPHONE```
naive topaz
#

It always stops at the same point, with both platforms

sleek linden
#

see how after my button press it reads "signaling stop"

naive topaz
#

yes, how come I don't get that ?

sleek linden
#

Mine is on arduino and that works

#

i forgot to check that with yours after chaning to arduino

#

My guess as to why it didn't work for you... you'll see these commands in the yaml "- voice_assistant.start_continuous:" That triggers the code-driven loop. I think there's an issue in that code, and it's getting stuck/hung/whatever you want to call it. So that brief button press calls this:

                - delay: 1s
                - script.execute: reset_led
                - script.wait: reset_led
                - voice_assistant.start_continuous:```

anything starting with voice_assistant is making requests of that code, which if it's stuck/hung/whatever wont' be responsive.  the stuff starting with script is outside of that, and we did see the reset_led work.
#

you can try the button right after boot while the loop is still looping

#

and confirm that you see signal to stop, and then it starts looping again

#

and then maybe, while on the arduino framework, those signals will still work even if it stops looping. If it does, then you can try putting those signals in other places to have it automatically stop/start after every command

#

not a fix but a work-around.

naive topaz
#

So yours is working just fine ?

sleek linden
#

Mine was having the same problems, but I changed mine to arduino and I'm doing a bunch of stuff in node-red where I'm toggling the wake-word off and on a lot to handle custom responses

#

Now mine has a completely different problem, where on boot it throws an error about no wake word detected and spams that error as fast as it can process. I have to manually stop it and start it to get it to chill out any time it boots.

#

By the way, have you seen any errors in whisper logs?

naive topaz
#

I haven't looked

sleek linden
#

I remember reading some comment a while back about how he pipeline will stop if whisper gets upset or something to that effect

#

see if the add-on logs there look clean just to be sure

naive topaz
#

there is nothing logged

sleek linden
#

It can take a minute to load, there should be something..

naive topaz
#

No logbook events found.

sleek linden
#

huh, who knows

#

I guess just have to assume that's fine

naive topaz
#

it's faster-whisper logbook, right?

#

I have another echo, brand new, I might try another clean new install

sleek linden
#

yeah worth a shot

sleek linden
#

Rob's idea to remove esp_adf: at the bottom of the yaml is a good one but we had to do that when switching to arduino platform.

naive topaz
#

Am I doing it right? When I change the YAML, do I need to also install it to the echo ?

sleek linden
#

yes

naive topaz
#

or just save the file

#

oh maaan

sleek linden
#

you don't have to save it, you do have to install it

#

HAHAHA

#

save it is more like "save it for later"

naive topaz
#

ok I'm going to try it with last line removed

#

it won't let me without it

sleek linden
#

can you message me directly? can do better copy paste and whatnot that way.

#

then send me your current yaml and whatever the error is when you try to install it

naive topaz
#

give me a minute, trying installing with that line and I'll see if it works

sleek linden
#

ok

naive topaz
#

failed install