Score:4

After installing BCM43142 driver bluetooth stopped working ubuntu 21.04

us flag

I recently dual boot windows 10 pro and ubuntu 21.04, after installing ubuntu 21.04 when i boot into ubuntu everything works fine except the wifi at that time my bluetooth was working fine but there was no wifi so installed BCM43142 drivers from synaptic package manager and after installing drivers when i reboot my system my wifi start working but my bluetooth stopeped working and stop detecting other devices and connecting already paired devices i already tried many thing like install pulseaudio, restarting bluetooth services, rfkill, reinstalling bluetooth drivers. Nothing work my bluetooth work on windows 10 but not in ubuntu pls help.

lspci output:

00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 0b)
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b)
00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 0b)
00:14.0 USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
00:16.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04)
00:1b.0 Audio device: Intel Corporation 8 Series HD Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 1 (rev e4)
00:1c.2 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 3 (rev e4)
00:1c.3 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 4 (rev e4)
00:1d.0 USB controller: Intel Corporation 8 Series USB EHCI #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation 8 Series LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 8 Series SATA Controller 1 [AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 8 Series SMBus Controller (rev 04)
06:00.0 Network controller: Broadcom Inc. and subsidiaries BCM43142 802.11b/g/n (rev 01)
07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL810xE PCI Express Fast Ethernet controller (rev 07)

lsusb output:

Bus 001 Device 006: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 001 Device 005: ID 0a5c:21d7 Broadcom Corp. BCM43142 Bluetooth 4.0
Bus 001 Device 004: ID 1bcf:2b8b Sunplus Innovation Technology Inc. 
Bus 001 Device 003: ID c0f4:04e0  
Bus 001 Device 002: ID 8087:8000 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 002: ID 1ea7:0064 SHARKOON Technologies GmbH 2.4G Mouse
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

systemctl | grep -i blue output:

sys-devices-pci0000:00-0000:00:1d.0-usb1-1\x2d1-1\x2d1.6-1\x2d1.6:1.0-bluetooth-hci0.device loaded active     plugged   /sys/devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1.6/1-1.6:1.0/bluetooth/hci0
  sys-subsystem-bluetooth-devices-hci0.device                                                 loaded active     plugged   /sys/subsystem/bluetooth/devices/hci0                                       
  bluetooth.service                                                                           loaded active     running   Bluetooth service                                                           
  bluetooth.target                                                                            loaded active     active    Bluetooth           

dmesg | gerp -i blue output:

[   13.604256] Bluetooth: Core ver 2.22
[   13.604289] Bluetooth: HCI device and connection manager initialized
[   13.604296] Bluetooth: HCI socket layer initialized
[   13.604299] Bluetooth: L2CAP socket layer initialized
[   13.604304] Bluetooth: SCO socket layer initialized
[   15.782083] Bluetooth: hci0: BCM: chip id 70
[   15.783095] Bluetooth: hci0: BCM: features 0x06
[   15.799205] Bluetooth: hci0: shubhang
[   15.799210] Bluetooth: hci0: BCM43142A0 (001.001.011) build 0000
[   16.221057] Bluetooth: hci0: BCM: firmware Patch file not found, tried:
[   16.221061] Bluetooth: hci0: BCM: 'brcm/BCM43142A0-0a5c-21d7.hcd'
[   16.221063] Bluetooth: hci0: BCM: 'brcm/BCM-0a5c-21d7.hcd'
[   18.227516] Bluetooth: hci0: command 0x1003 tx timeout
[   18.229200] Bluetooth: hci0: unexpected event for opcode 0x1003
[   35.453929] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   35.453931] Bluetooth: BNEP filters: protocol multicast
[   35.453935] Bluetooth: BNEP socket layer initialized
[   38.227471] Bluetooth: hci0: command 0x1003 tx timeout
[   38.229183] Bluetooth: hci0: unexpected event for opcode 0x1003
[   74.818324] Bluetooth: RFCOMM TTY layer initialized
[   74.818333] Bluetooth: RFCOMM socket layer initialized
[   74.818343] Bluetooth: RFCOMM ver 1.11

bluetoothctl output:

Agent registered
[CHG] Controller AC:D1:B8:DB:69:38 Pairable: yes

rfkill output:

ID TYPE      DEVICE         SOFT      HARD
 0 wlan      dell-rbtn unblocked unblocked
 1 wlan      phy0      unblocked unblocked
 2 wlan      brcmwl-0  unblocked unblocked
 3 bluetooth hci0      unblocked unblocked

rfkill list all output:

0: dell-rbtn: Wireless LAN
    Soft blocked: no
    Hard blocked: no
1: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no
2: brcmwl-0: Wireless LAN
    Soft blocked: no
    Hard blocked: no
3: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no
Score:0
us flag

From Bluetooth Broadcom 43142 isn't working

That's all what you need: https://github.com/winterheart/broadcom-bt-firmware

On this repository you can find more informations and all Broadcom wireless card drivers needed.


To be more concrete I give you the instructions I wrote for myself:

This tutorial is intended to make the wireless/bluetooth network card Broadcom Corporation BCM43142 802.11b/g/n (rev 01) (Device ID: 0a5c:216d) working on Linux systems (I tried it on Elementary OS 0.4.1 Loki, based on Ubuntu 16.04.3 LTS).

It could not work for other devices but it should not vary too much from this procedure for other Broadcom devices. The needed Broadcom drivers are on this GitHub's reposity folder in .hcd format.

  1. Enter the following command to discover which driver name is the kernel looking for when loading the drives while booting:

    dmesg | grep -i 'firmware load'
    

    Try this one if it does not find anything:

    dmesg | grep -i 'bluetooth'
    

    The result should be something like this:

    bluetooth hci0: Direct firmware load for brcm/BCM.hcd failed with error -2
    

Explanation: in my case the kernel is looking for the file BCM.hcd under the directory /lib/firmware/brcm where the Broadcom drivers are expected to be. If the Kernel is looking for another driver name, you must rename the driver file (BCM43142A0-0a5c-216c.hcd in my case for the BCM43142 (0a5c:216d)) to the required name by the kernel.

  1. Move the renamed driver (BCM.hcd) to your home directory (/home/YourUsername/) and run the following command in order to move it to the folder the kernel is looking on while booting:

    sudo mv ~/BCM.hcd /lib/firmware/brcm
    

You must use the corresponding driver depending on your device and rename it if requested for the kernel.

  1. Reboot your computer and it should work!* (you can enter dmesg | grep -i 'bluetooth' once again to see if the driver has been loaded)
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.