Text to Speech to HomePod Working, But No Speech

I had text to speech working fine until a few months ago when it just stopped, probably after a HomePod OS update. I’ve deleted and re-added the HomePods. When I run my NodeRed flow, I see HomePod playing and HomePod changed to idle in the log. I’ve tried testing with multiple HomePods. I’ve also tried tts.say and tts.speak.

Is there some new setting on the HomePod or the AppleTV regarding speech? I looked and didn’t see anything. Do I need a volume parameter in the tts request?

This the JSON I’m sending in a test:

{
“media_player_entity_id”:“media_player.library_homepod”,
“message”:“My name is hanna”
}

I can control the HomePods from Home Assistant, for example, turning on play and off again.

Update

I created an automation within Home Assistant to test TTS. It doesn’t work either.

I also tried the test message in the Home Assistant Cloud settings. It worked when I sent it to the browser, but not to a HomePod.

Hi Curt Rowe,

This is often some external_utl access problem. TTS like that is cloud based, so the TTS has to get back into HA as a sound file. Make sure all that stuff is working right.

It did work fine before. I also tried it all within Home Assistant with the same result.

I fixed the problem by upgrading Home Assistant for 2024.9 to 2024.11.

I have same problem. Deleting the HomePod from home assistant and re-adding works for a while.

I can point the same text to a Sonos speaker with no issues.

HA version 2025.2.0