Let’s run a few very simple checks to see if your PC can reach the internet and resolve names. Please copy the commands exactly as shown. They use only plain ASCII and one command per line.
Show your IP and default route
ip addr
ip route
Check DNS resolution (does the name turn into an IP)
Check if a proxy is set in the environment (can block requests)
env | egrep -i 'http_proxy|https_proxy|no_proxy'
Quick connectivity to common Chinese DNS IPs
ping -c1 223.5.5.5
ping -c1 114.114.114.114
Please paste the outputs from all of the above. Based on those results we will suggest the next step, including endpoints that work best in your network.
Thank you for sharing the logs. From what you posted, your Volumio box is not reaching the outside network at all:
DNS lookups do not return results (getent hosts is empty).
Pings to hostnames fail.
Pings to raw IP addresses also fail (100% loss).
None of the curl tests returned any headers.
This points to a network connectivity problem on the Volumio PC itself or at the router/ISP level, not the time sync script. To confirm, please run just these two commands and copy-paste the full output:
Perfect, now we have the smoking gun. Both tests failed:
example.com timed out on DNS resolution.
1.1.1.1 timed out on a direct IP connection (so even bypassing DNS, it cannot connect).
That rules out the helper script entirely. The issue is with your network path: router firewall rules, outbound filtering, or possibly ISP-level restrictions.
Your Volumio PC has no working route to the internet right now. Both DNS and direct IP access fail. This is not a Volumio problem, but a network one. Please check:
That your router allows outbound connections on ports 80/443.
That no firewall rules are blocking your PC.
That the PC can reach your ISP gateway (for example: ping -c1 192.168.1.1).
Once your network allows normal outbound traffic, the time sync helper will work automatically.
Sorry to you and everyone for wasting everyone’s time.
It was true that this computer had a misconfiguration in the router, I fixed it and the time sync helper worked fine.
Thanks for confirming. This is a good reminder that if setdatetime-helper fails, the first step is always to verify outbound network and DNS reachability - otherwise the helper has no way to fetch time. Glad you got it resolved.
I followed your instructions. The problem is that after I click update and then it fails, there is no way to prevent the reboot. It automatically reboots on it’s own. I waited 5 seconds into the 15 second countdown to click send logs.
It is neccessary to add dtoverlay=dwc2, dr_mode=host to /boot/userconfig.txt as per Argon documentation in order to enable USB audio device and get audio output on 3.5mm jack and mic input on pi5. (Argon suggest adding this lines to /boot/config.txt but since that file is managed by volumio it’s better to add it to /boot/userconfig.txt
# Use userconfig.txt because /boot/config.txt is managed by Volumio
CFG="/boot/userconfig.txt"
sudo sed -i '/^dtoverlay=dwc2/d;/^dr_mode=/d' "$CFG" 2>/dev/null || true
echo 'dtoverlay=dwc2,dr_mode=host' | sudo tee -a "$CFG"
After reboot volumio displays usb output device in Playback options → Output device right below HDMI output. You can verify if usb device is recognized with lsusb command or aplay -l
bash-5.2# lsusb
Bus 001 Device 003: ID 0d8c:0014 C-Media Electronics, Inc. Audio Adapter (Unitek Y-247A)
Bus 001 Device 002: ID 1a86:8091 QinHeng Electronics USB HUB
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
bash-5.2# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: vc4hdmi0 [vc4-hdmi-0], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: vc4hdmi1 [vc4-hdmi-1], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 5: Device [USB Audio Device], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
bash-5.2#
It is important NOT to use ethernet (wired) and wifi at the same time since this will crash Volumio 4.027 during initial setup.
Don’t select I2S interface as volumio output device since Argon One v5 has USB DAC and NOT I2S.
I am experiencing a recurring issue that I can finally pin down. On my Pi5 booting on NVME and 4.0.28, and going back to maybe as far as 4.0.21, I would have intermittent loss of library. I’ve cleaned up non-audio files using “ignore file” and the issue persists. In the midst of troubleshooting this, I’ve gone thru a number of things such as power supply, cabling and OTA and fresh install direct on the NVME and everytime I rebooted on 4.0.28, I’d lose all my track listings but the NFS shares still showed. I ran the log thru ChatGPT and it suggested that the way the mounts are being done wasn’t to NFS format, but that isn’t issue as I have the same format for NFS shares on a Pi4 and PC and both of those have no issues with their libraries and reboot. However, ChatGPT gave me a few commands to run and when I ran them after deleting the shares, I saw no results. This was after an OTA update.
Afterthat I flashed 4.0.28 fresh onto the NVME direct and the issue persists, but I didn’t delete the shares, and instead ran these commands and the tracks listings popped back up.
I really have no idea what’s going and why it is isolated to my Pi5, as well as why these commands bring up my track listings again…but I have duplicated the situation exactly a few times now before reporting. Here’s a log after the track listings were brought back up after running those commands so I’m not sure how helpful it’ll be.
EDIT: I’ve ran the log thru ChatGPT and referencing the 3 commands that worked to bring it back up and this is what it says…specifically for #3 tho, it is something I am familar with [hard mounting shares] but I think I read somewhere, maybe this thread that it is not the recommended way. Sharing my my findings and hoping to hear from @nerd before I start applying fixes that won’t work:
What the log shows
System is Volumio 4.028 on Bookworm / kernel 6.12 (Pi 5). Volumio Logs
On boot, MPD is not ready (“MPD error: Connection refused”), then it’s (re)started a few seconds later. That usually happens when the library paths aren’t available yet when MPD first comes up. Volumio Logs
That sequence lines up with what you see: after a reboot, your NAS shares mount a bit after MPD/Volumio starts, so MPD boots with empty / missing music directories and prunes the DB. When you run:
you force a clean rescan after the shares are already mounted, so everything reappears.
Root cause
A boot-order / race condition: MPD (and Volumio’s library service) start before your NFS mounts are up, so the library is emptied on boot. Afterward, a manual restart + rescan fixes it because the mounts are finally available.
Fix (do all 3 if you can)
1) Tell Volumio to wait for the network at boot
In Settings → Network, enable “Wait for network” and set a delay (start with 15–20 s).
This alone often solves it.
2) Make MPD depend on your NAS mount points
Create a small systemd “drop-in” for MPD so it only starts once the mounts exist.
sudo systemctl edit mpd.service
Paste this, replacing the example mount paths with yours:
[Unit]
Wants=network-online.target remote-fs.target
After=network-online.target remote-fs.target
# Ensure these mount points exist before MPD starts:
RequiresMountsFor=/mnt/NAS/DSD_Music /mnt/NAS/FLAC_Music /mnt/NAS/MP3_Music /mnt/NAS/NOW_FLAC
If you use different mount paths, list those exact directories in RequiresMountsFor=.
3) Mount NFS with systemd-aware options (recommended)
If you’re mounting via /etc/fstab (instead of only through the Volumio UI), add _netdev and x-systemd.automount so systemd understands the dependency and auto-mounts on first access.
EDIT2: I have taken a short vid of the boot up sequence where I’ve been noticing errors before botoup, it’s a little hazy, but I think I got 2 lines of it and I believe I have seen instances where 3 lines came up but it’d continue with bootup regardless:
[FAILED] Failed to listen on Music Player Daemon Socket
[FAILED] Failed to on - Music Player Daemon
Thanks again for the thorough breakdown and logs. You’ve done the right kind of testing here, and I’ve reviewed everything you shared - including the logs, boot behavior, and the reasoning behind the recovery steps.
At a high level, the symptoms do suggest a boot-time race condition: the music library appears empty after startup, yet is recoverable once the system is fully up. This strongly implies that the backend attempts to index or validate the music sources before the NFS shares are properly available. That much aligns with your findings.
However, let’s clarify a few key points based on how Volumio is designed:
1. MPD and mounts are not managed by systemd
While on general-purpose Linux systems, using systemctl edit mpd.service or RequiresMountsFor= might be standard practice, that logic does not apply to Volumio.
The Volumio backend is what controls MPD’s lifecycle - it handles start, stop, restart, and even socket management.
The same goes for network mounts. These are not handled through /etc/fstab, autofs, or systemd.mount units. Volumio mounts shares dynamically through its own logic based on configuration JSON files and backend triggers.
So while the workaround you found may temporarily resolve the symptom, any changes to systemd unit files or fstab will:
Conflict with the backend logic
Be overwritten or ignored in future updates
Risk introducing silent breakage, especially during OTA or plugin initialization
2. The real blocker: Shared backend across 3.x and 4.x
Here lies the core problem: the backend is still shared between the Buster-based Volumio 3 and the Bookworm-based Volumio 4 builds. This design limits what we can cleanly change right now.
The existing backend assumes certain timing behavior that no longer holds true on newer platforms (e.g., Pi5 + NVMe boot, kernel 6.12+, modern systemd boot).
Because mount readiness and service launch order are still tied to this older logic, we cannot yet introduce service-level dependency tracking or enforce backend-aware startup guards - at least not without risking regressions for existing Volumio 3.x OEM builds.
This is why we’re not yet able to restructure the mount and library service startup order. Any fix at this stage has to wait until we complete the ongoing networking rework, which is a required prerequisite for touching anything that depends on online state, including remote mounts.
3. What happens next
I’ve added this to the backend rework backlog. Once networking is fully decoupled and Bookworm-specific behavior can be targeted independently, we’ll revisit:
Backend-triggered mount validation
Deferred MPD/lib scan startup until NFS availability is confirmed
Possible guardrails to avoid early library pruning
In the meantime, your current recovery approach although works, is unsafe, I recommend avoiding any persistent systemd or fstab overrides - they will not interact with Volumio’s backend in a reliable or update-safe way.
I followed this with interest, and there is a report from a customer having the same issue. I think I’ve pinpointed the issue. I will follow up privately on this. We can do a new build with a proposed fix and see if that works