I was disappointed to see that my Pi 5 running Bookworm OS didn’t save my Alsamixer audio settings past the reboot, even after adjusting the settings and typing:
sudo alsactl store
I troubleshooted this from several angles with the help of Copilot AI. I downloaded pavucontrol with:
sudo apt install pavucontrol
However, I did not see the settings I wanted in pavucontrol, so I then went back to alsamixer, adjusted the settings, and saved the settings again with sudo alsactl store. And then the settings were saved after the next reboot!
So downloading pavucontrol may have compelled Alsamixer to actually store its settings, however I have not yet attempted to replicate these steps. If anyone else is struggling with this issue on a Raspberry Pi 5 running Bookworm, please give it a shot and let us all know if that fixed the issue.
The other thing I tried was typing:
sudo chmod 644 /var/lib/alsa/asound.state
however that didn’t seem to make a difference on its own. I can’t yet completely rule out if that helped. I entered that prior to downloading pavucontrol.
I don’t think this is limited to Pi 5. I am struggling with a 32-bit Pi 4. I started over with a clean install of Bookworm without any applications and had the same results.
However, when I added pavucontrol, only the “Speaker” setting seems to be stable. That was just the opposite of what I was seeing before.
There is a thread on groups.io discussing this, but no resolution.
I am now attempting to wrap my brain around the new OS Trixie. Pavucontrol has no affect on the alsamixer settings. But I did find some instructions that work:
Simply writing sudo alsactl restore in that bash file works for the purpose of restoring the alsamixer settings post reboot, but it results in two error messages displaying in the terminal whenever it’s opened.
Changing the command in the bash file to this fixes the errors:
sudo alsactl --no-ucm restore
By the way I did try the instructions in the techie-show website exactly as described, and it would not accept the -file command. Anyway, the method I described is currently working.