Public Beta Test: Audio Without Compromise - Refining the Future of Volumio on Bookworm

Yeah I ended up adding a sleep loop in wireless.js instead then all works. But you cant upgrade volumio after that so better wait for real fix

1 Like

Hi, i saw 4.020 is Pre-Release, so any chance that we will have other board image for testing soon ? Like Bananapi ? Thanks a lot

Hey @Hung_The,

In the opening post we have:

image

There is literally nothing stopping community members form engaging with ports:

However, if you are not comfortable taking a driver seat, you will need to wait for staged rollout after the V4 exits cleanly beta phase. We are not far from the official release, however I have a firm standpoint: All core functions error free with predictable outcome. Until this it fully achieved, my personal view - we are not ready yet.

Kind Regards,

2 Likes

Hey @Wheaten,

From the log snippet, the fatal error is triggered when upnp_browser tries to read the player state during handleBrowseUri. The TypeError: Cannot read properties of undefined (reading 'length') strongly suggests that the state object or its track array was not yet available when the browse request executed.

This points to a timing or availability issue with the CoreCommandRouter state. If metadata is arriving late, or if the internal metadata database is temporarily unavailable or delayed, the plugin will attempt to process an undefined structure. That explains why browsing NAS1 or Twonky can crash the process, while LMS browsing continues because it does not hit the same path.

Next step is to verify:

  • Why the router state does not yet contain valid metadata at the moment handleBrowseUri is called.
  • Whether the metadata database (or caching layer) is lagging or experiencing intermittent outages, which would delay population of the state object.

This needs to be checked to confirm if the failure is caused by late metadata arrival or a transient state/DB outage.

Kind Regards,

Hey @cgs, @hifiswede, @JohnR,

Yes, the delayed network startup issue is a known behavior on Bookworm-based Volumio 4.x, particularly with USB WiFi adapters or early Pi models. The backend code is still shared with Buster builds - no immediate fix is available.

  • Workarounds like sleep loops in wireless.js can help but will break OTA updates, so we do not recommend them for production systems.
  • Dual hotspot broadcast (Volumio + Volumio-XXXX) can occur during transitional startup, and login issues are often due to timing conflicts when DHCP is delayed or the adapter power cycles.
  • A proper fix is planned once the Buster is fully retired. Until then, wired ethernet or a supported adapter with faster initialization is the most stable option.

Kind Regards,

If I only knew what you want me to do…

Hey @Wheaten,

From what we see in the logs and behavior, these issues are all linked to the same underlying problem:

  • Race conditions in the state and metadata chain, where DLNA can briefly expose /file.mp3 instead of a resolved track.
  • Missing metadata during auto track advance, leaving the router state incomplete.
  • The upnp_browser crash occurs because it queries the router state before metadata is fully available.

All these symptoms point to a deeper timing and synchronization issue between UPnP/DLNA browsing, track resolution, and the metadata database. A quick patch to avoid the crash would only hide the problem, not solve it.

This flow needs to be fully understood and properly re-designed so that state and metadata are always valid before any plugin or browser relies on them.

Kind Regards,

Ok understood. If additional testing is needed, let me know.

(moved my question to a new thread)

I am building 4.020 for testing. I saw that the command to build on git repo will default to buster. I will need to set SUITE=bookworm to change to bookworm but in log, there is still showing Buster. Is there any updated build guide ? Thank you ^^

Hey @Hung_The,

At this stage we have zero verifiable facts regarding the claim that the 4.020 build process is still producing a Buster image.

The volumio-os repository is dedicated to Bookworm (Debian 12) and all current recipes and VolumioBase.conf entries target Bookworm. Alpha, Beta, and Pre-Release 4.x images are successfully built and tested on this base.

If you are observing any unexpected “Buster” references, we will need verifiable information to proceed:

  1. Full debug_*.log or multistrap.log from your build, uploaded to pastebin or similar.

  2. Output of:

    cat output/.../root/etc/os-release
    
  3. Exact commit or branch of volumio-os you are building from.

Without these, any claim remains anecdotal and cannot be actioned.

Kind Regards,

I think i found out why. On volumio-os repo, the build guide clone the wrong repo


It should be volumio-os instead of volumio3-os

Oh dear, this actually triggers another round of chore and review.

Thank you for reporting.

Kind Regards,

@cgs, @Ema82,

Hot off the digital press: Volumio V4.021 is live, and yes, Tidal Connect is rocking and rolling!

3 Likes

Successfully upgraded via wired LAN from v4.020 to v4.021 and TIDAL connect hooked up in a blink. Working nicely! Congrats.

(Pi 4B 2GB 32GB SD, DAC via USB)

1 Like

I may have found something, I can check more later.

With TIDAL connect, from the TIDAL Android App on my phone, if the next song to play is ‘LOW’ resolution, ‘TIDAL connect’ is dropped, and everything goes silent. I can hit play on my phone and the ‘LOW’ res song is skipped and the next ‘HIGH’ or ‘MAX’ song will play on my phone. There is no option to re-select my Volumio TIDAL connect node, it’s disappeared from my phone and TIDAL has gone from the Volumio web interface.

(I can’t see any song info from volumio.local/dev as the song never loads/plays.)

From the web URL I can reboot Volumio and all is well again.

OTA-updated Pi4, Pi5 and PC to 4.021. No issues.

Please provide a log and album/track/resolution details so we can try to reproduce it.

1 Like

OTA update wireless 4.020 to 4.021 on Rpi 5 went fine, no issues.

OTA update via wire 4.020 to 4.021 on Rpi 4 was kind of strange. After update Rpi4 did a restart and come up with a flickering screen and then did a new restart all by itself and then it worked.
I have never seen that before.
All plugins except from touch display unactivated during update.

Regards / C

Here’s the log file

There have to be a couple dozen or more mixes of ‘Unzip Me’. This is a ‘LOW’ res version that drops the ‘TIDAL connect’ session.

Unzip Me (Fagault & Marina Club Mix) ‘E’
Cazwell, Peaches

Some info from the /dev page if it helps. Below it lists the codec as flac. Any chance it’s actually AAC?

{“status”:“play”,“title”:“Unzip Me”,“artist”:“Cazwell, Peaches”,“album”:“Unzip Me Remixes Part Two”,“albumart”:“https://resources.tidal.com/images/fcf632a3/2341/49b5/a818/fb1ce980f61b/1280x1280.jpg",“uri”:“”,“trackType”:“tidal”,“codec”:“flac”,“seek”:105500,“duration”:306,“samplerate”:"44.1 KHz”,“bitdepth”:“16 bit”,“channels”:2,“random”:false,“repeat”:false,“repeatSingle”:false,“consume”:false,“volume”:100,“dbVolume”:null,“mute”:false,“disableVolumeControl”:true,“stream”:false,“updatedb”:false,“volatile”:true,“service”:“tidalconnect”}