How is Bluetooth so much better on Linux?
Posted by AdhamJr@reddit | linux | View on Reddit | 126 comments
I know this is an odd post since I only saw people complaining about Bluetooth on this forum, but I am currently running endeavorOS and Bluetooth is significantly better than when I was on windows.
I have a cheap dongle I got off Amazon that always had driver problems on windows, it either never connected properly, stopped working all together or I’d have to pair my devices all over again.
I have several controllers pairs and I have yet to have any issues grabbing any of them and simply turning them on.
Why the big difference?
finbarrgalloway@reddit
It’s more that windows has a really bad Bluetooth experience. Works better on any other OS really.
stormdelta@reddit
This. Bluetooth headsets on Windows still have absolute garbage audio quality half the time, when the same hardware has no problems on any other OS, not just Linux.
ImpossibleEdge4961@reddit
There are aspects I like about Windows bluetooth. Like having a reasonably user friendly way of having multiple device sinks to pretty cool. It lets you pair two headphones (one bluetooth and one wired) and both headphones hear the same audio.
That's still somewhat janky, though. Seems like there's a more elegant way of just routing to the virtual device and then having it pipe output. I don't know why Windows makes you go through multiple screens but it's still easier for novice users than the way of doing the same on Pipewire.
FullOnBeliever@reddit
Do you know why that is? I’ve been really confused about BT screwups since like windows 8. lol.
snapphanen@reddit
Bad drivers maybe
FullOnBeliever@reddit
I’m too ignorant to run with that. lol. Why wouldn’t they just make them “good drivers?”
Kruug@reddit
It's hard to make a good default driver that supports adapters that don't follow spec.
LagerHead@reddit
Windows tries way too hard to be all things to all people. So hard, in fact, it ends up being nothing to everyone.
Candid_Problem_1244@reddit
Master of none
dudeness_boy@reddit
Because Microsoft is lazy
yasth@reddit
Microsoft doesn’t really write the drivers for most things. Intel Bluetooth stuff isn’t bad at all on windows. A poorly supported cheap dongle is the worst place for windows devices because even if the chipset has updated drivers they may well not get to your particular vendor tag.
dudeness_boy@reddit
Okay fair, but I'm still blaming it on Microsoft because I hate them.
snapphanen@reddit
Because it's genuinelly really hard to keep up with devices on the market, maintaining compatibility etc
Wide community contributions (Linux development) is a great way to make sure niche devices work well, because tech savvy people all over the globe can either submit a fix for a Bluetooth issue themself or report it in detail on forums. One fix for one device and it works for everyone
In corporate development processes (windows) things like expanding co-pilot, assiting enterprise software (offce 365) and such are much more important that getting good device support coverage. A stray troubleshoot report claiming "my device is not working" gets down-prioritised in corporate.
finbarrgalloway@reddit
Frankly I just don't think its been prioritized. Apple was a big trailblazer in Bluetooth so they could sell peripherals and Linux has had the benefit of 15 years of android development.
Probably hard for Microsoft to see the development time as worth it.
1EdFMMET3cfL@reddit
At this point I have to ask, what does Microsoft prioritize?
rohmish@reddit
Linux is kinda iffy on drivers too. with some hardware it works great, with some you'll have worse range and lots of connectivity issues.
5c044@reddit
There are a lot of knockoff counterfeit BT adapters - these contain hardware bugs not present in the original hardware. Those bugs need to be worked around in the drivers.
Pandoras_Fox@reddit
yeah. it's a lot less consistent on laptops; on desktops with generic usb dongles/pcie cards, it's generally pretty plug-n-play.
laptops are just particularly still very hit-or-miss, particularly since you can't just get apple hardware, and the default for most laptops is windows via 'maybe proper hardware, maybe really hacky drivers for the undocumented proprietary subsystems'
bedz01@reddit
This is my experience too. A lot of laptop hardware just seems to be absolute shit, every laptop I've tried Linux on recently has had either a fucked trackpad and/or fucked wireless.
crshbndct@reddit
You’re probably correct but that doesn’t feel like a satisfactory explanation.
Windows has been the majority laptop OS for like 2 decades now. If they can’t build a proper wireless communication protocol/stack by now, what the hell are they doing over there? Masses of coke?
finbarrgalloway@reddit
Selling services to large corporations mostly. I don't feel like Microsoft has had their heart in windows for like 15 years.
minilandl@reddit
Remember windows 7 Bluetooth that was awful. Windows 10 is so much better but still not perfect. With many things especially game controllers needing a second driver to go between the hardware and the Bluetooth stack .
ninzus@reddit
Microsoft is all about azure, they don't really want to give you an on-prem environment, they want to sell you windows thinclients which then connect to PCoIP machines. See how they treat exchange on-prem or windows terminalservers, they want to get rid of all of it to force you to become a cloud user so they can squeeze more money out of you.
Kruug@reddit
A lot of it boils down to the manufacturer of the dongle.
Windows includes a basic driver and it works for the major players. But if the fly-by-night Chinese bootleg market ($5 dongles on AliExpress, Amazon, Temu, etc) doesn't properly implement the Bluetooth standards, the basic Windows driver won't work.
Since Linux is built by whoever has time/energy to submit code, people who buy these cheap dongles may be motivated to "fix" the standard drivers to operate outside of the official spec.
Zamundaaa@reddit
Desktop Linux uses a different bluetooth stack from Android.
sogun123@reddit
But same kernel drivers. Even though they are often userspace on android
minilandl@reddit
Yeah I wouldn't say Bluetooth on Linux is always easy .
You needed to edit /etc/Bluetooth/input.conf recently to get game controllers to pair to work around a security feature.
Aside from that everything else especially for PlayStation and headphones work better .
Even on Mac OS the Bluetooth experience is better than windows
Significant-Tie-625@reddit
Windows.
FullOnBeliever@reddit
That’s where I’m at with it. Lol
SalomonBrando@reddit
Any other OS than MacOS for me. Worst bluetooth experience at all.
amiibohunter2015@reddit
I can vouch for that, left windows for Linux, no problems.
dezmd@reddit
Nah, bluetooth on Mac has been trash on and off over the years.
atiqsb@reddit
Can’t relate!
One-Strength-1978@reddit
I have no Linux system where Bluetooth works really well. On Windows and Android it is more reliable. Mac OS X is a wildcard.
Tony_Marone@reddit
Fact is that because so much of Linux capabilities are built into the kernel, it either just works or it doesn't.
It's not usually about the hardware as much as how standard the (in this case) Bluetooth firmware is.
TL;DR Linux likes vanilla hardware best of all.
outtokill7@reddit
It is neat that LDAC works out of the box with Linux and in Windows its only supported by a 3rd party paid app (that I know of)
Heart-Logic@reddit
Sony own LDAC, MS see them as a fierce competitor so they wont license LDAC
versedoinker@reddit
They don't need to license anything. To use LDAC sinks, you only need the encoder, which Sony themselves released in full FOSS form (Apache 2.0) for AOSP.
i509VCB@reddit
You are still subject to a certification process from Sony per https://android.googlesource.com/platform/external/libldac/+/master/NOTICE
Also it is unclear if you need an LDAC license for even transmit for something like an embedded platform.
bedz01@reddit
Yeah it's even been implemented on the ESP32!
Heart-Logic@reddit
Thanks
LexiStarAngel@reddit
I had a bad experience with Gnome and bluetooth a few years back. Maybe it's better now.
greek-plato@reddit
It's not better. Bluez is as old as it gets, and it can be messy.
TruFrag@reddit
I didn't even know my motherboard was Bluetooth capable until I installed Linux... Windows never detected it. The motherboards box or manual, neither say anything about Bluetooth either.
animeinabox@reddit
Sony XM5 and XM6 microphone doesn't work :(
Greenscarf_005@reddit
idk, bluetooth randomly kills itself sometimes and i have to restart kernal modules to bring it back to life
zlice0@reddit
lulwut ? bluetooth is WORSE on windows somehow now? i have never had good luck with it anywhere but that's just a joke
PresentationFar8722@reddit
Yep, I also find that. I use Fedora, the bluetooth is significantly more reliable than Windows.
themacmeister1967@reddit
As someone who moved over from macOS, it is markedly better...
Bridge_Adventurous@reddit
Not just Windows. I can't use wireless headphones on macOS without it constantly messing up the sound balance. It happened on my Mac mini and is now also happening on my MacBook whether I use my AirPods or Pixel Buds. I never had any issues on Linux.
No-Adagio8817@reddit
I’ve had the opposite experience. My headphones never reconnect properly on linux. Works flawlessly on windows.
Akroinon07@reddit
If you have an Intel Wifi and Bluettoth card. So you are lucky. Qualcomm mostly good but Mediatek and Realtek are not supported well.
markand67@reddit
I only use headsets and keyboards/mice. no issues with windows, macOS and Linux. the only difference I encountered is that Linux has the best support towards additional buttons such as previous/next on the mouse wheel which never worked for me on macOS. On windows I don't remember. I also paired some old magic trackpad on windows and linux, on windows gestures were not functional though
leo-dip@reddit
Any people experience the opposite. I had to try different dongles to find one that worked well. The thing with Linux is finding the right hardware. Once you do, it goes smoothly.
vmcrash@reddit
... and finding the right software. On Windows sending/receiving files from a bluetooth device works out of the box. Which Linux desktop supports that?
vmcrash@reddit
Maybe it is just me, but I could not get my tested Linux versions accepting files over bluetooth (from my Android smartphone) at all while on Windows this works out of the box.
one-alexander@reddit
It was a very long road my friend, back in the day blueman was always failing.
It still fails a lot in some distros, haven't had problems since I moved to Linux mint cinnamon.
Physical_Opposite445@reddit
My Bluetooth experience on Linux is pretty horrible (Pop!_Os)
I can get my bluetooth earbuds working, but as soon as I boot up steam or some other app, the mic stops picking up any audio and I have to disconnect my earbuds and repair them. It's a total pain in the ass. It happens with all the earbuds I try
vMambaaa@reddit
Doesn’t this literally have everything to do with your Bluetooth receiver/transmitter?
adoodle83@reddit
That’s the hardware part, you also have multiple levels of software libraries and protocols to account for. Kernel driver support and user space libraries, have major impact as well.
AdhamJr@reddit (OP)
Maybe. My receiver was garbage on windows, I genuinely hated it. On Linux it’s a completely different device
Some_Cod_47@reddit
Depends. I have a mediatek based one it takes forever to resume from suspend.
ExcellentJicama9774@reddit
I know the feeling. When I switched to Linux, I was baffled that Bluetooth would just work. Relieably.
Shoxx98_alt@reddit
always worked well on native linux, but through a VM with a passed through USB port collection through PCIe it does not work well at all
TheTaurenCharr@reddit
It really depends on the device, and the driver availability on the latest available kernel on that particular distribution, but at least you have generic drivers for many different hardware that works - which is something Windows default installation media have been missing for a long time.
Can you fucking believe it that without drivers being in the USB drive, I can't install Windows on this particular machine - unless I specifically workaround the mandatory internet connection? On top of that, Windows has lacked printer support out of the box, at least for the ones that my office makes me use, until a while back - that is if you don't install ancient Epson drivers. That printer worked just fine on any Linux machine I have for ages.
It's these little things that make you appreciate Linux ecosystem, really. There are literal unsung heroes that do so much heavy lifting in the background, unappreciated, it's wild.
Comfortable_Swim_380@reddit
Yea im actually surprised also to find out that last nic card a bought the Linux driver was way better coming from the vender. And I freaking hate windows and use Linux everyday. So to see them get the stick and us the carrot for once. That's for real real.
bubblegumpuma@reddit
There is a lot of work that goes into making Linux work well with cheap 'quirky' (read: nonstandard) devices. Bluetooth dongles are a big one in that category - a lot of the USB dongles out there report the same USB product/vendor ID as genuine CSR chip based radio dongles, but use knockoff chips that are just different enough to cause issues unless one uses other means to differentiate the knockoffs and apply workarounds.
I'm sure there are a lot of similar efforts on the Microsoft end of things, but all of Linux's work goes in the open, and there's a massive amount of people out here looking at Linux's code for devices they own in order to make them work better. Microsoft has maybe thousands, we have millions - especially nowadays.
MatchingTurret@reddit
Android.
AdhamJr@reddit (OP)
? I don’t get it ngl
MatchingTurret@reddit
Android is based on Linux and because of this a lot of work goes into the Linux Bluetooth stack.
rohmish@reddit
Android uses a different, custom bluetooth stack and hasn't relied on bluez for a long while.
randylush@reddit
Well, if it did at one point, then it would have contributed a lot then, which still helps
not_from_this_world@reddit
It never did.
XenoSolver@reddit
Android development doesn't help most other Linuxes with Bluetooth though. Linux normally has BlueZ as the Bluetooth stack, which was only used on very early Androids, then they switched to BlueDroid. Latest Android versions use the Gabeldorsche stack instead. There's a large amount of Android code being contributed to upstream Linux, but Android's Bluetooth stack isn't it.
I have a lot of respect for anyone implementing a good Bluetooth stack. I've programmed a couple simple Bluetooth projects in an embedded setting, it's a very complex protocol. Even "just the basic functionality" required learning a lot.
NecroAssssin@reddit
But do you have any proof OP is a bot?
MatchingTurret@reddit
🤣
KanonBalls@reddit
And here i was thinking that it was quite bad on Linux. I guess those few hicups don't count then.
nicman24@reddit
Android
AlphaSpellswordZ@reddit
What I like is that Linux has LDAC and aptX. Windows doesn’t have that at all
LordAnchemis@reddit
On Linux, 'drivers' are a 'binary' experience - they either work OOB (supported by Linux kernel) or you have to draw blood out of a stone to get them to work
On Windows, your driver experience depends on:
ArtichokeRelevant211@reddit
Not a typical experience.
AdhamJr@reddit (OP)
I noticed, I’m not sure what I did differently
TheComradeCommissar@reddit
It depends; from my experience, Intel's cards perform on par with Windows. However, Mediatek performs considerably worse than on Windows (which isn't saying much, as they have terrible software support, even on Windows).
accelerating_@reddit
Perhaps that's key to my good experience because anytime I get a laptop I make sure to get out swap in an Intel Wi-Fi card (which usually handles Bluetooth as well).
rohmish@reddit
its very hardware dependant. while I don't agree with the reasons shared here like Android (Android uses a custom bluetooth stack and hasn't used bluez for a while now), the Linux stack is used by many other devices and thus is quite good. Apple invested a lot in bluetooth features and have a great stack too. microsoft was never really at the forefront of bluetooth usage and hasn't seen a need to improve it until recently.
That said bluetooth on Linux is iffy on what hardware you have. some work great while some are quite buggy due to driver bugs. But it usually works much better than windows across the board
2cats2hats@reddit
Lucked out. :)
I have occasional issues with BT. However, I found BT to be a flaky tech since I first started using it.....regardless of OS/platform.
SonOfWestminster@reddit
It's why I keep buying new old stock of a pair of Philips wired earbuds that they don't make anymore
2cats2hats@reddit
I have wired buds too. CCTV still exists for a reason, because it works and there's less reasons(read: abstractions) why it can fail.
Chaotic-Entropy@reddit
Try not to sneeze or cough, the connection might drop.
lord_pizzabird@reddit
I’ve been thinking about this lately, how maybe we should just ditch Bluetooth in favor of WiFi for these connections.
I don’t think power draw or latency are as big of hurdles as they used to be and BT is just continuously getting worse.
MouseJiggler@reddit
Bluetooth on Linux breaks when there are no available drivers for a particular chipset. When there are drivers available - it works like a charm. The stack itself is very good, what messes it up is manufacturers not providing drivers.
Tinolmfy@reddit
but not super rare either.
(at least from my experience)
If your bluetooth hardware is supported at all, it's likely gonna work well and reliable.
if it doesn't work out of the box, you might have some bigger issues....
Bob_Fancy@reddit
Yeah it’s much better on macOS too, windows is just terrible with it.
accelerating_@reddit
Though in my work meetings everyone was agreeing that Bluetooth is always troublesome, until the two of us who use Linux chimed in that we never had any issues. All but were on OSX except the Windows user who started the complaint.
My headphone always switch between my android phone and my Linux laptop seamlessly without any direct input from me.
hazyPixels@reddit
In my experience probably half of the dongles on Amazon won't work at all on Linux. You probably got lucky and found one that uses one of the drivers built into the kernel.
Reasonable_Size_7377@reddit
Bluetooth audio on linux has been a struggle for me for any dongle or any motherboard bluetooth device. Audio cuts out intermittently and often it takes a lot of tries to even get it to connect. I live in a place where there's a lot of interference from neighbors, however my macbook, my iphones, and my windows computer all handle it fine.
I've done hours and hours of troubleshooting and I've mostly given up.
ststanle@reddit
I personally feel it’s lack of demand. So they do the bare minimal, no one I know connects anything to their pc via blue tooth, not to say there are not devices and reasons just not as popular.
Whereas you have Mac and Linux which are the primary OS’s used for mobile and all the small devices you would want to connect so there gonna have a a lot more support due to higher demand.
Maverobot@reddit
I have a terrible experience with the Bluetooth headset on Linux.
FlyingWrench70@reddit
You live closer to your hardware in Linux.
If the hardware and drivers are solid, so therefore will be your experience.
My last machine did not have built in Bluetooth, so I bought a cheap Edimax USB dongle from Amazon, $11. It "just works" in every distribution. no setup, no extra drivers, jusy rock solid Bluetooth experience.
I then built a new rig arround and Asus Tuf gaming wifi-e. With the built in wifi that with that board every other time it will not connect to my headphones without first forgetting them and then re-pairing with the headphones, its annoying.
I think I need to go ahead and disable the onboard components in the bios and plug in that cheap Bluetooth dongle.
atiqsb@reddit
I am Linux (fedora) user. On windows my keychron keyboard always connects almost instantly after idling, say I am back after coffee break.
On Linux, if I am away for a little keyboard will disconnect and then it almost never automatically reconnects. I had to write a script to automate the connection so I don’t have to do a bunch of clicks every time it disconnects!
https://github.com/atiq-cs/Shell/blob/dev/BT.ps1
Misicks0349@reddit
I mean for one bluetooth is just absolutely terrible, I don't I've ever had an experience with the protocol that hasn't had issues in some way.
WeepingAgnello@reddit
It's been at least a decade, in my experience, that Bluetooth has sucked ass on Windows, but has always worked normally on Linux and Mac.
Remarkable_Long_2955@reddit
I have not found Bluetooth to work consistently on Fedora
Western-Cod-3486@reddit
I have the exact opposite experience. Never had to tweak a thing, the Intel AX210 (iirc) works flawlessly, what are you using
Remarkable_Long_2955@reddit
An old Lenovo IdeaPad which, if a quick Google search is to be trusted, has a Intel AC8260
JamieStar_is_taken@reddit
In my experience on mint and arch it has been a thousand times worse like I cant connect my Xbox controllers at all anymore worse
Jemie_Bridges@reddit
Certain Xbox controllers are worse that others Microsoft supposedly fixed that at some point like model 1650 and up "just work". If you have older than that your kinda just at the mercy of whatever program might have drivers or not. Steam is 1650 I think.
JamieStar_is_taken@reddit
They would work on windows also I have had trouble connecting a switch pro controller too
AdhamJr@reddit (OP)
That’s really odd, I’ve had no problems so far on arch. I wonder what the difference is
dzuczek@reddit
I think bc every dongle has their own stupid driver that gets downloaded from WHQL and Linux just has a generic one
that's just me speculating but I believe it to be true
homestar92@reddit
It's not that the Linux Bluetooth stack is particularly good, it's that the Windows bluetooth stack is so, so bad.
DaylightAdmin@reddit
The best feature for me is that my Linux Laptop can act as "Bluetooth Headset", because that machine can only access some sites, but my phone has internet. So music streaming to it is now possible. And the headphones need to be plugged into the machine because I need to hear the notifications and take Teams Calls.
Slaykomimi2@reddit
its like wifi, it just doesnt work properly on windows
Exciting_Pop_9296@reddit
Dual booting windows while using the same devices with both os is still horrible
netsx@reddit
The BT controller makes a big difference. I have some USB dongle that is not cooperating easily, but thankfully that can be reinserted. Worse with those that cant.
apvs@reddit
In my experience, only Android and iOS have near-flawless BT support, all three major desktop OSes are more or less bad in this regard.
Linux still has weird pairing issues, but once a connection is established, it's perfectly stable. As for audio support, it's a bit of a mixed bag: on the one hand, I have LDAC out of the box, on the other, I have the terrible low-bitrate mSBC in headset mode - as far as I can tell, this is the best we can get without using a proprietary BT stack.
macOS/Windows provide a much better headset experience, but lose out in almost every other aspect, from lossless/high-bitrate audio support to general pairing/connection instability issues. Windows has always been bad at this, and macOS is getting worse with every major release, at least for non-Apple peripherals.
crashorbit@reddit
I get Bluetooth stability and range issues that seem more dependent on the device and the server hardware. Some pairings give me hundreds of feet. Others I seem to be tied to the chair.
Worse is that diagnostics and config details are dismal on all platforms.
MouseJiggler@reddit
Because it's 2025, and the windows bluetooth stack is still dogshit.
arrroquw@reddit
It's really dependent on hardware, if the hardware vendor doesn't have Linux drivers/firmware availability then your dongle is just useless. E.g. The newer Chinese dongles with newer Barrot chips.
However if your dongle is supported by Linux, your experience is just good.
The only troubles I've had was when I tried to use two Bluetooth devices at the same time on an older BT4.2 dongle. I got a newer BT 5.4 module based on a realtek chip from Ali and now everything is working fine.
StevieRay8string69@reddit
My Bluetooth on my desktop and laptop which is Windows 11 is flawless
Mds03@reddit
People complain cause there are certain things that won’t work properly or is hard to get working properly. E.g I have a keyboard that I have to type a on display number that "pops up" in macOS and Windows when connecting new devices, but in many Linux distros, I had to use the terminal to see the code and pair it. The process was not as intuitive, and to some might even seem impossible/ubsolveable
dethb0y@reddit
I have never tried to use bluetooth on windows, but on linux it has always just worked fine for me, which is nice. I had no clue that other people had problems.
Any_Reputation_4223@reddit
I'm so happy the way my iPhone just connects through KDE and seamlessly streams music and podcasts. Much better than windows in that regard, and suits my usage cases perfectly.
Standard_Gold_1251@reddit
Windows is especially garbage with it.
Routine_Safe6294@reddit
To be honest i know for a fact that for years and years with different devices and different dongles/builtin bluetooth has had a heap of issues. Currently running sony xm5s and have had some issues mostly with auto transfer to LDAC or to headset mode. It has gotten beter to the point that it just works and sometimes it will disconnect if you put the headset down, which is some not usage detection
This week had to run windows on my machine for some reason and found that the headset disconnects and has issues being detected by chrome or slack 70 percent more on windows. What happened im not sure but Linux has been more stable for bluetooth headsets for some time for me
New_Physics_2741@reddit
I too have an excellent Bluetooth experience with Linux.