Assist voice trigger runs automation but TTS doesn't play—manual run works fine

'm running into an issue where a conversation sentence (e.g. “tell me robot”) correctly triggers an automation, but the TTS action never actually speaks.

Here’s what’s happening:

  • The sentence is recognized correctly—Nabu says “Done”
  • The automation fires (confirmed via trace)
  • The tts.cloud_say action is executed, and the media player (media_player.home_assistant_voice_XXXX) briefly changes to playing, then back to idle
  • But no sound is played

If I click “Run Action” on the automation manually, the TTS works perfectly—the speaker speaks the line every time.

Things I’ve tried:

  • Adding a 4-second delay before the TTS
  • Moving TTS into a script and calling that instead
  • Trying other TTS engines (same result)
  • Attempted to use conversation.set_on_end to suppress the “Done” response, but the service doesn’t exist in my install (Action not found)

TL;DR:

This looks like a collision between Assist’s default “Done” voice response and my own TTS action—but I can’t suppress the default response and timing tricks didn’t help.

Has anyone found a working solution? Or is conversation.set_on_end required and just missing in newer builds?

Can you post your Automation YAML? It helps to test and debug.

1 Like

set_conversation_response

1 Like

Thanks you guys for quick responses, you are great it works!