21
submitted 9 months ago by monovergent@lemmy.ml to c/linux@lemmy.ml

The device in question is the USB dongle for my 2.4 GHz wireless headset. Everything works fine except for volume control, so it is stuck at max volume, regardless of where the volume slider in pavucontrol is. Volume controls within individual websites and programs work, but it seems that the system volume control is delegated to the USB device, which itself has no concept of volume control. This is the case with both pulseaudio and pipewire. Is there a way to limit the system-wide volume before it reaches the dongle?

top 3 comments
sorted by: hot top controversial new old
[-] just_another_person@lemmy.world 9 points 9 months ago

If it's stuck at max, then Pipewire isn't controlling it. Try alsamixer as a different test, or maybe qasmixer. You'll need to select the hardware id for the device to try and change it.

You might want to dig around keyword searches for your specific model and "Pipewire" to see if others have a config to sort it if the above works.

[-] monovergent@lemmy.ml 3 points 9 months ago* (last edited 9 months ago)

Looking up the hardware id, it seems that someone else had the same issue: https://github.com/alsa-project/alsa-lib/issues/401

If I'm understanding correctly, there's no proper driver for it in the kernel yet. My workaround for now is to use the limiter in pulseeffects.

Edit: If anyone wants to know, it does work flawlessly on Android, but I have no idea if the way Android handles USB audio is relevant to desktop Linux at all.

[-] just_another_person@lemmy.world 2 points 9 months ago

Good find, but it's not a kernel issue in this case. The device is recognized as "something", and outputs audio correctly, you just need to find out where it's getting it's audio from, and assign a control channel through Pipewire to control the sink volume. Should be pretty easy, but will require some digging and a quick bit of learning.

this post was submitted on 17 Jul 2025
21 points (100.0% liked)

Linux

64799 readers
467 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS