You are not logged in.
Hey everyone,
this drives me absolutely crazy, since it makes this device unusable for me, for both business and private use. At varying intervals (sometimes a few seconds, sometimes every few minutes, sometimes but seldomly everything just works for 1-2 hours), the speaker volume of my laptop is being reset to a specific value. The value, however, also changes *sometimes*. Yesterday it was 93%, since a few hours it always resets to 85%, etc.
I'm using a Lenovo X1 Carbon Gen11 with Raptor Lake CPU, using an Realtek ALC287 audio chip which is managed by the snd_sof_intel_hda family of kernel modules. I'm on i3 and a rather slim software setup in general, even though I tried to rule out other programs which may cause this, as listed below.
There is no real way to forcefully reproduce it, it just happens. I see the sudden volume change in the "Master" channel of alsamixer as well as the "Raptor Lake-P/U/H cAVS Speaker" channel in pavucontrol. It doesn't make a difference if audio is played at that time or not.
I have one interesting find: According to pavucontrol, I have two microphone devices: Analog Stereo and Digital microphone (whereas only the last one seems to be relevant for me and actually shows signal level changes in pavucontrol). When the volume reset happens I can see a short but clear spike in the Analog Stereo Mic, before it goes back to not registering anything, as usual. So these events may be coupled.
What I tried so far:
Killed all GUI applications and most daemons one by one and observed the behavior. Rebooting changes nothing.
Told wireplumber to disable the Analog Stereo microphone via config file (which seems to work since it then disappears from pavucontrol), but the volume resets remain.
Deleted ~/.local/state to clean up wireplumber
Checked if there are any non-default ALSA, pipewire or wireplumber configs, either system-wide or user-specific
All kinds of possibilities to trigger the reset manually, including manually changing audio/volume settings, playing with different applications, exposing the laptop microphones to loud noise, force mechanical pressure on all possible areas of the case/mics/keyboard/etc. It seems to happen randomly.
Try ALSA to stick to a particular level with alsactl store
Try to disable the Digital Mic with hdajackretask, but that shows only a single one
Monitor the resets with pactl subscribe, alsactl monitor and the journalctl entries of wireplumber. I see them, especially with pactl, but that doesn't tell me the source.
The pactl log is always like the following listing. That doesn't tell me much, but it's always more than one event in a row.
Event 'change' on card #48
Event 'change' on sink #62
Event 'change' on server #4294967295
Event 'change' on card #48
Event 'change' on card #48
Event 'change' on server #4294967295Sink #62 are essentially the speakers, which correspond to the ALSA device string
alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Speaker__sinkI don't really know what server #4294967295 is about but since that's 2^32-1 (or 0xFFFFFFFF) it looks a bit weird to me, but I have no idea if that's abnormal behavior.
Thanks in advance.
Anyone who quotes me in their sig is an idiot. -- Rusty Russell
Offline