Great catch. Yes, I’ve seen the difference in the external_components block as well. RobMeades’ fork adds a custom audio component in addition to the standard ones from the official ESPHome Voice PE repo. And I agree: if that component is overriding or extending core functionality (like mixer_speaker or audio pipelines), it could easily be a source of conflict.
That said, here’s what I’ve verified:
I originally started with RobMeades’ fork, then merged upstream esphome/home-assistant-voice-pe@dev into my own fork to keep it up to date.
Regardless of whether I use RobMeades’ repo or the upstream ESPHome repo as the source for external_components, I hit the same compile error with ESPHome 2025.3+:
error: no matching function for call to 'transfer_data_to_sink(TickType_t, bool)'
That’s coming from a file named mixer_speaker.cpp, which is included in both repos under esphome/components/mixer/speaker. This file still uses the old method signature with two arguments, but the core ESPHome AudioSinkTransferBuffer class now only accepts one (introduced in ESPHome 2025.3.0+)
This error happens even with a stock clone of either repo, no custom YAML changes at all
So your point holds — the error isn’t from my own changes, it’s from the fact that the repo is still bundling (or referencing) an outdated version of mixer_speaker, which no longer compiles against the current ESPHome core.
If audio is doing anything sneaky under the hood (or if it’s pulling in older internal APIs), that might be compounding things. But as of now, even switching to the upstream ESPHome repo still fails to compile under 2025.3.x, which suggests that neither version has been updated to match ESPHome’s latest internal changes.
I’d be happy to help patch this and PR it if needed — just trying to confirm whether the core team plans to own the fix or if the community should push one forward.