Hi,
Thanks to all who have reported this issue. Since I am the one who discovered and fixed the bug, I feel entitled to share some thoughts and opinions in the matter hopefully without offending anyone.
-
Roon is not to blame for this issue. Period. Asking them to implement a workaround is like putting a band aid on an infected wound. As long as the root cause of the issue (mind you - one line of XMOS code) is not fixed there is no point to it.
You can also look at the bigger picture; Just imagine that every company providing Roon-like streaming solutions with USB playback must implement such patches to cover up underlying issues…No Go.
Think of it as an ever-present hidden bug that has surfaced in the field with evolving use cases because the part of the bugged XMOS code is now being addressed more often. Different behavior is seen on different platforms because they use the same system in a different way. Which means other platforms can encounter this issue in the future just as likely. -
I have noticed some of you have magically sympathetically reasoned towards a timing issue or even brought USB compliance into the equation. Again, one simple line of code causes the XMOS stack to crash because it tries to read and write in an illegal memory region. This action takes place in a section (which is indeed part of the USB audio framework) where the XMOS stack is asked to switch bit rate. No magic involved.
-
My hat off to the XMOS team. They have provided hundreds of (small) companies with a superb software reference design to derive their own implementation from with a relatively spectacular low investment of time and money. Countless lines of provided code working flawlessly to stream your favorite music with one line missing – Sue Them!.. Not.
-
My biggest concern is for the people who have bought products from companies that implemented the XMOS technology in a me-too product that lack the desire or ability to fix this simple issue in the field. Some of them might even rely on a third party to fix that for them.
To anyone who encounters this issue, contact your product vendor. If your vendor states its device is not supporting Linux, they are hiding and hoping for the storm to pass. Good riddance to manufacturers who do not stand behind their product, especially when the (not so easy to find) solution is spoon fed to them. In case one of these vendors is willing but incapable of implementing this fix, they can contact me to see If I can help them out.
Cheers,
Bart van der Laan
Kii Audio