Hifiberry DAC+, no hardware volume

Hello,

I have a RaspberryPi 2 with the HiFiBerry DAC+ installed, in Volumio everything works OK except the hardware volume control. If I set the volume control to “Software” it works, but with “Hardware” the value is always 100%.

pi@volumio:~$ uname -a
Linux volumio 3.18.5-v7+ #748 SMP PREEMPT Wed Feb 4 21:33:52 GMT 2015 armv7l GNU/Linux
pi@volumio:~$  aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sndrpihifiberry [snd_rpi_hifiberry_dacplus], device 0: HiFiBerry DAC+ HiFi pcm512x-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
pi@volumio:~$  amixer
Simple mixer control 'Playback',0
  Capabilities: volume
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: 0 - 1
  Front Left: 1 [100%] [0.00dB]
  Front Right: 1 [100%] [0.00dB]
...
Simple mixer control 'Digital',0
  Capabilities: pswitch
  Playback channels: Front Left - Front Right
  Mono:
  Front Left: Playback [on]
  Front Right: Playback [on]
pi@volumio:~$ more /etc/mpd.conf
...
audio_output {

                 type           "alsa"
                 name           "Output"
                 device         "hw:0,0"
                 mixer_control  "Playback Digital"
                 mixer_device   "hw:0"
                 mixer_index    "0"
                 dop    "no"

}

and in dmesg I have the following lines:

[    4.462879] snd-rpi-hifiberry-dacplus sound: ASoC: CPU DAI (null) not registered
[    4.462941] snd-rpi-hifiberry-dacplus sound: snd_soc_register_card() failed: -517
[    4.462972] platform sound: Driver snd-rpi-hifiberry-dacplus requests probe deferral
[    4.508169] snd-rpi-hifiberry-dacplus sound: ASoC: CPU DAI (null) not registered
[    4.513331] bcm2708_i2c 3f804000.i2c: BSC1 Controller at 0x3f804000 (irq 79) (baudrate 100000)
[    4.533334] snd-rpi-hifiberry-dacplus sound: snd_soc_register_card() failed: -517
[    4.545806] platform sound: Driver snd-rpi-hifiberry-dacplus requests probe deferral
[    4.568040] snd-rpi-hifiberry-dacplus sound: pcm512x-hifi <-> 3f203000.i2s mapping ok

Anyone can help me fixing this issue?

Thanks
Luca

Hi Luca,

It should work. Using the web interface, all you have to do is:

configuring (Volumio 1.55)

Menu > System > I2S Dac : Hifiberry +

Save & Reboot

I have the following:

[code]volumio@audio359:~$ tail -n 12 /etc/mpd.conf

audio_output {

	 type 		"alsa"
	 name 		"Output"
	 device 	"hw:1,0"
	 mixer_control 	"Playback Digital"
	 mixer_device 	"hw:1"
	 mixer_index 	"0"
	 dop 	"no"

}
[/code]

A 1 where you have a 0.

Both the aplay and amixer give no result.

HTH,

Sven

Your kernel is a newer than mine (stock 1.55):

volumio@audio359:~$ uname -a Linux audio359 3.12.26+ #702 PREEMPT Wed Aug 6 17:43:49 BST 2014 armv6l GNU/Linux

Have a look at this older thread: https://volumio.org/forum/volume-control-with-hifiberry-dac-t2452.html

It seems to me that the “Simple mixer control” named “Digital” and “Playback” in amixer output lack the pvolume capability, and also the Limits values aren’t correct, because my values are 0 and 1, and from what I saw in other threads the correct values are 0- 255

Volumio is configured correcly, and the output works with software volume. In mpd.conf I think that the number 0 or 1 is related to the physical interface address, in my system the HiFiBerry is card 0 (from output of aplay -l).

My mpd.conf is the same as the one suggested in the other thread, so I really do’nt understand. Cound be a kernel issue?

Luca,

I guess very few people understand all those config files and their interactions, Volumio combines many options.

All I know is that for our Audio 359 Player/Streamer, which consists of a Raspberry Pi B+ and a HifiBerry DAC+, we just put Volumio 1.55 on a fresh SD card and only do “Menu > System > I2S Dac : Hifiberry +” followed by a Save & Reboot. After that HW volume control works normally.

Sven