CM3 Unable to bring Bluetooth interface up

We have a CM3 with custom Yocto build, however we are unable to bring Bluetooth up. I get the error message

root@device:/usr/sbin# hciconfig hci0 up
Can't init device hci0: Connection timed out (110)
root@device:/usr/sbin# hciconfig
hci0:	Type: Primary  Bus: UART
	BD Address: E8:FB:1C:F5:F7:8C  ACL MTU: 1021:8  SCO MTU: 64:1
	DOWN 
	RX bytes:687 acl:0 sco:0 events:36 errors:0
	TX bytes:447 acl:0 sco:0 commands:39 errors:0

root@device:/usr/sbin# systemctl status bluetooth
● bluetooth.service - Bluetooth service
     Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2023-05-27 21:26:35 UTC; 1 day 13h ago
       Docs: man:bluetoothd(8)
   Main PID: 286 (bluetoothd)
     Status: "Running"
      Tasks: 1 (limit: 1748)
     Memory: 1.8M
     CGroup: /system.slice/bluetooth.service
             └─286 /usr/libexec/bluetooth/bluetoothd

May 27 21:26:34 device systemd[1]: Starting Bluetooth service...
May 27 21:26:35 device systemd[1]: Started Bluetooth service.

From journal
May 29 11:19:03 device kernel: Bluetooth: hci0: command 0x1003 tx timeout
May 29 11:19:03 device kernel[205]: [136350.482996] Bluetooth: hci0: command 0x1003 tx timeout
May 29 11:19:06 device kernel: Bluetooth: hci0: command 0x1001 tx timeout
May 29 11:19:06 device kernel[205]: [136352.616281] Bluetooth: hci0: command 0x1001 tx timeout
May 29 11:19:08 device kernel: Bluetooth: hci0: command 0x1009 tx timeout
May 29 11:19:08 device kernel[205]: [136354.749531] Bluetooth: hci0: command 0x1009 tx timeout

Any suggestions on where to look as I see no differences between the standard Debian image and our build.

Thanks

Adam

try reloading driver:

hciconfig hci0 down
rmmod btusb
modprobe btusb
hciconfig hci0 up

Thanks, have tried but makes no difference Bluetooth is connected over UART so we are not using btusb

You can try if the firmware is loaded by dmesg | grep Bluetooth.

Thanks, this is result from dmesg

[    5.867286] Bluetooth: Core ver 2.22
[    5.867477] Bluetooth: HCI device and connection manager initialized
[    5.871900] Bluetooth: HCI socket layer initialized
[    5.872010] Bluetooth: L2CAP socket layer initialized
[    5.872150] Bluetooth: SCO socket layer initialized
[    5.905875] Bluetooth: HCI UART driver ver 2.3
[    5.905922] Bluetooth: HCI UART protocol H4 registered
[    5.905935] Bluetooth: HCI UART protocol ATH3K registered
echo 0 > /sys/class/rfkill/rfkill0/state
echo 1 > /sys/class/rfkill/rfkill0/state
brcm_patchram_plus1 --enable_hci --no2bytes --use_baudrate_for_download --tosleep 200000 --baudrate 1500000 --patchram /vendor/etc/firmware/BCM4345C0.hcd /dev/ttyS1 &

/vendor/etc/firmware/BCM4345C0.hcd is bt firmware.
have a try

Thank you, that allowed me to bring up the interface and from there fix the init scripts