I have a USB Bluetooth dongle. I chose this one, because multiple websites suggested, it would work out of the box. But it is not working at all. So how do I debug the problem?
When I open the settings, the Bluetooth is disabled. I can click the toggle button, which changes, but there is no effect. After closing settings and reopening again, the toggle is back to off
.
I can see the device when running lsusb
:
Bus 002 Device 003: ID 0a5c:5801 Broadcom Corp. BCM5880 Secure Applications Processor with fingerprint swipe sensor
Bus 002 Device 002: ID 8087:8000 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0c45:64d0 Microdia Integrated Webcam
Bus 001 Device 002: ID 8087:8008 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 006: ID 0a5c:21e8 Broadcom Corp. BCM20702A0 Bluetooth 4.0 <-- here it is!
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
But when I run hciconfig --all
I get no results.
systemctl status bluetooth.service
:
● bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2021-03-04 13:15:20 CET; 29min ago
Docs: man:bluetoothd(8)
Main PID: 241569 (bluetoothd)
Status: "Running"
Tasks: 1 (limit: 19028)
Memory: 976.0K
CGroup: /system.slice/bluetooth.service
└─241569 /usr/lib/bluetooth/bluetoothd
Mär 04 13:15:20 scala bluetoothd[241569]: src/main.c:parse_controller_config() Key file does not have group “Controller”
Mär 04 13:15:20 scala bluetoothd[241569]: src/main.c:parse_controller_config() Key file does not have group “Controller”
Mär 04 13:15:20 scala bluetoothd[241569]: src/main.c:parse_controller_config() Key file does not have group “Controller”
Mär 04 13:15:20 scala bluetoothd[241569]: src/main.c:parse_controller_config() Key file does not have group “Controller”
Mär 04 13:15:20 scala bluetoothd[241569]: src/main.c:parse_controller_config() Key file does not have group “Controller”
Mär 04 13:15:20 scala bluetoothd[241569]: src/main.c:parse_controller_config() Key file does not have group “Controller”
Mär 04 13:15:20 scala bluetoothd[241569]: src/main.c:parse_controller_config() Key file does not have group “Controller”
Mär 04 13:15:20 scala systemd[1]: Started Bluetooth service.
Mär 04 13:15:20 scala bluetoothd[241569]: Starting SDP server
Mär 04 13:15:20 scala bluetoothd[241569]: Bluetooth management interface 1.17 initialized
sudo dmesg | egrep -i 'blue|firm'
:
[ 0.119119] Spectre V2 : Enabling Restricted Speculation for firmware calls
[ 0.145598] ACPI: [Firmware Bug]: BIOS _OSI(Linux) query ignored
[ 66.769407] Bluetooth: Core ver 2.22
[ 66.769432] Bluetooth: HCI device and connection manager initialized
[ 66.769437] Bluetooth: HCI socket layer initialized
[ 66.769439] Bluetooth: L2CAP socket layer initialized
[ 66.769441] Bluetooth: SCO socket layer initialized
[ 248.927546] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 248.927547] Bluetooth: BNEP filters: protocol multicast
[ 248.927550] Bluetooth: BNEP socket layer initialized
rfkill list
:
1: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
2: brcmwl-0: Wireless LAN
Soft blocked: no
Hard blocked: no
3: dell-wifi: Wireless LAN
Soft blocked: no
Hard blocked: no
4: dell-bluetooth: Bluetooth
Soft blocked: no
Hard blocked: no
Additional info: I have disabled the on-board dell bluetooth in the BIOS.
This is what I see in syslog
after plugging in the dongle:
Mar 4 13:37:47 scala kernel: [ 4814.594335] usb 3-2: new full-speed USB device number 7 using xhci_hcd
Mar 4 13:37:47 scala kernel: [ 4814.745408] usb 3-2: New USB device found, idVendor=0a5c, idProduct=21e8, bcdDevice= 1.12
Mar 4 13:37:47 scala kernel: [ 4814.745410] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Mar 4 13:37:47 scala kernel: [ 4814.745411] usb 3-2: Product: BCM20702A0
Mar 4 13:37:47 scala kernel: [ 4814.745412] usb 3-2: Manufacturer: Broadcom Corp
Mar 4 13:37:47 scala kernel: [ 4814.745412] usb 3-2: SerialNumber: 5CF3709F4FCE
Mar 4 13:37:47 scala mtp-probe: checking bus 3, device 7: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-2"
Mar 4 13:37:47 scala mtp-probe: bus: 3, device: 7 was not an MTP device
Mar 4 13:37:47 scala mtp-probe: checking bus 3, device 7: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-2"
Mar 4 13:37:47 scala mtp-probe: bus: 3, device: 7 was not an MTP device
Mar 4 13:37:52 scala pcscd[330950]: 66748427 commands.c:1120:CmdPowerOff Card absent or mute
Mar 4 13:37:52 scala systemd[1]: pcscd.service: Succeeded.
What is the next thing to check?
The "next thing" from the list would be to see whether there is a "soft block" in place on the Bluetooth device. Via Terminal, run this:
You may see something like this:
If you see that the bluetooth device is soft blocked, you may be able to resolve the issue with the following commands:
Additionally, you may need to restart the Bluetooth service afterwards:
So long as you don't mind trying questionable things from time to time, you could try using an "alternative firmware" with the device:
/lib/firmware/brcm
directory with a name following the{device model}-{manufacturer id}-{device id}.hcd
format:The solution comes from a German Linux Mint forum and, looking around to see how effective the solution is, it seems to work for a good number of people.
Hopefully this will allow you to use your Bluetooth device without any further hassle ??