Volume level changing by itself

Hello everyone.
I am using an OpenSUSE Tumbleweed with Gnome DE on a laptop probably no one of you know (a “JDM” machine I’ve bough during my vacation, a Mouse convertible without proper name, partnumber BC-MB1485UD11A-191), and it is surprisingly good experience except for some minor problems I’ve already worked around.
BUT one issue persists, and it is quite annoying: volume level changes itself up and down all the time. It’s not flataudio or whatever that’s called properly, it’s like reacting to me pressing a volume up/down hotkey, except that I am not. Showkey and similar software shows a corresponding hotkey being pressed and lifted by itself, when I just leave my laptop lying to see what happens.
I’ve came across Arch forum thread where they had a somewhat similar problem and traced it down to peaq_wmi and input_polldev modules, but that bug was allegedly fixed in 4.14.smth kernel, and I am on 5.3.12-2. Blacklisting that 2 modules didn’t change anything for me.
So, where should I look next?

Hi and welcome to the Forum :slight_smile:
A bug report for sure against the kernel and peaq_wmi module.

See here: openSUSE:Submitting bug reports - openSUSE

Post the bug report number here as well :wink:

Thank you.
I marked that I blacklisted that module and the problem is still present, so I do not think it is to blame here.

Hi
Can you un-blacklist it, rebuild initrd. Create a test user and login as that user, does it duplicate?

Pulse has a setting in
/etc/pulse/daemon.conf which may be affecting you.

You could try setting that to no and see if that behaviour is more desirable.

flat-volumes - scales the device-volume with the volume of the “loudest” application. For example, raising the VoIP call volume will raise the hardware volume and adjust the music-player volume so it stays where it was, without having to lower the volume of the music-player manually. Defaults to yes

Oh Wait I see you’re saying it’s not flataudio which I assume is pulse flat-volumes so sorry I guess that’s not the issue you’re experiencing.

Yes, I meant flat-volumes, sorry. This is the first suggestion I’ve found googling and it’s set to “no” for about 2 weeks now, but the volume level still jumps around every 2-5 minutes.

I’ve used the laptop with BT headphones just to be sure, the issue persists. Showkey tells that keypresses with codes 154/153 corresponding to “volume down”/“volume up” are being registered. There are 2 standard ways to send them, via Fn+F7/F8 or via dedicated volume up/down buttons on the left side of the chassis (makes sense since it’s a convertible). Keycodes registered are identical for both variants. So the output device/interface/controller seems to not affect this in any way.

I’ve resurrected the Windows bootloader on this machine an tried to use it for about an hour, there were zero instances of volume changing without me pressing the needed keys, so it convinces me the laptop hardware is not to blame here, and the issue is Linux-specific.

I’ll try the suggestion for unblacklisting two mentioned above modules and creating a new user.

Hello and sorry for the delayed answer, been pretty busy at work.

I modprobed input_polldev successfully, but peaq_wmi gave an error:

modprobe: ERROR: could not insert 'peaq_wmi': No such device

Updated kernel with input_polldev, rebooted, still have the error above. Do you have any ideas about this?

Hi
You need to unblacklist the device and the rebuild initrd to ensure the boot process/udev rules etc can function. The try the test user.

I didn’t blacklist the device (not intentionally, at least), I only removed (synonymous to blacklisting as I understood) the modules with modprobe -r.

Actually I did, lol. Sorry, forgot some details in a hurry. I deleted that lines from /etc/modprobe.d/50-blacklist.conf and got the error above again.

Hi
Ahh ok :slight_smile: As suggested earlier, if it’s all stock packages, kernel is not tainted, then a bug report would be the best course of action.

I mean error when enabling kernel module:

modprobe: ERROR: could not insert 'peaq_wmi': No such device

However, it was present when I first created my user, so I assume submitting a bug report is the way here. But I am not sure against what yet, because peaq_wmi and input_polldev modules are not the cause.

Hi
But in your first post you indicated these modules, it’s likely a regression in the current kernel if that was the original cause back with the other kernel. Or re-open the bug report… what ever info was requested in the bug report will be needed as well :wink:

I did indicate them, but removing and disabling them did not change anything, for good or for worse. I am not even able to get peak_wmi back, not that I miss it very much since nothing seemed to break, but my volume still jumps around. With all this in mind, I do not think that my specific issue is related to peaq_wmi or input_polldev.

Hi
If you open settings -> sound, does the slider move around when the volume changes?

Can you post the output from;


pacmd list-sinks

I’m assuming it has HDMI output, if this is used, does the HDMI volume jump around too? I note bluetooth does :wink:

Yes it does.

➜  ~ pacmd list-sinks                                                                           MLo
1 sink(s) available.
  * index: 0
    name: <alsa_output.pci-0000_00_1f.3.analog-stereo>
    driver: <module-alsa-card.c>
    flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
    state: IDLE
    suspend cause: (none)
    priority: 9039
    volume: front-left: 25628 /  39% / -24.47 dB,   front-right: 25628 /  39% / -24.47 dB
            balance 0.00
    base volume: 65536 / 100% / 0.00 dB
    volume steps: 65537
    muted: no
    current latency: 37.76 ms
    max request: 6 KiB
    max rewind: 6 KiB
    monitor source: 0
    sample spec: s16le 2ch 44100Hz
    channel map: front-left,front-right
                 Stereo
    used by: 0
    linked by: 1
    configured latency: 40.00 ms; range is 0.50 .. 2000.00 ms
    card: 0 <alsa_card.pci-0000_00_1f.3>
    module: 6
    properties:
        alsa.resolution_bits = "16"
        device.api = "alsa"
        device.class = "sound"
        alsa.class = "generic"
        alsa.subclass = "generic-mix"
        alsa.name = "ALC256 Analog"
        alsa.id = "ALC256 Analog"
        alsa.subdevice = "0"
        alsa.subdevice_name = "subdevice #0"
        alsa.device = "0"
        alsa.card = "0"
        alsa.card_name = "HDA Intel PCH"
        alsa.long_card_name = "HDA Intel PCH at 0xa111c000 irq 149"
        alsa.driver_name = "snd_hda_intel"
        device.bus_path = "pci-0000:00:1f.3"
        sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
        device.bus = "pci"
        device.vendor.id = "8086"
        device.vendor.name = "Intel Corporation"
        device.product.id = "9dc8"
        device.product.name = "Cannon Point-LP High Definition Audio Controller"
        device.form_factor = "internal"
        device.string = "front:0"
        device.buffering.buffer_size = "352800"
        device.buffering.fragment_size = "176400"
        device.access_mode = "mmap+timer"
        device.profile.name = "analog-stereo"
        device.profile.description = "Analog Stereo"
        device.description = "Built-in Audio Analog Stereo"
        alsa.mixer_name = "Realtek ALC256"
        alsa.components = "HDA:10ec0256,152d1215,00100002 HDA:8086280b,80860101,00100000"
        module-udev-detect.discovered = "1"
        device.icon_name = "audio-card-pci"
    ports:
        analog-output-speaker: Speakers (priority 10000, latency offset 0 usec, available: unknown)
            properties:
                device.icon_name = "audio-speakers"
        analog-output-headphones: Headphones (priority 9900, latency offset 0 usec, available: no)
            properties:
                device.icon_name = "audio-headphones"
    active port: <analog-output-speaker>


Will have to test at home, my monitor at office does not have speakers. But I am pretty sure it will.

Hello, yes.

I noticed that after one of the last updates it changed behaviour slightly. Before it was completely random, now it happens a bit after I use the side volume buttons (resends the same signal, for example I press Volume Down and after couple of seconds it lowers volume one more time), when using Fn+F7/F8 to change the volume it does not happen. This might look like hardware buttons are faulty, but I do not get this behaviour in Windows, no matter how hard/light/at weird angles I press the side buttons to reproduce the issue. So I think the module which handles this embedded hotkeys or something might be at fault here. At least now it seems to not jump around ALL the time, so it is less distractive.

Hi
So what wmi modules are active?


lsmod | grep wmi

intel_wmi_thunderbolt    20480  0
wmi_bmof               16384  0
wmi                    32768  2 intel_wmi_thunderbolt,wmi_bmof