Hi, on an RPi 3B+ with AMP2 running 4.14.93-v7+, the ALSA mixer behaves weirdly. If I set mixer values for the "Digital" control programmatically, I get "Input/output error" from snd_mixer_selem_set_playback_dB(elem, chlist[i], chval[i], val). With "amixer sset Digital 60%" on the command line, the first time I set a new value it claims it fails ("Invalid command!", the second time it apparently succeeds.
In fact, each attempt actually succeeds the first time (I'm running "watch amixer sget Digital" on another console and the value changes immediately), but the error message is irritating. Can other HifiBerry users reproduce this? It might hint at some corner-case bug in the driver, or in libasound...
2 comments
-
HiFiBerry team I haven't seen this before. I never tried to use the ALSA C API, but with the amixer command line tools, I never saw this issue.
One thing you can try is using another kernel version on see if the behaviour stays the same in your setup.We have compiled an 4.18 kernel for the DAC+ ADC that will also work with the AMP2 (it is a "normal" Raspberry Pi kernel, the DAC+ ADC driver has not been added to 4.14, therefore it's an 4.18).
Best regards,
Daniel -
nettings I guess that one was faulty hardware. It happened on the AMP2 that was displaying this weird whistling coil noise, which has since died (it sets the Pi into a boot loop probably because something's wrong with the power). On the other AMP2 I have here the behaviour is as expected, so I guess it's a hardware glitch. I'll send you a ticket when I get around to it. Thanks for your help anyways!