How to get hardware volume control working (Rock64 + iFi ZEN DAC)

Did any of you guys get the ZEN DAC working with volumio using the hardware mixer for volume control?

What is you problem?
My goal is to be able to adjust the volume from the Spotify App via Spotify Connect. When I try to use the hardware mixer (which is supported by the DAC) for volume control this doesn’t work.

What does work?
After connecting over Spotify Connect and setting the iFi ZEN DAC as hardware mixer I am able to adjust the volume in the Spotify app. This causes the volume to change accordingly in the Volumio UI. This change in the UI doesn’t adjust the actual volume.

What did I try?

  • turn volume normalization off in all places: system pref., spotify connect plugin, spotify app
  • set Volume Curve Mode to Natural / Linear
  • set MPD Client Volume Control to On / Off
  • check TOML config file over SSH but couldn’t spot anything weird

Did you see anything relevant in the logs when switching from software (working) to hardware mixing?

Apr 02 07:42:16 jobio volumio[765]: info: Updating Volume Controller Parameters: Device: 3 Name: iFi (by AMR) HD USB Audio Mixer: iFi (by AMR) HD USB Audio  Max Vol: 100 Vol Curve; logarithmic Vol Steps: 10

Apr 02 07:42:16 jobio volumio[30630]: [Vollibrespot] : Failed to register IPv6 receiver: Os { code: 19, kind: Other, message: "No such device" }
Apr 02 07:42:16 jobio systemd[1]: Started Music Player Daemon.
Apr 02 07:42:16 jobio sudo[30574]: pam_unix(sudo:session): session closed for user root
Apr 02 07:42:16 jobio volumio[765]: error: updateQueue error: null
Apr 02 07:42:20 jobio volumio[765]: info: VolumeController::SetAlsaVolume38

Apr 02 07:55:44 jobio volumio[765]: ---------------------------- MPD announces state update: mixer
Apr 02 07:55:44 jobio volumio[765]: info: ControllerMpd::getState
Apr 02 07:55:44 jobio volumio[765]: verbose: ControllerMpd::sendMpdCommand status
Apr 02 07:55:44 jobio volumio[765]: [SpotifyConnect] <Volume> 53.9986266880293
Apr 02 07:55:44 jobio volumio[765]: [SpotifyConnect] Volume: Spotify:53.9986266880293 Volumio: 54
Apr 02 07:55:44 jobio volumio[765]: info: CoreStateMachine::pushState
Apr 02 07:55:44 jobio volumio[765]: info: CoreCommandRouter::volumioPushState
Apr 02 07:55:44 jobio volumio[765]: info: CoreCommandRouter::executeOnPlugin: volumiodiscovery , saveDeviceInfo
Apr 02 07:55:44 jobio volumio[765]: verbose: ControllerMpd::parseState
Apr 02 07:55:44 jobio volumio[765]: info: ControllerMpd::pushState
Apr 02 07:55:44 jobio volumio[765]: info: CoreCommandRouter::servicePushState
Apr 02 07:55:44 jobio volumio[765]: info: CoreStateMachine::pushState
Apr 02 07:55:44 jobio volumio[765]: info: CoreCommandRouter::volumioPushState
Apr 02 07:55:44 jobio volumio[765]: info: CoreCommandRouter::executeOnPlugin: volumiodiscovery , saveDeviceInfo
Apr 02 07:55:44 jobio volumio[765]: info: CorePlayQueue::getTrack 0
Apr 02 07:55:44 jobio volumio[765]: info: Received update from a service different from the one supposed to be playing music. Skipping notification.Current webradio Received mpd
Apr 02 07:55:44 jobio volumio[765]: info: ------------------------------ 32ms

Thanks in advance for taking your time to read this!

There is a post in the DAC compatibility list that this DAC doesn’t work with hardware control