Hi everyone,
I’m struggling with an automation that should trigger on a voice command, fetch the daily weather forecast using weather.get_forecasts, and then speak the result using TTS. However, I’m encountering a persistent issue where the TTS part fails silently.
My Setup:
- Home Assistant Core: 2025.10.4
- Voice Assistant: ESPHome based (
media_player.home_assistant_voice_0a2029_media_player) - TTS Service: Home Assistant Cloud (
tts.cloud_sayrecommended, also triedtts.speak) - Weather Integration: Open-Meteo (Entity ID:
weather.halalovka)
The Problem: When I trigger the automation using a voice command (e.g., “Aké bude počasie zajtra”), the automation runs (I hear the default “Done” response from the assistant), but the TTS message is never spoken.
What Works:
- Manual TTS Test: Calling the
tts.cloud_sayservice manually via Developer Tools → Services successfully plays audio onmedia_player.home_assistant_voice_0a2029_media_player. - Automation Trigger: The automation does trigger correctly on the voice command (verified by the “Done” response).
- Open-Meteo Data: Diagnostics confirm the Open-Meteo integration is fetching data correctly.
What Fails:
- The
tts.cloud_say(ortts.speak) service call within the automation, when triggered byplatform: conversation, produces no sound. - Even a simplified test automation (trigger +
tts.cloud_saywith a fixed message) fails silently, only resulting in “Done”.
Troubleshooting Steps Taken:
- Corrected Trigger Syntax: Ensured the trigger uses
platform: conversationcorrectly. - Verified Entity ID: Confirmed
weather.halalovkais the correct Open-Meteo entity. - Tried
tts.speakandtts.cloud_say: Both fail silently in the automation context. - Added
delay:: Added a 1-second delay before the TTS call – no change. - Checked
response_variable: The automation reports “Error fetching data…” ifweather.get_forecastsfails, but when it should work (based on diagnostics), the TTS is just silent. - Simplified Automation: A simple trigger + fixed TTS message also fails silently (“Done”).
My Latest Automation Code (automations.yaml):
alias: Pocasie - Predpoveď Zajtra (tts.cloud_say s Delay)
description: Používa volanie služby weather.get_forecasts a tts.cloud_say s oneskorením
mode: single
trigger:
- platform: conversation
command: Aka je predpoved na zajtra
- platform: conversation
command: Aké bude počasie zajtra
actions:
- service: weather.get_forecasts
target:
entity_id: weather.halalovka
data:
type: daily
response_variable: denna_predpoved
- delay:
seconds: 1
- service: tts.cloud_say
data:
entity_id: media_player.home_assistant_voice_0a2029_media_player
cache: true
message: >-
{% set entity_key = 'weather_halalovka' %}
{% if denna_predpoved is defined and denna_predpoved[entity_key] is defined and denna_predpoved[entity_key].forecast is defined %}
{% set zajtra = denna_predpoved[entity_key].forecast[1] %}
Predpoveď na zajtra je {{ zajtra.condition | replace('partlycloudy', 'polooblačno') | replace('cloudy', 'oblačno') | replace('sunny', 'slnečno') | replace('rainy', 'dážď') | replace('pouring', 'liak') | replace('lightning-rainy', 'búrka') | replace('clear-night', 'jasná noc') }}
s maximálnou teplotou {{ zajtra.temperature | default(0) | round(0) }}
a minimálnou {{ zajtra.templow | default(0) | round(0) }} stupňov.
Pravdepodobnosť zrážok je {{ zajtra.precipitation_probability | default(0) | round(0) }} percent.
{% else %}
Ospravedlňujem sa, dáta o predpovedi nie sú dostupné. (Chyba získania dát z entity {{ entity_key }})
{% endif %}```
It seems like there might be a timing issue, a conflict with the voice assistant releasing the audio channel, or potentially a bug in HA Core 2025.10.4 related to `platform: conversation` and immediate TTS execution on the same device.
Has anyone encountered similar behavior or have any suggestions on how to debug this further?
Thanks!