this post was submitted on 01 Dec 2023
51 points (96.4% liked)

Linux

47353 readers
1344 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 5 years ago
MODERATORS
 

Bluetooth audio is my least favorite part of using Linux and it seems like my coworkers agree. I hear a lot of praise for pipewire, but it doesn't match what I experience. Does any system work well for anyone?

To clarify, it can work. But it's a harsh experience compared to say Android. I've used Ubuntu, Fedora, and PopOS. I've tried a few different headphones, using Galaxy Buds 2 current. Pulseaudio tends to "do as it's told" but doesn't automatically switch to the right (confusingly named) profile. With Ubuntu 23.10, using pipewire, it does automatic switch profiles. Sometimes this works great. But very often, it gets stuck on on a profile or just stops working. I have to reconnect bluetooth to fix it.

Is there some magic combination of things that works or is this just how it is for everyone?

top 40 comments
sorted by: hot top controversial new old
[–] onlinepersona 24 points 9 months ago

Fuck Bluetooth. I've seen it multiple times this week that wireless headphones have failed on Linux, Mac, and Windows. "Shit, let me reconnect my headphones". Also the switching from "high quality audio" to bullshit mono audio when calling.

Fuck bluetooth.

[–] [email protected] 10 points 9 months ago

Pipewire and debian stable here

BT audio works like 99% of the time. Then there's that 1% it just stops working for no apparent reason and you spend an hour googling why without finding any answers. And in the end, unpairing, forgetting the device and the re-adding it fixes the problem in 2 mins

Overall very happy once i remember the quick fix

[–] [email protected] 10 points 9 months ago

Bluetooth works great. Debian w/ XFCE (pulseaudio). But, there is some config on a fresh install:

# apt install blueman pulseaudio-module-bluetooth  

# nano /etc/pulse/default.pa  
add:  
load-module module-switch-on-connect  

# nano /etc/bluetooth/input.conf  
change:  
IdleTimeout=0  
[–] [email protected] 8 points 9 months ago

No issues currently using pop os. I don't use the graphical Bluetooth manager, for whatever that's worth. I wrohe a script that connects and disconnects with bluetoothctl, and I pair and trust devices with bluetoothctl. I use several different headphones.

Occasionally, I have to go into the audio settings to change the destination, or tap a button on my headphones, but that's about it.

[–] [email protected] 8 points 9 months ago

Bluetooth kind of sucks ass

[–] [email protected] 8 points 9 months ago (1 children)

Pretty good. I use Nothing ear 2s with a lenovo thinkpad on arch linux and it works just as well as with my ipad and my android smartphone.

Only bad thing, it set the codec to a worse sounding one once for some reason, but changing it back solved it.

[–] [email protected] 0 points 9 months ago (1 children)

This usually happens when you use the earphones' microphone. It lowers the audio quality to be able to send the microphone's data.

[–] [email protected] 0 points 9 months ago (1 children)

exactly. I disabled mono profile in bluez config and I could recomend that to everyone else as well

[–] [email protected] 1 points 9 months ago

Wait, you can keep the audio quality while using the microphone?

[–] [email protected] 6 points 9 months ago

Bluetooth sucks on all platforms. It may be worse on Linux, but given how often my coworkers on Mac and Windows have audio issues it meetings, not by much.

Get a good set of RF wireless headphones and only use Bluetooth when you're traveling.

[–] [email protected] 6 points 9 months ago* (last edited 9 months ago)

Fedora Kinoite, working just as well as on Android (GrapheneOS)

Using Pipewire. The issue really is the shitty firmware of my headphones.

[–] [email protected] 6 points 9 months ago

Gentoo and Pipewire kinda just works.

I expected a battle, like on my work Ubuntu laptop with pulse audio, but holy cow... Pipewire ftw.

[–] [email protected] 5 points 9 months ago

I haven’t had any issue with Bluetooth audio on Fedora.

[–] [email protected] 4 points 9 months ago* (last edited 9 months ago)

I use NixOS, but before that I was on openSuse. I have not thought about Bluetooth in at all in the last few years. Zero issues. I pair it in KDE's default bluetooth manager and then never really touched it since. Media keys all work, I control it over WiFi from my phone with kdeconnect no problem.

I think a few months ago I had to turn my headphones off and on again when the quality got really low for a second. Reading this thread I guess I'm extremely lucky? I don't produce music or anything like that, so I might not be taking advantage I'd some its more exotic features.

EDIT: I am using a basic USB Bluetooth dongle I bought at least 8 years ago for my desktop, and my laptop just uses the built in Bluetooth. If that's any consolation.

[–] [email protected] 4 points 9 months ago

On Debian Unstable and Arch (both with pipewire) it just worked out of the box for me with no issues.

[–] [email protected] 3 points 9 months ago

No problem here with Opensuse slowroll (Sway WM) and a Realtek bluetootth radio, I'm using blueman for managing enabling/managing bluetooth connections.

[–] [email protected] 3 points 9 months ago

Vanilla Arch Linux, AirPods work better than on Android (which was super unreliable), but I also don’t care about automatic profile switching as I actually prefer to switch manually to whatever I need at the given moment.

[–] [email protected] 2 points 9 months ago

Now that I know what to do (switch audio codecs on sound icon in menu bar depending on being in a call or listening to music) it works better for me on Linux Feroda than on Windoge.

[–] [email protected] 2 points 9 months ago

For me on Arch and also, but a lot less frequent fedora I find that it works fine then every few months there's an update that breaks it for a few days till it gets patched. But besides that it works fine for me. I use blueman in DWM BTW

[–] [email protected] 2 points 9 months ago

Using the latest Mint I sometimes connect my Bluetooth ear buds (ISOTunes) and have had no issues.

[–] [email protected] 2 points 9 months ago

So I've recently moved over to using my Pixel buds pro almost full time and am hoping you stoke a convo here to revisit.

KDE Connect affords us the ability to fire off commands from a phone to do any number of things. One use case of mine is to disconnect/reconnect Bluetooth devices from the desktop since it is greedy and tends to bogart my earbuds when playback stops on other connections. This has worked pretty well so far but with that in mind, I have only just started playing around with things and so I look forward to refining the experience with other utilities.

That said, I find Bluetooth is buggy on almost every OS out there (Android is constantly in what feels like a state of repair..)
Best of luck!

[–] [email protected] 2 points 9 months ago

It's shit. Totally agree, the most irritating thing on Linux.

[–] [email protected] 2 points 9 months ago

For me, Bluetooth in general is a problematic technology that's been trustworthy only when the device comes with a pre-paired Bluetooth emitter.

[–] [email protected] 2 points 9 months ago

I installed fedora 38 on my lenovo thinkpad t14 (now running fedora 39) and aside from one easily fixed issue bluetooth works perfectly. My gaming pc running windows can use my laptop as an audio device via bluetooth which is pretty cool.

[–] [email protected] 2 points 9 months ago

Built-in Bluetooth modules tend to "just work" for the most part, but external adapters are a whole other story. They are a pain and it's best to buy them from somewhere that won't ask questions if you try to return it.

[–] [email protected] 2 points 9 months ago

I haven't had any issues.
But it's not uncommon to a problem somewhere in the Bluetooth stack. It's important you report any bugs you come across to the respective projects, because of how diverse Bluetooth devices are it's hard to get perfect support for everything.

[–] [email protected] 1 points 9 months ago

I don't use Bluetooth a whole lot on my Linux box (Arch Linux 20231128, MATE Desktop Environment, bluetoothd, pulseaudio). That said, I have blueman-manager in my system tray all the time, and it seems to do a decent job of managing two pairs of headphones (they're there, and I use them occasionally, just not often). The thing that seems to work for me is to use pavucontrol (PulseAudio Volume Control) to set the parameters of the Bluetooth headphones while they're active and associated, and those settings are stored for later. That way, when I'm wearing a pair of those headphones my laptop's speakers are automatically muted, the Bluetooth headphones go back to where I had them before, and whatever I happen to be playing back through (Firefox, vlc, whatever) automatically cut over to them and away from the (now muted) speakers).

I guess I just did it one step at a time - get bluetooth turned on, get a pair of headphones associated with them, then turn off speakers, then.... I iterated on it until I had something that worked.

[–] [email protected] 1 points 9 months ago

I need a bash script to restart all my bluetooth modules, bluez, bluetoothctl, eyc. because my laptop likes to make bluetooth unavailable, usually after a few hours of suspend. The script always works, and other than that I use another bash script to toggle connection to my airpods / toggle them as the default default audio output. I find it always works great besides the restartint caveat.

[–] [email protected] 1 points 9 months ago

I don't recall ever having spent a lot of time messing with Bluetooth so I think it's worked just fine for me for a while. I've used Debian, Fedora and Solus on a few different laptops and desktops. I'll give a few headphones and speakers a go tonight and see what happens.

[–] [email protected] 1 points 9 months ago* (last edited 9 months ago)

It's okay. On my desktop with an Intel card my headphones occasionally have an issue where they'll stop actually playing sounds until I swap the codec in GNOME Settings. I'm pretty sure it's an issue with the headphones proper, because I don't think I've had the issue with my earbuds or when using them on my laptop.

Speaking of my laptop, if I have WiFi turned on, the Bluetooth goes to shit. It sounds fine, but the audio will randomly cut out. I blame Realtek.

[–] [email protected] 1 points 9 months ago* (last edited 9 months ago)

I remember under pulse I would have issues of programs like discord and my headset breaking the connection over the switch between A2DP and HFP or HSP or whatever the mic mode was. Havent had any issues since pipewire came along and supposedly took over handling that, but I havent used a Bluetooth device with a mic to test with since, so I'm just quoting hearsay that pipewire fixed that.

[–] [email protected] 1 points 9 months ago* (last edited 9 months ago)

Sometime HSP just stopped working so now I have to do calls with my laptop built-in mic.

Also, some programs like Zoom just fail to use the right output device no matter what I choose in settings. I just have to make headphones the fallback device for anything to work.

But the most annoying thing is Linux somehow stealing the playback when my headphones are connected to multiple devices. Even when nothing plays on the computer but does play on the phone, there's no audio. I have to disable/disconnect my computer to use headphones with phone when my computer is in range.

[–] [email protected] 1 points 9 months ago

I had a lot of problems back when I lived in civilization. But now that I live out of range of cell signals, and can't even see neighbors' wifi networks, it works a whole hell of a lot better. I still use a traditional DECT (Logitech H820e), and also a dongled 2.4ghz (Audeze Maxwell) headsets for work, but I also use the Maxwell with my phone over bluetooth without a problem. My Sennheiser Momentum 4 work fine with both my phone running Graphene, and my Thinkpad running Fedora.

I won't even try with Windows. The bluetooth stack is such trash.

[–] [email protected] 1 points 9 months ago* (last edited 9 months ago) (1 children)

My need for bluetooth headphone is very simple, if I can understand youtube videos, I am happy. And I am using WF-1000MX4, which works wonderfully just using the gnome gui.

I never need to worry about pipwire or pulse audio etc.

[–] [email protected] 1 points 9 months ago (2 children)

Fun fact to keep in mind about your MX4 - if you use the "pair with two devices simultaneously" feature, the headphones shut off their LDAC support. All you get is the baseline audio codec. Nice, huh?

[–] [email protected] 2 points 9 months ago (1 children)

That scenario would definitely be the time to use SBC-XQ.

http://soundexpert.org/articles/-/blogs/audio-quality-of-sbc-xq-bluetooth-audio-codec

(I have the over the ear XM3 that don't support multiple devices, but also have a Bose 700 that does. The Bose 700 does AAC, but I find SBC-XQ better. On the Sony it's a toss-up, so I stick to LDAC. I'm using Fedora Silverblue 39 with PipeWire for reference.)

[–] [email protected] 1 points 9 months ago

I haven't had much luck with XQ. I don't believe that Bluetooth can reliably find enough bandwidth for it, unless you're willing to blow up a few neighbor's WiFi points/baby monitors/microwaves/weather radar stations.

[–] [email protected] 0 points 9 months ago (1 children)

I actually never know it can be paired to more than one device. LOL

[–] [email protected] 2 points 9 months ago

You have to use a phone app to do it, never found it to be worth the bother.

[–] [email protected] 1 points 9 months ago* (last edited 9 months ago)

No issues to report here. Audio sucked when I had an old shitty laptop with a BT4.0 chip but after I upgraded to a Thinkpad X280 Bluetooth just worked out of the box. Been using pipewire but before that I used pulseaudio with bluetooth audio extensions that you can find on the AUR. Pulseaudio was far less stable, pipewire just werks.