Volumio won't play DSD native

while plaing DSD DoP (DSD plays):
http://logs.volumio.org/volumio/cUgQW1u.html

HiByMusic player android plays normally native DSD

You can’t play DSD with DSP enabled. It’s technically impossible.

Today I disabled and deleted DSP, then rebooted, and turned off the volume mixer. Still native DSD does not play - outputs 384k to PCM and sometimes the music stutters. via DoP only up to DSD128, although on Android natively DSD256 plays smoothly.

What kind of HW are you using?

raspberry pi4 and aiyima a 80. connect USB
http://logs.volumio.org/volumio/5ZCKOqG.html

{…Mains.dsf",“trackType”:“dsf”,“seek”:61501,“duration”:197,“samplerate”:“11.28 MHz”,“bitdepth”:“1 bit”,“channels”:2,“random”:true,“repeat”:true,“repeatSingle”:false,“consume”:false,“volume”:100,“dbVolume”:null,“disableVolumeControl”:true,“mute”:false,“stream”:“dsf”,“updatedb”:false,“volatile”:false,“service”:“mpd”}

I installed Android and HiByMusic player - plays normally native DSD 256 . Aiyima reports that the sound is dsd 256, I change the image to Volumio there the same tracks are output in PCM 384k. If I switch from DSD Direct to DoP then there is no sound. I do not change anything hardware, only the OS image.

lsusb ---------------

Bus 002 Device 002: ID 174c:1156 ASMedia Technology Inc.
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 262a:0001
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 001 Device 003: ID 262a:0001 ???

it’s confusing that nothing is written in this line
(other people with other equipment have the name of the audio device in the line),
and this is exactly my SA9137L in Aiyima A80

volumio@volumio:~$ cat /proc/asound/card*/stream0
Pawpaw USB HIFI Audio at usb-0000:01:00.0-1.4, high speed : USB Audio

Playback:
  Status: Stop
  Interface 2
    Altset 1
    Format: S16_LE
    Channels: 2
    Endpoint: 0x03 (3 OUT) (ASYNC)
    Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000
    Data packet interval: 125 us
    Bits: 16
    Channel map: FL FR
    Sync Endpoint: 0x84 (4 IN)
    Sync EP Interface: 2
    Sync EP Altset: 1
    Implicit Feedback Mode: No
  Interface 2
    Altset 2
    Format: S24_3LE
    Channels: 2
    Endpoint: 0x03 (3 OUT) (ASYNC)
    Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000
    Data packet interval: 125 us
    Bits: 24
    Channel map: FL FR
    Sync Endpoint: 0x84 (4 IN)
    Sync EP Interface: 2
    Sync EP Altset: 2
    Implicit Feedback Mode: No
  Interface 2
    Altset 3
    Format: S32_LE
    Channels: 2
    Endpoint: 0x03 (3 OUT) (ASYNC)
    Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000
    Data packet interval: 125 us
    Bits: 32
    Channel map: FL FR
    Sync Endpoint: 0x84 (4 IN)
    Sync EP Interface: 2
    Sync EP Altset: 3
    Implicit Feedback Mode: No
  Interface 2
    Altset 4
    Format: SPECIAL
    Channels: 2
    Endpoint: 0x03 (3 OUT) (ASYNC)
    Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000
    Data packet interval: 125 us
    Bits: 32
    DSD raw: DOP=0, bitrev=0
    Channel map: FL FR
    Sync Endpoint: 0x84 (4 IN)
    Sync EP Interface: 2
    Sync EP Altset: 4
    Implicit Feedback Mode: No
type or paste code here

After checking the linux usb audio driver, I can confirm that DSD native is not supported with device 262a:0001.
The manufacturer should register the device in the official kernel, which he did not.
Whether the device can be added manually, and for which platforms, depends on the Volumio core team (@Darmur ?).
All kernel changes the Volumio Team does manually, need future maintenance. So this is not just a matter of requesting it.

1 Like

unfortunately the manufacturer of your DAC did not register the device in the official linux kernel for DSD support, that’s why you don’t get DSD playback with Volumio.

This is not a fault of Volumio, but a (quite common) lack from the manufacturer.

For overcoming this problem, we patch the official Linux kernel for adding DSD support to additional DACs, we will try to do the same for your device in the future releases (no ETA)

For this specific DAC, it might be more difficult than usual, because it makes use of an exotic IC from Savitech, and without having HW in our hands it will be hard to verify if the changes to the official Linux kernel are working properly.

1 Like

Thank you, if necessary I am ready to test test firmware releases on my equipment at least every day.

Can anyone identify this hat? Said to do native DSD but I can only get DoP /PCM . Meant to work with Volumio natively with DSD

Thanks

Interesting @SteveG . I don’t know what it is, but I’ve found listings for it on Amazon, AliExpress and other sites, and a similar version in Audiophonics:

Looks like it’s using a PCM5122 . No manufacturer listed. And on the Audiophonics site, they recommend using “RPI DAC” Overlay driver.

1 Like

So unable to get native DSD from it then? or until someone supports it?
I just want to use it as a streamer

Have you tried using the mentioned overlay? And if so, please let us know how it goes!

I’m super new to the Pi world. How do I add the overlay? I did select the generic I2S Hat

Hi,

You select it from the drop-down menu. Here’s a screenshot:

This is what I think Audiophonics refers to on their note on their link as “To make this module work with a Raspberry Pi, you need to use the RPI DAC overlay driver (Moode Audio, Volumio, piCorePlayer, RuneAudio).”

Hope it works!

1 Like

Awesome thank you (I think I tried it, but at work at the moment so will try when I get home)

I appreciate the help

1 Like

So with this, I get DSD to PCM at 176.4kHz. No option in Roon for native DSD only PCM and DoP

you won’t get native DSD on a RPi using a I2S HAT

the I2S interface of the RPi does not support DSD direct mode

on RPi, the only option for DSD Direct is using a USB DAC or DDC (Digital-to-Digital converter)

1 Like

Please include this i2s hat for future updates!

I’m just wanting a streamer that can output native DSD then into a DAC not having the Pi as a DAC. I2S would be ideal.

But what other hats or what USB?