I want to use Bluetooth on a Raspberry Pi 4B which has Bluetooth included.

I used an Ubuntu 20.04 64-bit server image (using the Imager) mostly because I already know this OS. After a fresh install, SSH connection, installation of bluez, it can't find the device. The following commands returned nothing:

$ hcitool dev

$ hciconfig -a

I just reinstalled a Raspberry Pi OS 32-bit Lite (still with the Imager) on the micro-SD and without installing anything it works. Here is the output:

$ hcitool dev
    hci0    DC:A6:32:86:B6:5F

$ hciconfig -a
hci0:   Type: Primary  Bus: UART
    BD Address: DC:A6:32:86:B6:5F  ACL MTU: 1021:8  SCO MTU: 64:1
    RX bytes:1500 acl:0 sco:0 events:88 errors:0
    TX bytes:2956 acl:0 sco:0 commands:88 errors:0
    Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
    Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 
    Link policy: RSWITCH SNIFF 
    Link mode: SLAVE ACCEPT 
    Name: 'raspberrypi'
    Class: 0x000000
    Service Classes: Unspecified
    Device Class: Miscellaneous, 
    HCI Version: 5.0 (0x9)  Revision: 0x13b
    LMP Version: 5.0 (0x9)  Subversion: 0x6119
    Manufacturer: Cypress Semiconductor Corporation (305)

What is missing on my Ubuntu ? Is it able to use the BT device ?

  • Don't ask us - ask Canonical. They insist on using their own kernel and firmware.
    – Milliways
    Jul 23, 2020 at 12:35
  • 1
    I hesitated about asking on AskUbuntu but I thought this maybe was something more related about RPIs...
    – AymDev
    Jul 23, 2020 at 12:37
  • Driver in kernel? Dec 10, 2023 at 14:10

3 Answers 3


Finally solved it !
I thought this was an issue and searched how to "fix" it but it is an intended behaviour.

20.04 solution (source [FR]):

Install the pi-bluetooth package:

sudo apt-get install pi-bluetooth

Edit the /boot/firmware/usrcfg.txt file to add the following line at the end:

include btcfg.txt


sudo reboot

Check that the device is detected:

hciconfig -a

hci0:   Type: Primary  Bus: UART
  • Please accept your own answer with a click on the tick on its left side. Only this will finish the question and it will not pop up again year for year.
    – Ingo
    Jul 28, 2020 at 8:14
  • @Ingo done ! Went away before I could accept my answer.
    – AymDev
    Jul 29, 2020 at 17:33
  • maybe the file /boot/firmware/usrcfg.txt should be /boot/firmware/usercfg.txt
    – scegg
    Apr 25, 2021 at 3:36

On Ubuntu 22.04 Desktop (Raspberry Pi Imager version), this is how I got it working:

From a terminal, sudo apt update && sudo apt upgrade

When that's all done (and it will take a while), run this:

sudo apt install bluetooth pi-bluetooth bluez blueman

Some of those might already be installed, it's ok just let it do it's thing... next, REBOOT

After you log back in from the reboot, you will see a little bluetooth icon at the upper right of your screen. Click on it and add your Bluetooth devices in there (blueman is the name of that app).


On 22.04 you might need to do an additional step to installing pi-bluetooth. Disable the serial uart that interferes with the bluetooth interface. Edit /boot/firmware/config.txt and set enable_uart=0 or run sudo pibootctl set serial.enabled=off

For some reason 22.04 removes the btcmd.txt that's included in other distributions, so make sure your /boot/firmware/cmdline.txt includes the following settings: net.ifnames=0 dwc_otg.lpm_enable=0 console=tty1 root=LABEL=writable rootfstype=ext4 elevator=deadline rootwait fixrtc

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.