Bluetooth is EXTREMELY bugged out in F42 KDE (also in F41 KDE!)

I’m having this with Xfce Desktop, so it doesn’t seem to be KDE-related.

Despite my posts above, I’m unfortunately still plagued by the issue, both on Fedora 41 and Fedora 42. The mouse often disconnects, and it takes far too long to reconnect, even when I keep moving it (which makes the mouse attempt a reconnect) or when I tell the blueman-manager GUI (or the bluetoothctl CLI tool) to reconnect. Even turning the mouse off and on again with the switch at the bottom of the mouse doesn’t help. And the disconnect happens randomly: sometimes when idle, sometimes when I’m actively using the mouse.

UPDATE 2: I am UNABLE to reproduce the issue on openSUSE Tumbleweed (05 Dec ISO) and also on CachyOS (arch-based system).
As a reminder, I was able to reproduce the issue on endeavourOS which is basically vanilla arch.

UPDATE 3: I found something as a workaround, since no idea how many years this bug will take to get fixed

  1. Create a script:
nano ~/.local/bin/restart-bluetooth.sh

Content:

#!/bin/bash
sleep 5  # Wait for system to settle
systemctl restart bluetooth
  1. Make it executable:
chmod +x ~/.local/bin/restart-bluetooth.sh
  1. Create a polkit rule to allow passwordless restart:
 nano /etc/polkit-1/rules.d/10-restart-bluetooth.rules

Content:

polkit.addRule(function(action, subject) {
  if (action.id == "org.freedesktop.systemd1.manage-units" &&
      action.lookup("unit") == "bluetooth.service") {
    return polkit.Result.YES;
  }
});
  1. Add to KDE Autostart:
  • Open System SettingsSystemAutostart
  • Click Add NewLogin Script
  • Choose restart-bluetooth.sh located at ~/.local/bin/
  • Apply

I just realised, this is the 43rd post on this topic. I'm using Fedora 43 right now. So, 43 - 43. Coincidence???

Can confirm this issue is still occurring. My headphones (Anker Soundcore Life Q30) disconnect right after connecting, unless I restart Bluetooth, log out, and log back in again, at which point it continues to work until the next boot.

Clarifications for the above post:

  1. ~/.local/bin/ does not exist by default on a fresh install of Fedora 43, so a mkdir ~/.local/bin/ will be needed first if you haven’t done so before.
  2. [no notes]
  3. editing of /etc/ directory requires superuser privileges, so: sudo nano /etc/polkit-1/rules.d/10-restart-bluetooth.rules

Thanks for the tip! Your workaround works for me.

Hello! Glad the workaround worked.

However, someone recently commented to one of my other posts and included this link, which gives better solutions:
a) Remove KDE Connect
b) Downgrading bluez to 5.82 or earlier

In my case, a) worked perfectly! Try on yours.
Note: One you remove KDE connect, remove the login script from Autostart and also maybe consider deleting the restart-bluetooth.sh

I don’t want to remove KDE Connect. I like using it. I’ll try downgrading bluez.

Oops, forgot. I’m now seeing that 5.82 is not available in the repositories. I would need to download the bluez, bluez-cups, bluez-libs, and bluez-obexd packages from a mirror hosting an older version of Fedora… Fedora 43’s bluez is newer, but 42 has 5.80, so I’ll try installing those.

EDIT: Can confirm the downgrade fixed it. I’ve added this to /etc/dnf/dnf.conf

exclude=bluez,bluez-libs,bluez-cups,bluez-obexd