Voice PE responds with LED ring but produces no audio — announce, TTS, and play_media all stay silent

I have three Home Assistant Voice PE devices. They are connected and appear to process Assist requests, but they do not produce spoken audio. Most of my testing has focused on the Office unit, although I have reproduced the same general behavior on the Kitchen unit previously.

Symptoms

  • The Voice PE hears the wake word and the LED ring responds.
  • It appears to listen/process normally.
  • assist_satellite.announce causes the LED ring to animate.
  • Home Assistant reports the satellite changing from responding back to idle.
  • No preannounce sound or spoken audio is heard.
  • The Voice PE media-player entity remains idle instead of showing actual playback.
  • Volume is high and the device is not muted.

Current Office media-player state:

  • Volume: 0.85
  • Muted: false
  • State: idle
  • Device online and available

The Office Voice PE is currently running firmware 26.6.0, which HA reports as the latest available version.

HAOS - 18.1
HA Core - 2026.7.3

Tests performed

  1. Assist pipeline / normal voice request
  • The Voice PE hears the wake phrase.
  • The LEDs indicate listening and processing.
  • No spoken response follows.
  1. assist_satellite.announce
  • Service call succeeds.
  • Satellite changes responding → idle.
  • LED ring activates.
  • No audio.
  • Tested with preannounce: true as well.
  1. Direct tts.speak
  • Tested directly against the Voice PE media player.
  • Tested with both Piper and Home Assistant Cloud TTS.
  • The TTS service accepts the request, but the Voice PE media player remains idle.
  • No audio.
  1. Direct media_player.play_media
  • Tested with a known LAN-hosted WAV file to bypass the conversation agent and TTS.
  • HA accepted the service call.
  • The Voice PE did not show a meaningful playback transition and remained silent.
  1. Volume and mute
  • Raised volume as high as 100% during earlier testing.
  • Verified mute is off.
  • No change.
  1. Assistant and wake-word selectors
  • Verified both assistant selector slots are aligned to the intended assistant.
  • Verified both wake-word slots are aligned.
  • The wake/listening side appears functional.
  1. Restart/power cycle
  • Physically power-cycled the Office unit previously.
  • Most recently restarted it through its HA restart button.
  • Waited for the device, Assist satellite, and media player to return.
  • Retested assist_satellite.announce.
  • Same result: LED activity, no audio.
  1. Speaker/headphone hardware
  • Plugging headphones into and removing them from the audio jack produces the normal hardware chimes.
  • Retested TTS/announce while headphones were connected.
  • Still no spoken audio.
  • This suggests the audio hardware itself is capable of producing sound.
  1. Home Assistant URL
  • I found another forum report where changing the Home Assistant URL from an FQDN back to the HA IP address resolved a similar problem.
  • I changed my HA URL back to the IP-based address.
  • Restarted and retested the Voice PE.
  • No change.
  1. Firewall/network
  • The Voice PEs are on a separate VLAN from Home Assistant.
  • I created a UniFi firewall policy explicitly permitting all three Voice PE IP addresses to reach Home Assistant on any port.
  • Retested before and after restarting the Office Voice PE.
  • Same behavior.
  • The Office device remains connected and HA can command it enough to trigger its LED/status changes.

11 Latest retest

  • I installed all Home Assistant updates currently offered
  • Confirmed the Office Voice PE was online and still running its latest available firmware (26.6.0)
  • Then repeated assist_satellite.announce with preannounce: true.
  • The satellite again transitioned responding → idle and the LED ring responded, but there was no preannounce sound or speech.
  • The media-player entity remained idle, with volume at 0.85 and mute disabled.

What appears to be working

  • Network connection to HA
  • ESPHome entity availability
  • Wake-word detection
  • Microphone/listening path
  • Assist satellite command delivery
  • LED/status response
  • At least some local audio hardware functionality, because the headphone insertion/removal chimes work

What appears to be failing

The failure seems to be below the conversation-agent level, somewhere around:

  • Voice PE media playback
  • TTS-to-media-player handoff
  • Media URL retrieval
  • ESPHome Voice PE playback runtime
  • HA/ESPHome media-player integration

The strongest clue is that assist_satellite.announce, direct tts.speak, and direct media_player.play_media all report success but never cause the Voice PE media-player entity to leave idle.

Questions

  • Is this a known issue with Voice PE firmware 26.6.0 or the current HA/ESPHome integration?
  • Are there specific ESPHome or HA Core log messages I should look for while triggering tts.speak or play_media?
  • Could the Voice PE still be using a cached media URL or old HA FQDN after changing HA’s internal URL?
  • Is reloading or deleting/re-adding the Voice PE’s ESPHome config entry likely to help?
  • Is there a recommended way to verify the exact media URL that HA is asking the Voice PE to retrieve?
  • Before reflashing or factory-resetting the devices, is there another lower-impact recovery step I should try?

This has persisted through firmware updates, URL changes, firewall changes, and device restarts. Any suggestions for isolating the playback/media-fetch layer would be appreciated.

FYI for anyone else that may have this issue. I was able to get it working by removing and re-adding the Voice PEs. They’re all working perfectly now.