$ neofetch
OS: Pop!_OS 21.10 x86_64 
Kernel: 5.15.8-76051508-generic

I have two Bluetooth devices: a speaker SoundCore Boost and headphones EDIFIER W830BT.

When I'm trying to change the volume on headphones using system volume settings it does work. Headphones also have buttons on them for controlling volume and those buttons also work (they change system volume in Linux).

But on a Bluetooth speaker changing volume in Linux doesn't affect the actual volume. On the other hand, using volume buttons on the speaker does change the system volume in Linux (and the volume level bar in Linux changes as expected when I use the device's buttons).

Also, when I mute system volume in Linux it does affect the speaker (sound mutes).

Summarizing - Bluetooth devices work, sound plays, I can change volumes using devices' buttons but only the speaker volume can't be controlled via Linux system volume (except muting).

I removed and paired again the speaker but that didn't help.

For both devices, Output Device configuration is set to Hight Fidelity Playback (A2DP Sink).

The same speaker works well on macOS (changing system volume affects the speaker volume).

$ bluetoothctl devices
Device 00:22:37:59:E0:A5 SoundCore Boost
Device 5C:C6:E9:30:68:EA EDIFIER W830BT
$ bluetoothctl show
Controller 38:DE:AD:1B:85:90 (public)
    Name: xxxx
    Alias: xxxx
    Class: 0x007c010c
    Powered: yes
    Discoverable: no
    DiscoverableTimeout: 0x000000b4
    Pairable: no
    UUID: Message Notification Se.. (00001133-0000-1000-8000-00805f9b34fb)
    UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
    UUID: OBEX Object Push          (00001105-0000-1000-8000-00805f9b34fb)
    UUID: Message Access Server     (00001132-0000-1000-8000-00805f9b34fb)
    UUID: PnP Information           (00001200-0000-1000-8000-00805f9b34fb)
    UUID: IrMC Sync                 (00001104-0000-1000-8000-00805f9b34fb)
    UUID: Vendor specific           (00005005-0000-1000-8000-0002ee000001)
    UUID: Headset                   (00001108-0000-1000-8000-00805f9b34fb)
    UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
    UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
    UUID: Phonebook Access Server   (0000112f-0000-1000-8000-00805f9b34fb)
    UUID: Device Information        (0000180a-0000-1000-8000-00805f9b34fb)
    UUID: Audio Sink                (0000110b-0000-1000-8000-00805f9b34fb)
    UUID: Generic Access Profile    (00001800-0000-1000-8000-00805f9b34fb)
    UUID: Handsfree Audio Gateway   (0000111f-0000-1000-8000-00805f9b34fb)
    UUID: Audio Source              (0000110a-0000-1000-8000-00805f9b34fb)
    UUID: OBEX File Transfer        (00001106-0000-1000-8000-00805f9b34fb)
    Modalias: usb:v1D6Bp0246d053C
    Discovering: no
    Roles: central
    Roles: peripheral
Advertising Features:
    ActiveInstances: 0x00 (0)
    SupportedInstances: 0x05 (5)
    SupportedIncludes: tx-power
    SupportedIncludes: appearance
    SupportedIncludes: local-name

Any ideas on how to solve the problem?

Edit 1:

I booted live LTS version with an older kernel

$ neofetch
OS: Pop!_OS 20.04 LTS x86_64
Kernel: 5.13.0-7620-generic

And it turned out that there's no issue with that version - system sound control affects the volume of my Bluetooth speaker as expected.

I also booted the live version of my current system (to confirm that there's no issue with my installed version) and the issue with volume control was present.

So my guess is that kernel 5.15.8-76051508-generic does something with Bluetooth and sound control differently than 5.13.0-7620-generic.

Edit 2:

I downgraded the kernel version to 5.13.0.

I downloaded 4 files and installed them

$ ls

$ sudo dpkg -i *.deb

Pop!_OS doesn't have GRUB and uses kernelstub

I changed the kernel version using the following command (where xxx is the desired kernel version)

$ sudo kernelstub -v -k /boot/vmlinuz-xxx-generic -i /boot/initrd.img-xxx-generic

After the reboot, I see that I'm using kernel 5.13.0-051300-generic but that doesn't solve the problem with volume control.

$ uname -r

So my guess is that Pop!_OS changed something between 20.04 LTS and 21.10 that broke proper volume control in my Bluetooth speaker and it's not the kernel's fault.

  • Having a similar problem with Ubuntu 22.04. I can change the volume with the buttons on my SoundCore Boost bluetooth speakers and the actual volume setting will be visible on the system, but if I try to change the volume with system controls, it has no effect. Ubuntu 22.04 is using kernel 5.15. Previously I was using Ubuntu 20.04 with and it was different but not better: Bluetooth volume on the system and volume of the device were not linked at all so I had to make sure both were not set too low.
    – w-sky
    Commented Sep 25, 2022 at 17:05

1 Answer 1


Disable absolute volume in Pulseaudio's config.

Edit the file


And change the line

load-module module-bluetooth-discover


load-module module-bluetooth-discover avrcp_absolute_volume=false

Credit for this solution goes to https://www.reddit.com/user/mmstick/ https://www.reddit.com/r/pop_os/comments/s2y0hf/pop_os_2110_brake_bluetooth_device_volume_control/

Unfortunately the above solution stopped working for me (kernel 5.19.0-76051900-generic)
But I found another solution that works for me currently: https://askubuntu.com/a/1350436

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .