Lost bluetooth on RPi4 after update

My RPi4 runs Manjaro + SwayWM. I updated it today and completely lost Bluetooth. Previous update was about a month ago or so.

  • I now have to load btusb manually and restart the bluetooth service, which seems happy

  • I haven’t found any way suggesting that I have a bluetooth device somewhere

    $ rfkill list
    0: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no

    $ dmesg | grep -i blue
    [ 180.573523] Bluetooth: Core ver 2.22
    [ 180.573612] Bluetooth: HCI device and connection manager initialized
    [ 180.573632] Bluetooth: HCI socket layer initialized
    [ 180.573645] Bluetooth: L2CAP socket layer initialized
    [ 180.573678] Bluetooth: SCO socket layer initialized
    [ 190.523357] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
    [ 190.523365] Bluetooth: BNEP filters: protocol multicast
    [ 190.523379] Bluetooth: BNEP socket layer initialized

    $ hcitool scan
    Device is not available: No such device

    $ bluetoothctl
    Agent registered
    [bluetooth]# list
    [bluetooth]# show
    No default controller available

I saw a few posts reporting issues after kernel upgrade lately, I tried downgrading linux-rpi4 5.4.83 to 5.4.81, 5.4.80 with no effect.

Note that after the fresh install, bluetooth was working fine. After a some update I had to install pi-bluetooth package from AUR to get it working. Now, nothing.

I switched to the testing branch and did an upgrade and switch to the linux-rpi4 5.4.83 kernel and I also had bluetooth connecting issues with the image’s default bluetooth package. I then switched to the linux-rpi4-mainline kernel and was able to connect.

Try installing the linux-rpi4-mainline & linux-rpi4-mainline -headers packages and re-boot and see what it does.

You might as well stay on the linux-rpi4-mainline kernel as that is what the RPi folks are going to and all of their efforts right now is on the 5.10 kernel. They have not upgraded the 5.4 kernel in a month.

No change after installing linux-rpi4-mainline(-headers) + reboot, version is 5.10.1-1-MANJARO-ARM unfortunately.

Ok bluetooth is back.
I downgraded linux-firmware from 20201218.646f159-1 to 20201120.bc9cd0b-1 which had no effect.

What made it work is to reinstall the pi-bluetooth package version 1-3

I’m pretty sure I installed it manually at some point because I had troubles with bluetooth after an update a couple of months ago. For some reason it was replaced by 1.2_4 at some point. Today checking my pkg cache I found the 1-3 pkg and tried to reinstall it, it works fine.

$ cat /var/log/pacman.log  | grep pi-bluetooth
[2020-12-11T21:38:27+0100] [ALPM] upgraded pi-bluetooth (1-2 -> 1-3)
[2020-12-30T22:27:12+0100] [ALPM] upgraded pi-bluetooth (1-3 -> 1.2_4-1)
[2021-01-18T17:58:22+0100] [PACMAN] Running 'pacman -Rns pi-bluetooth'
[2021-01-18T17:58:24+0100] [ALPM] removed pi-bluetooth (1.2_4-1)
[2021-01-18T19:32:30+0100] [ALPM] installed pi-bluetooth (1.2_4-1)
[2021-01-20T20:56:02+0100] [PACMAN] Running 'pacman -U /var/cache/pacman/pkg/pi-bluetooth-1-3-aarch64.pkg.tar.zst'
[2021-01-20T20:56:05+0100] [ALPM] downgraded pi-bluetooth (1.2_4-1 -> 1-3)

Since I had downgraded stuff after the update I have currently:
linux-rpi4-headers [Installed] 5.4.80-1
linux-rpi4 [Installed] 5.4.80-1
linux-firmware [Installed] 20201120.bc9cd0b-1
pi-bluetooth [Installed] 1-3 AUR

Note that 1-3 is not the version on AUR.

Now that I know how to get it working I’ll try to upgrade the kernel and firmware later.

I really do not know where to begin.

Not our package

We stopped using that a while back because of people were having choppy bluetooth audio; it it not even in the repo now. We switched to brcm-patchram-plus. Both of these packages should work as they use the firmware in /usr/lib/firmware/brcm/.

While trying to fix my issue, I did fresh install on another SD card using same image I used a few months ago in order to compare with my current system, the image was Manjaro sway 20.10 on Oct 17 according to my fs’ timestamp (I just checked, the sha1sum for this img is different from the one currently available for download on the website), it comes with community/pi-bluetooth 1-2 installed. The timestamp for pi-bluetooth 1-3 in my pkg cache is Nov 15, so I don’t know whether it somewhat matches the time when pi-bluetooth was removed, but I remember that it was already related to this package last time I had to fix a bluetooth issue.

We switched to brcm-patchram-plus. Both of these packages should work as they use the firmware in /usr/lib/firmware/brcm/.

This is not installed on my setup, I’ll try it see how it goes.