· Playback skipping to next song before current song ends when using Chromecast on KEF LSX II LT. This happened on 29.05.2026. around 15:05 CEST - one track played to 40% and then Roon jumped to playing the next track without any input from me.
This issues seems to happen only when using Chromecast, and I have also observed it with Sonos Move and Roam. Using Airplay on both KEF and Sonos devices fixes the issue - no skipping. Chromecast is very flaky and skips from time to time on all mentioned devices.
I would prefer to use Chromecast over Airplay, but this annoying issues keeps me coming back to Airplay for stability reasons.
Tell us about your home network
· Unifi network, switches and APs. KEF LSX II LT connected via ethernet and using Chromecast streaming protocol. Roon core is on a NUC Linux machine that is also on ethernet. Sonos Roam and Move (both gen 1) on WiFi and Chromecast
Thanks for the details. Are the KEFs and the Linux NUC on the same switch? Are you using managed switches, or are they unmanaged? If you have any other Chromecast zones, please let us know whether those are working as expected as well.
Hi, due to the way the wiring is set up in the house, there are some additional switches in the network, so the NUC that runs Roon Core on Linux and KEF are not on the same switch. They are managed Unifi switches:
At the moment, there are no other Chromecast zones enabled, but I had the same issue with Sonos Move and Roam a while ago when I was using Chromecast on them. I now use Airplay for those two and there are no issues. If I use Airplay for KEF, there are also no issues, but when I use Chromecast, I occasionally have this skipping issue. I would like to avoid having to use Airplay for KEF as well. While it would probably solve this track skipping issue (like it did for Sonos speakers), format support is weaker and I would prefer Chromecast (or RAAT if it comes to LSX II LT one day)
Both KEF and Roon core are on devices on the Default VLAN.
Multicast settings of Wifi (which I commonly see suggested as a potential fix) are irrelevant for KEF (I tested those as well a while ago for Sonos since those use WiFi, but it didn’t make a difference).
We reviewed the diagnostic logs from your session and can now give you a precise answer.
We confirmed the exact incident at 15:05:27 CEST on May 29. At that moment, the KEF itself sent Roon an StoppedEndOfMediaUnnatural signal — meaning the KEF’s internal Chromecast receiver terminated the media session unexpectedly and reported it back to Roon. Roon’s buffer was at 100%, there was no CPU or memory pressure, and no network timeouts on Roon’s end. Roon correctly treated it as an error and advanced the queue. The skip originated on the device side, not Roon’s.
We also see that at every track transition, the KEF generates INVALID_MEDIA_SESSION_ID errors as Roon sends a final status request with the old session ID just as the KEF creates a new one for the incoming track. In most transitions the KEF recovers fine, but on this occasion it didn’t.
Why AirPlay doesn’t have this problem: Roon serves audio to the KEF’s Cast receiver via a local HTTP stream that the KEF fetches over the network. AirPlay uses a push model where Roon pushes packets directly to the device, which is more resilient to brief network hiccups. With the NUC and KEF on different switches, even a transient inter-switch disruption can drain the KEF’s Cast buffer and trigger the early stop.
What to try:
Same switch — if wiring allows, put the NUC and KEF on the same UniFi switch. This eliminates inter-switch hops from the HTTP stream path and is the most likely fix.
KEF firmware — check whether a firmware update is available for the LSX II LT. The StoppedEndOfMediaUnnatural is coming from KEF’s Cast implementation, and a firmware update may address it.
UniFi switch firmware — ensure all switches are on current firmware; some older versions had issues with TCP retransmits on inter-switch unicast flows.
As you correctly noted, RAAT would avoid this entirely if KEF ever adds support for it, since RAAT doesn’t rely on the Cast stack at all.