RPi4 Bluetooth module not recognized
The RPi 4's Bluetooth module is not recognized by the stock kernel currently shipping with AlmaLinux.
[root@pi ~]# rfkill list 0: phy0: Wireless LAN Soft blocked: no Hard blocked: no
[root@pi ~]#uname -a Linux localhost 5.15.45-v8.1.el8 #1 SMP PREEMPT Mon Jun 6 19:47:28 UTC 2022 aarch64 aarch64 aarch64 GNU/Linux
Have bluez installed Put this bluetooth driver https://raw.githubusercontent.com/RPi-Distro/bluez-firmware/master/broadcom/BCM4345C0.hcd in /usr/lib/firmware/brcm dir RUN ln -s /usr/lib/firmware /etc/firmware reboot Then use hciattch command to set up bluez
@SolidState214 is the steps given by @guzongzi helped to resolve your issue. An update would be greatly appreciated
I faced with the same issue on AL9 with 3b+. There is my way to solve it:
- Install bluez and dtc compiler
dnf install bluez dtc - Get .dts file for bcm bluetooth
wget https://raw.githubusercontent.com/RoEdAl/alarm-bluetooth-raspberrypi/master/bcmbt-overlay.dts - Convert it to .dtbo
dtc -I dts -O dtb bcmbt-overlay.dts -o /boot/overlays/bcmbt.dtbo - Remove
console=ttyAMA0,115200from /boot/cmdline.txt, cause it conflicts with uart0 which is used to communicate with bluetooth - Add these 2 lines to your /boot/config.txt
dtoverlay=bcmbt
dtparam=krnbt=on
- Enable bluetooth service:
systemctl enable bluetooth - Reboot
Now you can see loaded btbcm module, btmon and bluetoothctl shows bt controller.
This seems to be resolved.
[root@raspberry-pi ~]# uname -a
Linux raspberry-pi 6.1.31-v8.1.el9 #1 SMP PREEMPT Wed Jun 14 12:18:16 UTC 2023 aarch64 aarch64 aarch64 GNU/Linux
[root@raspberry-pi ~]# rfkill list
0: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
1: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
[root@raspberry-pi ~]# bluetoothctl list
Controller AA:AA:AA:AA:AA:AA raspberry-pi [default]
[root@raspberry-pi ~]# bluetoothctl show
Controller AA:AA:AA:AA:AA:AA (public)
Name: raspberry-pi
Alias: raspberry-pi
Class: 0x00000000
Powered: yes
Discoverable: no
DiscoverableTimeout: 0x000000b4
Pairable: no
UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
UUID: Generic Access Profile (00001800-0000-1000-8000-00805f9b34fb)
UUID: PnP Information (00001200-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control (0000110e-0000-1000-8000-00805f9b34fb)
UUID: Device Information (0000180a-0000-1000-8000-00805f9b34fb)
Modalias: usb:v1D6Bp0246d0540
Discovering: no
Roles: central
Roles: peripheral
Advertising Features:
ActiveInstances: 0x00 (0)
SupportedInstances: 0x05 (5)
SupportedIncludes: tx-power
SupportedIncludes: appearance
SupportedIncludes: local-name
[root@raspberry-pi ~]# systemctl status bluetooth
● bluetooth.service - Bluetooth service
Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; preset: enabled)
Active: active (running) since ...
Yes, I worked on this. I have tested with RPi4 and RPi400. It will be resolved in upcoing 9.3 image.
9.3 image has been released.