So every once in a while I get issues with my bluetooth devices, mostly my BT keyboard (RK70) not being able to connect to my laptop (Manjaro).
There is a comprehensive description for Arch linux that describes various ways of troubleshooting the issue.
Allthough I have not figured out exactly what the issue is here is what I did to make sure it is solved.
Reconnect after boot
As described here edit the /etc/bluetooth/main.conf
and add
1
2
[Policy]
AutoEnable=true
Once I set this up, my BT keyboard pairs with the PC directly after a boot if the keyboard is available.
Add device via terminal
Run the bluetoothctl
which will which will opent the bluetooth cli interface.
list
will show which controllers (bluetooth trancievers) you have. Assert that the correct one is used..
show
+ TAB and choose your controller MAC to see its information. Check for any discrepancies.
devices
will show what devices are known to the system.
paired-devices
shows consequently which are paired. It should be those under devices
or a subset thereof.
If you are facing issues with your devide connecting and then immediatly disconnecting and perhaps even cycling through that procedure mutliple times (as it is in my case) here is what I did.
#. Reve device: remove
+ TAB and pick the MAC id
#- scan
to monitor new devices
#. Start pairing from the device and check for new MAC ids popping up during scann.
#. Pair to the device using pair
+ TAB to pick the correct MAC id.
#. Allow to pair. and then trust
+ TAB to pick the same MAC id.
#. Compare the content of paired-devices
. Remove anythging else other than what you know you have paired to.
In my case I found other MAC addesses of devices that were causing the connect-disconnect issues. Once I removed them, my device paired just fine.
The CLI also lists what is happening during a pair of a known device or anything else.
As to my suspicion to what the issue was, I am thinking that it could have been my BT mouse that is connected to the PC using dedicated dongle. But I am not sure. Anyway, this at leaset worked in my case.