Atom Echo: can't Output Voice Assistant TTS to Media Player

Hi There, I got two Atom Echo installed with ESPHome and this base YAML (firmware/voice-assistant/m5stack-atom-echo.yaml at cd57ca6f951d44cc5bf61de124a15b349ef1f9a4 · esphome/firmware · GitHub) where I added the following code inside the “voice assistant” section:

  on_tts_end:
    - homeassistant.service:
        service: media_player.play_media
        data:
          entity_id: media_player.nest_mini
          media_content_id: !lambda 'return x;'
          media_content_type: music
          annouce: "true"

Also I edited the “speaker:” section changing "i2s_dout_pin: GPIO22 " to “i2s_dout_pin: GPIO21” to mute internal speaker of Atom Echo.

As Voice Assistant pipeline I got:

  • Conversation Agent: ChatGPT (API set + credit loaded)
  • STT: Home Assistant Cloud
  • TTS: Piper
  • Wake word: openwakeword

Now, this setup worked for few days, with reply played correctly on media player.

Then all of sudden the reply was not anymore played on media player. I then re-activated the Atom Echo internal speaker and I find out that the reply was played on Atom Echo internal speaker.

I re-compiled YAML and re-uploaded the configuration on both Atom Echo with no result. So now I get the reply but is not played on external media player. I tried with both a Sonos and Google Nest Mini. Same result.

Any idea how to get back the TTS reply played on media player?

2 Likes

Hi @adalbore

Try to add in your “voice assistant” section, this:

speaker: !remove