Roon Bridge cannot enable device on Debian 13 armhf (armv7l) with "Device not found" error, likely due to different ABI used on Debian 13 to solve the Year 2038 Problem (see https://www.debian.org/releases/trixie/release-notes/whats-new.en.html#bit-time-t-abi-transition and https://wiki.debian.org/ReleaseGoals/64bit-time).
Do note that downgrading my streamer to Debian 12 does make it work perfectly again, writing this just to shoo away the comments about my unusual setup using Roon on Docker on VM running RHEL on Proxmox VE.
That is a very specific and interesting hypothesis regarding the Debian 13 ABI transition and the Year 2038 problem.
Before we go down the rabbit hole of investigating ABI incompatibilities, we need to establish a stable baseline to rule out more common causes:
Can you please confirm that both the Roon Bridge on the Gustard and your Roon Server are running the latest Production 2.60 builds?
We recall from your previous ticket that your Roon Server is running in a virtualized/Docker environment. Have you been able to test this specific Debian 13 Bridge against a non-virtualized Roon Core (e.g., a standard Windows or macOS install) on the same network?
We need to be absolutely sure that this isn’t a network isolation/multicast issue (common in VM setups) before we start looking into OS-level library mismatches.
I attempted to reproduce this on a Debian 13 test setup on my end, and RoonBridge initialized correctly, but this may depend on the specific package snapshot in “Trixie” currently installed.
I wanted to take a deeper look at your logs to confirm the ABI mismatch, but I hit a snag: the timestamp you shared seems to be 09/03. Since we are currently in February, the system interprets this as March 9th, which hasn’t happened yet.
If you are willing to test Debian 13 again:
Could you check the system date/time on the host and endpoint machines to ensure it’s synced?
Please generate a fresh log set and let me know the exact timestamp of the failure.
For now, sticking to Debian 12 is definitely the stable choice.
It’s no problem for all other architectures except armhf/armel since other architectures are already using 64bit time_t (and for the case of i386, which is the only exception, they didn’t transition for compatibility’s sake since its only purpose starting from Debian 13 is for running legacy software) so it would work on your AMD64 system just fine. This ABI change only happened on armhf and armel only.
So to reproduce this issue you NEED device running Debian 13 armhf or armel (e.g. RPi1, early RPi2 with ARMv7 SoC, RPi Zero, or Zero W) (later RPi2s have newer SoC with ARMv8 cores).
BTW I did test it before with the time synced correctly, the issue was still there.
I do not have the arm device to test, so we’ve discussed this with our senior QA and development teams. The team is investigating some possibilities here and, as soon as that investigation is complete, we’ll be sure to follow up ASAP.
You have our apologies for the trouble here, and we’ve greatly appreciated your patience as we continue investigating this tricky issue. We’ll be in touch as soon as we can.