#atomm5 Voice Assistant conf / install

1 messages · Page 1 of 1 (latest)

visual depot
#

I am unable to install the assistant so that I can connect to Google speakers

voice_assistant: [source /config/esphome/m5stack-atom-echo-23d524.yaml:98]
noise_suppression_level: 4
volume_multiplier: 5.0

Source for removal at 'voice_assistant->speaker' was not found.
speaker: !remove
on_tts_end:
- homeassistant.service:
service: media_player.play_media
data:
entity_id: media_player.nestmini6342
media_content_id: !lambda |-
return x;
media_content_type: music
announce: false

dense fogBOT
#

To format your text as code, enter three backticks on the first line, press Enter for a new line, paste your code, press Enter again for another new line, and lastly three more backticks.
```yaml
example: here
```
Don't forget you can edit your post rather than repeatedly posting the same thing.

rotund saddle
visual depot
#

Hello @rotund saddle , that's exactly it, I want to eliminate the sound coming out of the internal speaker which is very weak and pass it to a speaker on Google or Nest

#

I already have atom installed by esphome but no matter how many settings I make, it either gives an error when installing or there is no sound on the speaker.

rotund saddle
visual depot
#

TTS would be perfect, as long as I can hear what you say it's ok

#

I don't think I answered clearly, the goal is to have the voice assistant respond

rotund saddle
#

using the stock firmware and if you use music assistant and the recomended local template you could have
"okay nabu, play the album xyz on google speaker"
the atom would respond "player xyz" but the music would actually come out of the speaker you want.

#

redirecting all audio, including responces is a bit more involved and has some issues

visual depot
#

Yes, when I ask for music, Google itself does this, what I need is to pass the ATOM and what it responds, to be answered on a Google device.
I see many codes that claim to have done this, but here I’m not succeeding due to having only half of the codes

#

exemple
voice_assistant:
noise_suppression_level: 4 # increase noise suppression to 3 -or- 4 from default 2 for better sound floor suppression
volume_multiplier: 5.0 # increase multiplier from 2.0 to 5.0 to give the mic a little boost...going above 5.0 with Atom Echo resulted in distorted audio for me
speaker: !remove # remove the default 'echo_speaker' entry so VA doesn't use internal speaker at all. NOTE: THIS ALSO DISABLES SOUND FOR TIMERS but LED will still flash on finish
on_tts_end:
- homeassistant.service:
service: media_player.play_media
data:
entity_id: media_player.name_of_a_player # <- this to be changed to actual media_player
media_content_id: !lambda 'return x;'
media_content_type: music
announce: "false"

rotund saddle
#

please format any pasted code inside triple `

dense fogBOT
#

To format your text as code, enter three backticks on the first line, press Enter for a new line, paste your code, press Enter again for another new line, and lastly three more backticks.
```yaml
example: here
```
Don't forget you can edit your post rather than repeatedly posting the same thing.

rotund saddle
#

makes it easier to read

#

you will want to start with the stock firmware and instead of pulling the package getting the package data manually and then modifying it to include the suggested changes above

visual depot
#

...

rotund saddle
#

have you done much customising of esphome firmware before?

visual depot
#

I have, but nothing too complex.

#

This is the code I have as a base, without adding the Google column to the speaker.

#

this second code is one that i saw and should work but it is already outdated and does not upload

rotund saddle
#

the 2nd code you have is using the old firmware as a base which no longer compiles

#

that cant be used

visual depot
#

Well, now what I've been trying to see was if I could connect the two, but without success, of course.

rotund saddle
#

I might have to get my echo out and have a play with this

visual depot
#

It's amazing, I've seen some videos with this and it gives you a lot of freedom

rotund saddle
#

remember if those videos are are older then about 3 or 4 months they are using older firmware which no longer works.

#

ill have a look at this, because it has given me an idea for something. howeveer its gunna take me some time to set up

visual depot
#
rotund saddle
#

yeah i think it was in december it all changed

visual depot
#

see some examples, they had problems and had to update but what is certain is that it works

rotund saddle
#

yeah i am sure, and you are not the only one. i am gunna see if i can make a friendly way of doing it

visual depot
#

I arrived late xD

#

thanks, good luck with that

rotund saddle
#

will ping you if/when i have any luck

rotund saddle
#

@visual depot

#

i am going to try and make it a bit easier to implement from stock firmware but adapting that should work for now

#

you will need to give the give action execute permissions in most assistant. in the esphome integration hit the configure button next to the device and tick the allow to perform actions option

rotund saddle
#

I am working on making a friendly version

visual depot
#

hi

#

@rotund saddle

rotund saddle
#

yoyo

visual depot
#

change in the externanal media player?
on_tts_end:
- homeassistant.action:
action: media_player.play_media
data:
entity_id: ${external_media_player}
media_content_id: !lambda 'return x;'
media_content_type: music
announce: "false"

rotund saddle
#

i have actually made an easier way of doing it

rotund saddle
visual depot
#

Sorry, I don't understand, my son is right next to me distracting me xD

#

calm down now. I keep the original code or do a new installation

rotund saddle
#

i suggest you start fresh

#

can delete the device from the builder then readopt it with a fresh firmware install

visual depot
rotund saddle
#

yeah voice assistant firmware for the atom echo

#

you will want to delete the device from your esphome builder so you can readopt it as a fresh device

visual depot
#

yah yah, 70% 🙂

#

esphome and esphome builder delete, and restart HA

rotund saddle
#

you should have to restart ha

#

just delete from the builder

visual depot
rotund saddle
#

can skip that

visual depot
#

ok now wsphome builder?

rotund saddle
#

you should be ablee to adopt the device in the builder

visual depot
#

skip or install?

rotund saddle
#

install

#

go through the process

visual depot
rotund saddle
#

will take a few mins

visual depot
#

okok

rotund saddle
#

this will give it a fresh adopted install

visual depot
#

This should take about 30 minutes if this is what has been happening

rotund saddle
#

whilst its going you can delete the the device from the esphome integration in another tab

rotund saddle
visual depot
#

nothing special but this is the version, other people have made the same comment

#

I don't have anything to delete here

rotund saddle
visual depot
#

I've already erased both sides

rotund saddle
#

ok great

visual depot
#

look

#

not even 1/4 goes

rotund saddle
#

once all the esphome side has been done you should be able to readd if it doesnt auto pop up it then you can restart HA at that point

#

yeah it takes a little while to compile all the stuff ready to prepare for a new device

visual depot
#

the installation I had was clean but now it's running

rotund saddle
#

subsequent flashing is alot quicker as most stuff is precompiled at that point

visual depot
#

I thought that after resetting ATOM it wouldn't install any of this

#

the first time I didn't have any of this

#

what I'm doing now is creating an atomM5 but with an esp32 and a micro, I already have the code almost correct

rotund saddle
#

the Voice PE has microphone turned off. and the atom echo is outputting to it

visual depot
#

nice will it really be that

rotund saddle
#

yeah theres some warnings

#

dont worry about that

visual depot
#

yah
It's been like this but everything is ok

rotund saddle
#

probably not much left

visual depot
#

I believe not

#

It's already in W, it must be right

#

What will be the next step?

#

@rotund saddle ======================== [SUCCESS] Took 1497.17 seconds ========================

rotund saddle
#

ok now in the builder hit "edit" on the device to open its yaml config

visual depot
#

ok

#

change for your code

#

substitutions:
name: m5stack-atom-echo-23d524
friendly_name: M5Stack Atom Echo 23d524
packages:
m5stack.atom-echo-wake-word-voice-assistant: 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: xxxxxxxxx

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

rotund saddle
#

you need to change the package line and add the media player line

#

put triple ` around your code so its readable

visual depot
#

...
substitutions:
name: m5stack-atom-echo-23d524
friendly_name: M5Stack Atom Echo 23d524
packages:
m5stack.atom-echo-wake-word-voice-assistant: github://MichaelMKKelly/wake-word-voice-assistants/m5stack-atom-echo/m5stack-atom-echo.yaml@external-audio-output
esphome:
name: ${name}
name_add_mac_suffix: false
friendly_name: ${friendly_name}
api:
encryption:
key:xxxxx

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

#

:S

rotund saddle
#

that is not the right symbol

#

its a backtick

#

aka a grave

visual depot
#

substitutions:
  name: m5stack-atom-echo-23d524
  friendly_name: M5Stack Atom Echo 23d524
packages:
  m5stack.atom-echo-wake-word-voice-assistant: github://MichaelMKKelly/wake-word-voice-assistants/m5stack-atom-echo/m5stack-atom-echo.yaml@external-audio-output
esphome:
  name: ${name}
  name_add_mac_suffix: false
  friendly_name: ${friendly_name}
api:
  encryption:
    key: xxxxxxxxxx


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

sorry

rotund saddle
#

you need to add the substitution line too

#
  name: m5stack-atom-echo-23d524
  friendly_name: M5Stack Atom Echo 23d524
  external_media_player: media_player.YOUR_MEDIA_PLAYER_ENTITY_HERE```
#

so it looks like that

#

but you add your target media player instead of the placeholder

visual depot
#
substitutions:
  name: m5stack-atom-echo-23d524
  friendly_name: M5Stack Atom Echo 23d524
  external_media_player: media_player.nestmini6342
packages:
  m5stack.atom-echo-wake-word-voice-assistant: github://MichaelMKKelly/wake-word-voice-assistants/m5stack-atom-echo/m5stack-atom-echo.yaml@external-audio-output
esphome:
  name: ${name}
  name_add_mac_suffix: false
  friendly_name: ${friendly_name}
api:
  encryption:
    key: xxxxxxxxxxx


wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
rotund saddle
#

i think that looks right

visual depot
#

I think this is it

rotund saddle
#

hit save then install then wirelessly

#

will need to recompile a couple of things but not alot

visual depot
#

concluded, do I add it to esphome?

rotund saddle
#

yeah now you can readd the device to the esphome integration. hopefully it should have auto popped up

#

if not you can restart HA and it shoudl pop up. or you can manually at it via ip in the esphome integration

#

then once its added you neeed to give it permission to execute actions so it can play to the other media player

visual depot
#

nice bro, you are a machine

#

It's already working perfectly

rotund saddle
#

boom

#

make sure the permission is set, sometimes it works randomly when its not set but then stops until you set the permission

visual depot
#

I had already gone to give authorization before testing, I had already linked to your post on github with the explanation

rotund saddle
#

nice

visual depot
#

It's really good and much simpler!

rotund saddle
#

i cannot guarantee to you that the repo will stay up to date on bugfixes and compatability with new esphome versions.
but ill do what i can if something breaks

visual depot
#

Thanks 🙂 You'll see that a lot of people will want this.
I have to find a flow or something so that she can activate the microphone again, sometimes she answers with a question and for that we have to say "ok nabu" again.
By the way, is it easy or difficult to add another name to call her?

rotund saddle
#

back and forth communication is not possible with voice satellites... YET. this functionality is coming soon
microwaveword supports: okay nabu/ hey jarvis / hey mycroft / alexa
if you would prefer one of the others i can show you how to switch to them

#

there are some other models on other repos too but not a huge amount.
microwakeword is pretty new in the grand sceme of things

visual depot
#

I thought we could choose a name, but I'll research it later. What you did was really great.

#

As for the response part, I'm going to make a trigger to activate it again after entering inactive mode, so if there is another response, it allows it.

rotund saddle
#

the support for it is coming very soon. i hope in 2025.4 but i am not 100%

visual depot
#

oh that's a lot. the community has done a good job

rotund saddle
#

btw i recomend a voice-pe for voice stuff in the future if you want a better device. it has a 3.5mm line out too if you want to plug it into a bigger speaker

#

the atom echo is fine for learning and dev but it is a little limited

visual depot
#

I'm still trying something simpler, an esp32 with this micro

rotund saddle
#

ah yeah i have some of those microphones. i was building a custom smart speaker months ago but i shelved it when the voice-pe was close and just got that instead

visual depot
#

see what he did, it's very good, I'm trying to replicate it

rotund saddle
#

remember alot of that is outdated. voice and voice satellites have been updated ALOT and alot of methods have changed

#

as for a concept idea its great but alot of specifics will have to be changed now

visual depot
#

This is the problem, sometimes I want to install and it just gives errors

rotund saddle
#

yeah, a lot of the calls have changed how they work now you may have to understand what they are doing at the steps and then look up how to do it correctly now in the documentation

#

in any case, good luck

visual depot
#
INFO ESPHome 2025.3.1
INFO Reading configuration /config/esphome/relu-voice.yaml...
INFO Updating https://github.com/esphome/esphome.git@pull/5230/head
WARNING The selected ESP-IDF framework version is not the recommended one. If there are connectivity or build issues please remove the manual version.
WARNING The selected ESP-IDF framework version is not the recommended one. If there are connectivity or build issues please remove the manual version.
WARNING GPIO15 is a strapping PIN and should only be used for I/O with care.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
WARNING RMT_LED_STRIP support for IDF version < 5 is deprecated and will be removed soon.
INFO Generating C++ source...
INFO Updating https://github.com/espressif/esp-adf@v2.5
INFO Updating submodules (components/esp-sr, components/esp-adf-libs) for https://github.com/espressif/esp-adf@v2.5
Traceback (most recent call last):
  File "/usr/local/bin/esphome", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/esphome/esphome/__main__.py", line 1057, in main
    return run_esphome(sys.argv)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/esphome/esphome/__main__.py", line 1044, in run_esphome
    rc = POST_CONFIG_ACTIONS[args.command](args, config)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/esphome/esphome/__main__.py", line 511, in command_run
    exit_code = write_cpp(config)
                ^^^^^^^^^^^^^^^^^


#

I get out of one mistake and into another

#

This won't be for today