I am having trouble with DSD playback on my Roon setup and would appreciate any guidance you can offer. I have already consulted the DAC’s manual and tried several troubleshooting steps, but the issue persists.
My Setup
Roon Core: Running on a WindowsPC.
Roon Endpoint (Bridge): Raspberry Pi 4B
OS on Pi: RoPieee (version 2025.06.1)
DAC: S.M.S.L D300 (connected to the Pi’s USB port)
Amplifier & Speakers: Marantz PM6006 and DALI OBERON 3
The Problem
I am unable to get successful DSD playback from my Roon Core to the S.M.S.L D300 via the RoPieee endpoint.
When I set the DSD Playback Strategy to “Native DSD” in Roon’s Device Setup, I hear a continuous hissing sound instead of the music.
When I switch the DSD Playback Strategy to “DSD over PCM (DoP)”, there is no sound at all (complete silence).
Playback of standard PCM files (e.g., FLAC) is bit-perfect and works without any issues.
The issue also occurs when I use the DSP Engine to convert PCM files to DSD.
Troubleshooting Steps Taken
I have confirmed the S.M.S.L D300’s specifications from the manual, which explicitly state support for USB connectivity on Linux, with Native DSD and 32-bit PCM playback.
I am running the latest version of RoPieee (2025.06.1). The RoPieee XL features (like HQPlayer NAA, AirPlay, etc.) are all active in the web interface, so the correct version is installed.
I have rebooted both the Raspberry Pi and the S.M.S.L D300 multiple times.
I have tried connecting the D300 to both the USB 2.0 (black) and USB 3.0 (blue) ports on the Raspberry Pi 4B.
I have confirmed that the issue is specific to DSD playback and does not affect PCM files.
I am at a loss as to why the DSD playback fails in both “Native DSD” and “DoP” modes. It seems to be a compatibility issue between RoPieee’s USB driver and the DAC’s firmware, but I’m not sure how to fix it.
Has anyone encountered a similar issue with the S.M.S.L D300 or another DAC on a Raspberry Pi running RoPieee? Any advice or suggestions would be greatly appreciated.
Your Device setup screen Volume control setting reads Device Volume.
Please set it to Fixed volume instead and see if that fixes your issue.
P.S.:
I highly doubt, that upsampling or PS choice cause what you’re experiencing, as processing speed is at 1.9x and no stuttering or Ropieee dropping off the network are reported.
I had considered the ‘device volume’ being set, but I checked and if RoPieee is set to fixed, Roon still can show ‘device volume’ but actually is fixed within Roon.
Funny thing, I have set RoPieee to not be fixed volume and Roon is still set as device volume, but still is fixed volume
I’ve set everything as per @myonmyon and I cannot recreate the issue.
So I can only think of 2 possible causes (maybe 3)
RoPieee doesn’t like the D300
power supply isn’t big enough (I’ve had issues before)
Maybe 3) the D300 only accepts DSD512 via Windows and not Linux
My DACs only support up to DSD256 so I cannot test any other theories I have.
Me playing a 16/44.1 upsampled to the exact settings, although DSD256 shows a processing figure of 4.3x
I suggest you first narrow it down. Native DSD, especially on Linux, is a challenge of its own. Which in sometimes we’re able to solve.
But first things first: make sure you get DoP working. That should work, and if that’s the case we might look into native. As RoPieee supports 3 other SMSL DAC’s, that sounds possible.
To be able to do DoP make sure you: don’t use volume control or any kind of DSP. Just straight to the DAC.
If you (try to) play a sample, you can then send me feedback afterwards so I can have a closer look what’s happening under the hood.
thanks
I’ve just had a look in the documentation: which is a little bit unclear, but can you make sure tto test it with DSD64 when doing DoP? And nothing higher?
I tried duplicating your settings, albeit with the lower order Pi Zero2 (same Ropieee release over Ethernet) and USB to SMSL DL200 and all is working fine up sampled to 512 on Roon Server hosted on Linux Mint.
Good news! The necessary USB descriptors are presented by your DAC, so I’m able to patch the Linux kernel in RoPieee which should make native DSD possible.
That’s not a 100% guarantee it will work, but a 90%, so that’s rather hopeful.
I’ll prepare a beta release for you the coming days that you can test.
I was a little bit too quick in my judgement (and confidence). The D300 uses the same identification as the M300, which does support native DSD.
I’ve now also checked the logs from Roon Bridge, and indeed it sees that the DAC is capable of doing native DSD, as being properly advertised.
So there’s nothing for me to patch: everything is in place to be able to do native DSD.
If you can’t get a sound when sending native DSD (I would try DSD128 to begin with), with everything related to DSP in Roon completely disabled, then the only thing I can think of that there’s something wrong within the firmware of the DAC.