Using Bluetooth w/ RPi4 on UC18


I’m trying to get Bluetooth support working on an RPi4 running UC18.

With the bluez snap is installed, the controller is not available:

$ sudo bluez.bluetoothctl
Agent registered
[bluetooth]# devices
No default controller available

I was able to get it to work by following the discussion in this thread:

$  sudo snap refresh bluez --channel=edge --devmode
$ sudo hciattach /dev/ttyAMA0 bcm43xx 921600 noflow -
Flash firmware /lib/firmware/brcm/BCM4345C0.hcd
Set Controller UART speed to 921600 bit/s
Device setup complete
opennms@localhost:~$ sudo bluetoothctl
[NEW] Controller DC:A6:32:40:A7:BD BlueZ 5.47 [default]
Agent registered
[bluetooth]# agent on
Agent is already registered
[bluetooth]# default-agent
Default agent request successful
[bluetooth]# power on
[CHG] Controller DC:A6:32:40:A7:BD Class: 0x00100000
Changing power on succeeded
[CHG] Controller DC:A6:32:40:A7:BD Powered: yes
[bluetooth]# scan on
Discovery started
[CHG] Controller DC:A6:32:40:A7:BD Discovering: yes
[NEW] Device 00:55:DA:B5:35:5A Muse-355A
[bluetooth]# quit
Agent unregistered
[DEL] Controller DC:A6:32:40:A7:BD BlueZ 5.47 [default]

But this only works if the bluez snap is in devmode. Any ideas on how to get this to work while keeping bluez confined?

i know that @koza used to work on

which was supposed to help with the bluez setup …

Do we know where the source code is for that snap?

looks like it is here: