v2026.6.1 - Native intercom modes, routing and phonebook cleanup
🧭 v2026.6.1 - Native intercom modes, stronger routing and phonebook cleanup
This is a focused follow-up to v2026.6.0.
2026.6.0 shipped the Espressif GMF / esp_audio_stack migration. 2026.6.1 tightens the intercom layer above it: Home Assistant routing, standalone ESPHome-native audio, one-way endpoint modes and safer reconnect behavior.
📞 Intercom Native / Home Assistant
🗂️ Phonebook moved to an attribute
The full roster is now stored in:
sensor.intercom_phonebook.attributes.phonebook
The entity state is now only a short summary such as 5 entries.
This removes the old 255-character state limit, which was too small for larger installs such as apartments, offices or multi-room deployments.
Maintained YAMLs already subscribe to the new attribute. Custom YAMLs must update their Home Assistant text sensor subscription accordingly.
🌐 Better HA recognition across subnets and NAT
The Home Assistant integration now handles routed networks more reliably.
Test coverage for this release included:
- ESP and HA on the same subnet
- ESP on a routed secondary subnet
- TCP calls across subnets
- UDP calls with NAT return paths
- mixed TCP/UDP endpoints
- HA PBX mode enabled and disabled
The goal is that HA is recognized as HA, not as a generic ESP peer, even when the ESP is on another routed network.
🔀 Stronger UDP return-path handling
UDP peers can now be matched by the observed packet source when NAT changes the apparent return address.
The phonebook still keeps the real endpoint identity; the transport layer only uses the observed source as the return path when needed.
🧩 Card config rename
The Lovelace card option was renamed:
show_protocol: truebecomes:
show_extended_info: trueThe old key is intentionally not kept. The option now shows more than the protocol, so the YAML name was updated to match what the UI does.
🎙️ Intercom API
🎧 ESPHome-native audio is supported again
intercom_api can now run directly on standard ESPHome microphone and speaker components.
This is important for hardware that already performs audio processing itself, for example XMOS-style front-ends or other DSP/codec paths that provide echo-cancelled microphone audio before ESPHome sees it.
In that case you do not need esp_audio_stack just to use Intercom Native.
↔️ Full-duplex, mic-only and speaker-only endpoints
intercom_api now supports three endpoint capabilities:
full_duplex: microphone + speakermic_only: microphone only, useful for listening/monitoring endpointsspeaker_only: speaker only, useful for announcement endpoints
The capability is derived from the declared audio components. Users do not need to set a separate mode flag.
🧹 Removed legacy intercom-side AEC plumbing
The old intercom fallback AEC/audio-processor path has been removed.
Current model:
- use native ESPHome audio when the hardware already gives you processed audio
- use
esp_audio_stackfull profiles when you need software AEC/AFE
This keeps intercom_api focused on call signaling and audio transport instead of duplicating audio processing.
🧪 New YAML Profiles
New ESPHome-native YAMLs are provided as starting points for native audio hardware:
yamls/full-experience/esphome-native/
yamls/intercom-only/esphome-native/
The tested generic native example uses INMP441 microphone + MAX98357-style I2S amplifier on separate I2S buses through ESPHome native microphone and speaker components.
Important: plain native INMP441 + MAX98357 does not provide echo cancellation by itself. For AEC you need either:
- hardware/DSP AEC, such as an XMOS-style front-end, or
- the maintained full
esp_audio_stackprofiles with software AEC/AFE.
The native profiles are not a ready-made Voice PE profile yet, but they are the base for that class of hardware. Feedback from users with native processed audio hardware is welcome.
🛡️ Runtime Stability
Full audio/LVGL profiles no longer run HA disconnect cleanup actions that could destabilize devices during a Home Assistant restart.
This avoids devices getting stuck or rebooting simply because HA was restarted during normal operation.
🧰 Upgrade Notes
After updating the Home Assistant integration:
- Restart Home Assistant.
- Hard-refresh dashboards using
intercom-card. - Update card YAML from
show_protocoltoshow_extended_infoif you used that option. - Recompile maintained ESP YAMLs.
- For custom YAMLs, update the phonebook subscription to read the
phonebookattribute.
Minimum versions remain:
- ESPHome:
2026.5.xor newer - Home Assistant Core:
2026.5.0or newer