Volumio 4 Feedback Thread

Hey @jajao555,

I’ve analyzed your log in detail. The pattern you’re observing is consistent with a state synchronization issue between MPD and Volumio’s playback state machine during track transitions over network shares.

What’s happening in your log:

At 18:53:06-18:53:07, during the transition from Hawkwind to Led Zeppelin:

  • Line 39279: Volumio prefetches Led Zeppelin track from NFS (normal behavior)
  • Line 39304: The add command takes 579ms to complete (network latency from NFS)
  • Lines 39319-39322: State machine reports “stop” status while currentStatus still shows “play” - they’re out of sync
  • Position jumps between track 932 and 1118 before settling on 1118 with stop status

The state machine loses synchronization during the transition window. When MPD announces state updates, Volumio’s internal state doesn’t match what MPD is reporting, causing playback to halt instead of continuing to the next track.

Why NFS matters:

The 579ms delay adding the Led Zeppelin track to MPD’s queue creates a wider timing window where this desynchronization can occur. Local storage would complete in under 10ms, giving less opportunity for the race condition to manifest.

Historical context:

This specific pattern has appeared intermittently across Volumio versions, typically triggered by network share latency during track transitions. The timing behavior changed between Node 14 (Volumio 3) and Node 20 (Volumio 4), which may have reintroduced susceptibility to this condition.

I’m escalating this to the development team with your log and the technical analysis. Since you’ve observed this consistently since alpha testing, your feedback is valuable for tracking down the root cause.

In the meantime, you can work around it by hitting play when it stops, but I understand that’s not a solution - just a temporary measure until this gets proper attention.

Thanks for the detailed report.

@volumio - statemachine.js syncState and playback timer logic

Kind Regards,

1 Like