Skip to content

feat(m5-atom-echo): Added seperate firmware for continuous use#119

Closed
AnnikenYT wants to merge 4 commits intoesphome:mainfrom
AnnikenYT:main
Closed

feat(m5-atom-echo): Added seperate firmware for continuous use#119
AnnikenYT wants to merge 4 commits intoesphome:mainfrom
AnnikenYT:main

Conversation

@AnnikenYT
Copy link

@AnnikenYT AnnikenYT commented May 29, 2025

What?

This PR enables the echo to always use continuous mode - The assistant starts in continuous on wake word, and stops if a new request hasn't been made (as in, you haven't started speaking again) within the 10 seconds after the response has been played.

Why?

It solves my personal want to add the ability for an Assistant to ask follow-up questions, or to put forward multiple requests without having to awkwardly repeat the wake-word multiple times as I can with google assistant.

How?

I've added a global (has_new_request) which, if not set to true after 10 seconds, calls voice_assistant.stop.
The variable is reset on_end to false of a va request, and set to true on on_stt_vad_start. I've also set the va to change the led color as I found it frustrating to not see whether the next request is accepted or not, but I'm happy to revert that change. I've then told micro_wake_word to start_continuous on_wake_word_detected.

Does it work?

In my office while I'm alone in a quiet space? Yes. While I'm watching a video or talking to someone? No, the assistant keeps re-prompting as VAD triggers again and again (obviously).

(potential) ToDos?

  • Ability to stop conversation via a button tap
    This just seems like an easy solution to have this work while watching a movie/talking to someone/etc.
  • Ability to end a conversation from the Assistant-end (e.g. by saying goodbye, calling the "HassNevermind" intent...)
    I've gotten far enough with prompt engineering to where my Assistant reliably calls "HassNevermind" when the conversation ends, but as it's (as far as I'm aware) not possible to get the intent that's being processed on the device, I haven't found a way to have the assistant stop the conversation naturally.

@AnnikenYT AnnikenYT marked this pull request as ready for review May 29, 2025 13:24
@github-actions github-actions bot added the stale label Jul 3, 2025
@github-actions github-actions bot closed this Jul 8, 2025
@github-actions github-actions bot locked and limited conversation to collaborators Jul 9, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments