Bluetooth Mouse no longer connects/pairs in KDE Plasma/Wayland

Hi,

After a recent update on a NixOS box, my Bluetooth Logitech mouse no longer connects. I can see it in the KDE Bluetooth pane, but the Connect button fails after 20 - 30 seconds with a generic failure message. I do get a notification of the mouse pop up, but no confirmation that it worked.

I tried removing the device and re-pairing it, and get the same result.

Booting in the previous generation, the mouse connects just fine, no issues.

In the current generation, I tried using bluetoothctl, and with that I can connect the mouse but had to remove it first, then enable scanning, and then pair it.

I was able to add a Bluetooth headset using the UI widget – so far it’s just a Logitech mouse that’s failed.

Here’s the nvd output when it stopped working:

<<< /nix/var/nix/profiles/system-156-link
>>> /nix/var/nix/profiles/system-157-link
Version changes:
[U.]  #001  SDL2                                        2.32.0 -> 2.32.2
[C.]  #002  attica                                      5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[U*]  #003  audacity                                    3.7.2 -> 3.7.3
[U*]  #004  baloo                                       6.11.0 -> 6.12.0
[U*]  #005  bluez-qt                                    6.11.0 -> 6.12.0
[C*]  #006  breeze-icons                                5.116.0, 6.11.0 -> 5.116.0, 6.12.0
[U.]  #007  c-grammar-neovim                            0.10.4 -> 0.11.0
[U*]  #008  chromium                                    134.0.6998.88, 134.0.6998.88-sandbox -> 134.0.6998.165, 134.0.6998.165-sandbox
[U.]  #009  chromium-unwrapped                          134.0.6998.88, 134.0.6998.88-sandbox -> 134.0.6998.165, 134.0.6998.165-sandbox
[U.]  #010  docker-buildx                               0.20.1 -> 0.22.0
[U.]  #011  faad2                                       2.11.1 -> 2.11.2
[C*]  #012  ffmpeg                                      6.1.2-data, 6.1.2-lib, 7.1, 7.1-bin, 7.1-data, 7.1-dev, 7.1-doc, 7.1-lib, 7.1-man -> 6.1.2-data, 6.1.2-lib, 7.1.1, 7.1.1-bin, 7.1.1-data, 7.1.1-dev, 7.1.1-doc, 7.1.1-lib, 7.1.1-man
[U.]  #013  ffmpeg-full                                 7.1-bin, 7.1-data, 7.1-lib -> 7.1.1-bin, 7.1.1-data, 7.1.1-lib
[U.]  #014  ffmpeg-headless                             7.1-bin, 7.1-data x2, 7.1-lib x2 -> 7.1.1-bin, 7.1.1-data x2, 7.1.1-lib x2
[C.]  #015  file                                        5.45, 5.46 x2 -> 5.45, 5.46 x3
[U*]  #016  firefox                                     136.0.2 -> 136.0.3
[U.]  #017  firefox-unwrapped                           136.0.2 -> 136.0.3
[C*]  #018  frameworkintegration                        5.116.0, 6.11.0 -> 5.116.0, 6.12.0
[U.]  #019  freerdp                                     2.11.7, 3.12.0 -> 3.14.0
[U*]  #020  fwupd                                       2.0.6, 2.0.6-lib, 2.0.6-man -> 2.0.7, 2.0.7-lib, 2.0.7-man
[C.]  #021  ghostscript-with-X                          10.04.0 x2, 10.04.0-fonts x2 -> 10.04.0, 10.04.0-fonts, 10.05.0, 10.05.0-fonts
[C*]  #022  glib                                        2.82.1, 2.82.4 x2, 2.82.4-bin, 2.82.4-dev, 2.82.4_fish-completions -> 2.82.1, 2.82.5 x2, 2.82.5-bin, 2.82.5-dev, 2.82.5_fish-completions
[C.]  #023  glu                                         9.0.3 x2, 9.0.3-dev -> 9.0.3, 9.0.3-dev
[U*]  #024  google-chrome                               134.0.6998.88, 134.0.6998.88_fish-completions -> 134.0.6998.165, 134.0.6998.165_fish-completions
[C.]  #025  graphene                                    1.10.8 x2 -> 1.10.8 x2, 1.10.8-dev
[C.]  #026  gtk4                                        4.16.12 -> 4.16.12, 4.16.12-dev
[U*]  #027  home-manager                                0-unstable-2025-03-08 -> 0-unstable-2025-03-18
[C.]  #028  hwdata                                      0.390, 0.392 x2 -> 0.390, 0.393 x2
[C.]  #029  ijs                                         10.04.0 x2 -> 10.04.0, 10.05.0
[U.]  #030  imagemagick                                 7.1.1-45 -> 7.1.1-46
[U.]  #031  initrd-linux                                6.13.7 -> 6.14
[U.]  #032  ipxe                                        1.21.1-unstable-2025-01-10 -> 1.21.1-unstable-2025-03-27
[C.]  #033  karchive                                    5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[C*]  #034  kauth                                       5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[C.]  #035  kbookmarks                                  5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[U.]  #036  kcalendarcore                               6.11.0 -> 6.12.0
[U*]  #037  kcmutils                                    6.11.0 -> 6.12.0
[C.]  #038  kcodecs                                     5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[U.]  #039  kcolorscheme                                6.11.0 -> 6.12.0
[C.]  #040  kcompletion                                 5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[C.]  #041  kconfig                                     5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0
[C.]  #042  kconfigwidgets                              5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[U.]  #043  kcontacts                                   6.11.0 -> 6.12.0
[C*]  #044  kcoreaddons                                 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0
[C.]  #045  kcrash                                      5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[U.]  #046  kdav                                        6.11.0 -> 6.12.0
[C.]  #047  kdbusaddons                                 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0
[U.]  #048  kdeclarative                                6.11.0 -> 6.12.0
[C*]  #049  kded                                        5.116.0, 5.116.0-dev, 6.11.0, 6.11.0_fish-completions -> 5.116.0, 5.116.0-dev, 6.12.0, 6.12.0_fish-completions
[U.]  #050  kdesu                                       6.11.0 -> 6.12.0
[C.]  #051  kdnssd                                      5.116.0, 6.11.0 -> 5.116.0, 6.12.0
[C.]  #052  kdoctools                                   5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[U*]  #053  kfilemetadata                               6.11.0 -> 6.12.0
[C*]  #054  kglobalaccel                                5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[C*]  #055  kguiaddons                                  5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[U.]  #056  kholidays                                   6.11.0 -> 6.12.0
[C.]  #057  ki18n                                       5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0
[C*]  #058  kiconthemes                                 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0
[U.]  #059  kidletime                                   6.11.0 -> 6.12.0
[U*]  #060  kimageformats                               6.11.0 -> 6.12.0
[C*]  #061  kio                                         5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[U.]  #062  kirigami                                    6.11.0 -> 6.12.0
[C.]  #063  kitemmodels                                 5.116.0, 6.11.0 -> 5.116.0, 6.12.0
[C.]  #064  kitemviews                                  5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[C*]  #065  kjobwidgets                                 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0
[C.]  #066  knewstuff                                   5.116.0, 6.11.0 -> 5.116.0, 6.12.0
[C.]  #067  knotifications                              5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0
[U.]  #068  knotifyconfig                               6.11.0 -> 6.12.0
[C*]  #069  kpackage                                    5.116.0, 6.11.0, 6.11.0_fish-completions -> 5.116.0, 6.12.0, 6.12.0_fish-completions
[U.]  #070  kparts                                      6.11.0 -> 6.12.0
[U.]  #071  kpty                                        6.11.0 -> 6.12.0
[U.]  #072  kquickcharts                                6.11.0 -> 6.12.0
[U*]  #073  krunner                                     6.11.0 -> 6.12.0
[C*]  #074  kservice                                    5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0, 6.11.0_fish-completions -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0, 6.12.0_fish-completions
[U*]  #075  kstatusnotifieritem                         6.11.0 -> 6.12.0
[U.]  #076  ksvg                                        6.11.0 -> 6.12.0
[U*]  #077  ktexteditor                                 6.11.0 -> 6.12.0
[U.]  #078  ktexttemplate                               6.11.0 -> 6.12.0
[C.]  #079  ktextwidgets                                5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0
[U.]  #080  kunitconversion                             6.11.0 -> 6.12.0
[U.]  #081  kuserfeedback                               6.11.0 -> 6.12.0
[C*]  #082  kwallet                                     5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0, 6.11.0_fish-completions -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0, 6.12.0_fish-completions
[C.]  #083  kwidgetsaddons                              5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[C.]  #084  kwindowsystem                               5.116.0, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-dev, 6.12.0
[C.]  #085  kxmlgui                                     5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0
[C.]  #086  libICE                                      1.1.1, 1.1.2 x2, 1.1.2-dev -> 1.1.1, 1.1.2, 1.1.2-dev
[C.]  #087  libX11                                      1.8.10, 1.8.11 x2, 1.8.11-dev, 1.8.11-man -> 1.8.10, 1.8.12 x2, 1.8.12-dev, 1.8.12-man
[C.]  #088  libXrandr                                   1.5.4 x3, 1.5.4-dev -> 1.5.4 x2, 1.5.4-dev
[C*]  #089  libcap                                      2.70-lib, 2.73, 2.73-dev, 2.73-doc, 2.73-lib x2, 2.73-man -> 2.70-lib, 2.74, 2.74-dev, 2.74-doc, 2.74-lib x2, 2.74-man
[U.]  #090  libid3tag                                   0.15.1b -> 0.16.3
[U.]  #091  liblc3                                      1.1.2 x2 -> 1.1.3 x2
[U.]  #092  libmediainfo                                24.12 -> 25.03
[U.]  #093  libnotify                                   0.8.3 -> 0.8.4
[U.]  #094  libphonenumber                              8.13.55 -> 9.0.1
[U.]  #095  libppd                                      2.1.0 -> 2.1.1
[U*]  #096  libreoffice                                 24.8.4.2, 24.8.4.2-wrapped -> 24.8.5.2, 24.8.5.2-wrapped
[U.]  #097  libreoffice-kde-dependencies                24.8.4.2 -> 24.8.5.2
[C.]  #098  libwacom                                    2.13.0, 2.14.0 -> 2.13.0, 2.15.0
[U.]  #099  libz                                        1.2.8.2015.12.26-unstable-2018-03-31 -> 1.2.8.2025.03.07
[U.]  #100  linux                                       6.13.7, 6.13.7-modules, 6.13.7-modules-shrunk -> 6.14, 6.14-modules, 6.14-modules-shrunk
[U.]  #101  lua-grammar-neovim                          0.10.4 -> 0.11.0
[U.]  #102  luajit                                      2.1.1713773202, 2.1.1713773202-env x2 -> 2.1.1741730670, 2.1.1741730670-env x2
[C*]  #103  lvm2                                        2.03.27-lib, 2.03.30, 2.03.30-bin, 2.03.30-lib x2, 2.03.30-man -> 2.03.27-lib, 2.03.31, 2.03.31-bin, 2.03.31-lib x2, 2.03.31-man
[U.]  #104  markdown-grammar-neovim                     0.10.4 -> 0.11.0
[U.]  #105  markdown_inline-grammar-neovim              0.10.4 -> 0.11.0
[U.]  #106  mediainfo                                   24.12 -> 25.03
[U.]  #107  mesa                                        25.0.1 -> 25.0.2
[U*]  #108  microsoft-edge                              134.0.3124.51, 134.0.3124.51_fish-completions -> 134.0.3124.68, 134.0.3124.68_fish-completions
[U.]  #109  modemmanager-qt                             6.11.0 -> 6.12.0
[U*]  #110  mtools                                      4.0.47 -> 4.0.48
[U*]  #111  neovim                                      0.10.4 -> 0.11.0
[U.]  #112  neovim-unwrapped                            0.10.4 -> 0.11.0
[U.]  #113  networkmanager-qt                           6.11.0 -> 6.12.0
[U*]  #114  nextcloud-client                            3.15.3, 3.15.3_fish-completions -> 3.16.2, 3.16.2_fish-completions
[C*]  #115  nix                                         2.24-devenv, 2.24-devenv-man, 2.24.12, 2.24.12-doc, 2.24.12-man -> 2.24-devenv, 2.24-devenv-man, 2.24.13, 2.24.13-doc, 2.24.13-man
[U*]  #116  nixd                                        2.6.1 -> 2.6.2
[U.]  #117  nixf                                        2.6.1 -> 2.6.2
[U.]  #118  nixos-system-valhalla                       25.05.20250319.a84ebe2 -> 25.05.20250330.52faf48
[U.]  #119  nixt                                        2.6.1 -> 2.6.2
[U.]  #120  opencolorio                                 2.4.1 -> 2.4.2
[U*]  #121  phpstorm                                    2024.3.4 -> 2024.3.5
[U*]  #122  pipewire                                    1.4.0 x2, 1.4.0-doc, 1.4.0-man -> 1.4.1 x2, 1.4.1-doc, 1.4.1-man
[C*]  #123  polkit                                      1.pam, 124, 124-bin, 124_fish-completions -> 1.pam, 126, 126-bin, 126_fish-completions
[U.]  #124  prison                                      6.11.0 -> 6.12.0
[U.]  #125  purpose                                     6.11.0 -> 6.12.0
[U.]  #126  python3.11-certifi                          2024.12.14 -> 2025.01.31
[U.]  #127  python3.11-pyzmq                            26.2.0 -> 26.2.1
[U.]  #128  python3.11-setuptools                       75.8.0 -> 75.8.2
[U.]  #129  python3.12-certifi                          2024.12.14 -> 2025.01.31
[U.]  #130  python3.12-evdev                            1.9.0 -> 1.9.1
[U.]  #131  python3.12-filelock                         3.16.1 -> 3.17.0
[U.]  #132  python3.12-jinja2                           3.1.5 -> 3.1.6
[U.]  #133  python3.12-levenshtein                      0.27.0 -> 0.27.1
[U.]  #134  python3.12-lxml                             5.3.0 -> 5.3.1
[U.]  #135  python3.12-lz4                              4.4.1 -> 4.4.3
[U.]  #136  python3.12-mako                             1.3.8 -> 1.3.9
[U.]  #137  python3.12-matplotlib                       3.10.0 -> 3.10.1
[U.]  #138  python3.12-psutil                           6.1.1 -> 7.0.0
[U.]  #139  python3.12-pydantic                         2.10.5 -> 2.10.6
[U.]  #140  python3.12-pymongo                          4.10.1 -> 4.11.2
[U.]  #141  python3.12-pyzmq                            26.2.0 -> 26.2.1
[U.]  #142  python3.12-rapidfuzz                        3.12.1 -> 3.12.2
[U.]  #143  python3.12-setproctitle                     1.3.4 -> 1.3.5
[U.]  #144  python3.12-setuptools                       75.8.0 -> 75.8.2
[U.]  #145  python3.12-tomli                            2.0.1 -> 2.2.1
[U.]  #146  python3.12-types-setuptools                 75.8.0.20250110 -> 75.8.2.20250305
[U.]  #147  qca                                         2.3.9 x2 -> 2.3.10 x2
[U*]  #148  qqc2-desktop-style                          6.11.0 -> 6.12.0
[U.]  #149  quazip                                      1.4 -> 1.5
[U.]  #150  query-grammar-neovim                        0.10.4 -> 0.11.0
[U.]  #151  rootlesskit                                 2.3.2 -> 2.3.4
[C*]  #152  solid                                       5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0
[C.]  #153  sonnet                                      5.116.0, 5.116.0-bin, 5.116.0-dev, 6.11.0 -> 5.116.0, 5.116.0-bin, 5.116.0-dev, 6.12.0
[U.]  #154  squashfuse                                  0.5.2 -> 0.6.0
[U*]  #155  strace                                      6.13, 6.13_fish-completions -> 6.14, 6.14-man
[U*]  #156  streamcontroller                            1.5.0-beta.7 -> 1.5.0-beta.8
[C.]  #157  syndication                                 5.116.0, 6.11.0 -> 5.116.0, 6.12.0
[C.]  #158  syntax-highlighting                         5.116.0, 5.116.0-bin, 6.11.0 -> 5.116.0, 5.116.0-bin, 6.12.0
[U.]  #159  tevent                                      0.16.1 -> 0.16.2
[U.]  #160  threadweaver                                6.11.0 -> 6.12.0
[U*]  #161  thunderbird                                 136.0 -> 136.0.1
[U.]  #162  thunderbird-unwrapped                       136.0 -> 136.0.1
[U.]  #163  v4l2loopback                                0.13.2-6.13.7, 0.13.2-6.13.7-bin -> 0.13.2-6.14, 0.13.2-6.14-bin
[U.]  #164  vim-grammar-neovim                          0.10.4 -> 0.11.0
[U.]  #165  vimdoc-grammar-neovim                       0.10.4 -> 0.11.0
[U*]  #166  vscode-extension-asvetliakov-vscode-neovim  1.18.18 -> 1.18.19
[C.]  #167  vulkan-loader                               1.4.304.0 x2 -> 1.4.304.0 x2, 1.4.304.0-dev
[U.]  #168  vvenc                                       1.13.0-lib -> 1.13.1-lib
[U.]  #169  webkitgtk                                   2.46.6+abi=4.0, 2.46.6+abi=4.1, 2.46.6+abi=6.0 -> 2.48.0+abi=4.0, 2.48.0+abi=4.1, 2.48.0+abi=6.0
[U*]  #170  xauth                                       1.1.3, 1.1.3_fish-completions -> 1.1.4, 1.1.4_fish-completions
[U*]  #171  xdg-desktop-portal-gtk                      1.15.2 -> 1.15.3
Added packages:
[A.]  #01  SDL_compat              1.2.68
[A.]  #02  binutils-wrapper        2.43.1
[A.]  #03  expand-response-params  <none>
[A.]  #04  gcc-wrapper             14-20241116
[A.]  #05  gnumake                 4.4.1
[A.]  #06  kdotool                 0.2.2-pre
[A.]  #07  lcevcdec                3.3.5-lib
[A.]  #08  libp11                  0.4.13
[A.]  #09  patchelf                0.15.0
[A.]  #10  sdl2-compat             2.32.52
[A.]  #11  sdl3                    3.2.8-lib
[A.]  #12  vulkan-headers          1.4.304.0
Removed packages:
[R.]  #1  SDL                    1.2.15 x2
[R.]  #2  directfb               1.7.7
[R.]  #3  libvisual              0.4.2 x2
[R.]  #4  libvterm-neovim        0.3.3
[R.]  #5  msgpack-c              6.1.0
[R.]  #6  python3.11-brotlicffi  1.1.0.0
[R.]  #7  python3.11-cffi        1.17.1
[R.]  #8  python3.11-pycparser   2.22
[R.]  #9  python3.12-brotlicffi  1.1.0.0
Closure size: 3258 -> 3259 (2904 paths added, 2903 paths removed, delta +1, disk usage +48.8MiB).

… so there’s a Linux kernel update, and bluez-qt along with the full kde-desktop update happening. Any thoughts on how I might narrow that down?

Hmm ok, downgrading just the kernel appears to fix it – I commented out:

boot.kernelPackages = pkgs.linuxPackages_latest;

in my config, and that downgraded my kernel from 6.14 to 6.12.21, and the mouse worked fine after a reboot – KDE did turn off Bluetooth, but when I toggled it back on the mouse re-connected just fine.

So I’m now guessing this is some change to the mouse’s drivers in the kernel, and how KDE tries to activate it. The message in the screenshot above mentions message bus security policy – is there a kernel change around that?