Linux Bluetooth BCM4314, Setup, Pair and Connect

Recently i unable to have my bluetooth running properly in my laptop.
And now, will have it works. Here are the steps

1. Check with `dmesg`
    $ sudo -s
    # dmesg | grep -i 'bluetooth'    

  Bluetooth: hci1: BCM: chip id 70
  Bluetooth: hci1: BCM43142A
  Bluetooth: BCM43142A0 (001.001.011) build 0312
             bluetooth hci1: Direct firmware load for brcm/BCM43142A0-105b
             e065.hcd 
failed with error -2
  Bluetooth: hci1: BCM: Patch brcm/BCM43142A0-105b-e065.hcd not found

2. Copy the patch file, refer to this git-repo.
    // in my debian10 i have no brcm/ dir like mentioned in repo
    # mkdir /lib/firmware/brcm

    // then copy this file into the dir

3. Reboot and `dmesg`
     Bluetooth: hci1: BCM: chip id 70
     Bluetooth: hci1: BCM: features 0x06
     Bluetooth: hci1: BCM43142A
     Bluetooth: hci1: BCM43142A0 (001.001.011) build 0000
                       bluetooth hci1: firmware: direct-loading firmware brcm/BCM43142A0-105b-e065.hcd
     Bluetooth: hci1: BCM43142A0 (001.001.011) build 0312

4. Run systemctl
    # systemctl status bluetooth

   bluetooth.service - Bluetooth service

   Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)

   Active: active (running) since Sat 2022-04-16 16:00:21 WIB; 31min ago

     Docs: man:bluetoothd(8)

 Main PID: 682 (bluetoothd)

   Status: "Running"

    Tasks: 1 (limit: 4915)

   Memory: 3.4M

   CGroup: /system.slice/bluetooth.service

           └─682 /usr/lib/bluetooth/bluetoothd --noplugin=sap


Apr 16 16:00:18 debian8 systemd[1]: Starting Bluetooth service...

Apr 16 16:00:19 debian8 bluetoothd[682]: Bluetooth daemon 5.50

Apr 16 16:00:21 debian8 systemd[1]: Started Bluetooth service.

Apr 16 16:00:21 debian8 bluetoothd[682]: Starting SDP server

Apr 16 16:00:21 debian8 bluetoothd[682]: Excluding (cli) sap

Apr 16 16:00:21 debian8 bluetoothd[682]: Bluetooth management interface 1.14 initialized

Apr 16 16:00:21 debian8 bluetoothd[682]: Failed to set mode: Blocked through rfkill (0x12)

Apr 16 16:01:42 debian8 bluetoothd[682]: Endpoint registered: sender=:1.131 path=/MediaEndpoint/A2DPSource

Apr 16 16:01:42 debian8 bluetoothd[682]: Endpoint registered: sender=:1.131 path=/MediaEndpoint/A2DPSink


5. I might somehow blocked the bluetooth long time ago, since it is not accessiable
    and it draining the battery, so i `rfkill` or blocked it. Now it is time to unblock it
    # rfkill unblock bluetooth
    # systemctl restart bluetooth
    # systemctl status bluetooth
    // Success it is now working

6. Pair and Connect with `bluetoothctl`
    # bluetootctl
    > scan on
    [NEW] Device 41:42:1B:87:1D:B6 I7-TWS <-- this is my bluetooth headset
    [CHG] Device 7E:40:60:27:17:5B RSSI: -41
    [NEW] Device 45:2A:2B:A1:36:1F 45-2A-2B-A1-36-1F
    > pair 41:42:1B:87:1D:B6
    > connect 41:42:1B:87:1D:B6
    // Done, and now i can listen to my music :D



Comments