The Tallest Dwarf

RSSEmailMastodonNewsletterTwitterGitHubDribbbleLinkedInFacebookInstagramYouTubePinterestReddit icon

Fixing bluetooth issues on Raspberry Pi

Posted at — Sep 17, 2020 by Abishek Muthian

I had trouble pairing Colmi P8 watch with Raspberry Pi 3B running Arch Linux via bluetooth and I had to resort to following actions to resolve it. If you are facing bluetooth issues with newer Raspberry Pi, these fixes may work but I haven't tested them for newer RPi.

Do Nothing

First try connecting to the bluetooth device with bluetoothctl to check if it was just user error.

Install the user level packages - bluez, bluez-utils (If you are trying to use any old bluetooth related software or program, you might need bluez-utils-compat instead).

Restart and enable bluetooth service.

$ systemctl restart bluetooth.service && systemctl enable bluetooth.service

Execute the following bluetoothctl commands to pair with the bluetooth device.

$ bluetoothctl
[bluetooth]# select [MAC ADDRESS OF THE CONTROLLER]
[bluetooth]# power on
[bluetooth]# agent on
[bluetooth]# discoverable on
[bluetooth]# scan on
[bluetooth]# pairable on
[bluetooth]# devices
[bluetooth]# info [MAC ADDRESS OF THE DEVICE]
[bluetooth]# connect [MAC ADDRESS OF THE DEVICE]
[bluetooth]# pair [MAC ADDRESS OF THE DEVICE]

If the pairing was successful, then everything was working as it should, there is nothing further to do, enjoy your bluetooth device.

HID2HCI

Changing the bluetooth profile from HID to HCI helped fix bluetooth issues for some.

Install bluez-hid2hci.

Restart and enable bluetooth service.

$ systemctl restart bluetooth.service && systemctl enable bluetooth.service

Try the Do Nothing once again.

Adding device tree node

If HID2HCI didn't work, try this as the last resort.

Follow the instructions by Shengaoyang to add the node to the device tree, which will inform the kernel about the bluetooth. This is needed only for non-mainline kernel.

Try the Do Nothing once again.

Newsletter

I strive to write low frequency, High quality content on Health, Product Development, Programming, Software Engineering, DIY, Security, Philosophy and other interests. If you would like to receive them in your email inbox then please consider subscribing to my Newsletter.