I am moving from a Thinkpad X260 to a Thinkpad T450 because of the bigger screen. I am using a Thinkpad Bluetooth Laser Mouse.

On the X260 I run Manjaro Cinnamon and bluetooth works impeccably with this mouse. When I get back to the desktop from the lockscreen, suspend or boot I just need to wiggle my bluetooth mouse for a bit and it reconnects.

On the T450 I installed Manjaro Cinnamon fresh with Manjaro Architect. I see the following behavior:

after lockscreen, suspend or boot the bluetooth mouse is not paired and will not automatically reconnect

I have to manually push the pairing mode button on the mouse, open the bluetooth manager and re-pair the mouse. When this is done, the mouse works fine.

after boot I see the bluetooth icon in the tray flicker a couple of times when I wiggle my mouse and if I put the pointer on the icon, I can see the mouse is connecting/disconnecting rapidly

after maybe 30 seconds or so this connecting/disconnecting stops and it is no longer trying to connect to the mouse

I have added the mouse-definition and a default pincode of 0000 to /usr/share/gnome-bluetooth/pin-code-database.xml

I have set AutoConnectTimeout=0 and AutoEnable=true in /etc/bluetooth/main.conf

That pretty much exhausted my bluetooth knowledge.

dmesg is showing a Bluetooth error: “Bluetooth: hci0: last event is not cmd complete (0x0f)”. This is already being discussed on kernel.org and I can find some references to it in Ubuntu mailinglists and bugtracker, but it would appear that this bug does not cause any of the behavior I mentioned.

Okay, I have solved this issue, but the resolution leaves me deeply unsatisfied.

Solution:
I had Blueman-manager installed. I used the Blueman-manager gui to untrust and remove my mouse, and then clicked discovery, added and trusted my mouse.

Apparently this fixed some configuration thingy somewhere and now my mouse stays paired and reconnects after suspend and reboot again. Amazing!

However, I had untrusted/removed and added/trusted the mouse many times both through the default Cinnamon Bluetooth device manager and through bluetoothctl on the command line and that didn’t fix my problems.

So, while my problem has gone away now, it is not fixed (and that’s what I can’t stand!).