Hello, I recently did a clean install of Manjaro 18.0.2 on my Lenovo Yoga 3 14 laptop. I’m unable to connect any bluetooth mice or keyboards. The bluetooth seems to be set up correctly, as far as I can tell — when I run “sudo systemctl status bluetooth”, it says “Active (running)”. However, when I right click the Bluetooth icon in the panel and select “Set up new device”, nothing shows up in the search. even when the devices are right next to the laptop and in pairing mode. I don’t know if there could be some sort of driver or firmware issue at play, but I’m assuming if there were, that the bluetooth service wouldn’t show as running OK. I have no idea how to diagnose this or attempt to fix it. Can anyone advise?
dmesg | grep -i bluetooth
lsusb | grep -i bluetooth
Please post the input/outputs of all requested commands via the terminal as text, (not as pics).
Information on how to properly post hardware specs and logs:
Please format any terminal output with three backticks before and after, as shown in this picture:
From searching your laptop model it appears you may have a broadcom blutooth device.
If the lsusb and dmesg commands identify a broadcom device, then follow the procedure below:
Winterheart Broadcom Bluetooth Firmware Installation
Detection and Installation:
Find your bluetooth chipset and device ID
lsusb | grep -i bluetooth
This package is intended to provide firmware for Broadcom Bluetooth devices.
This includes BCM20702, BCM20703, BCM43142 chipsets (and others) for the Linux kernel.
The firmware is located here:
git clone https://github.com/winterheart/broadcom-bt-firmware
The above command will download the firmware to your home directory as:
Copy the downloaded file BCM20703A1-0a5c-6410.hcd to /lib/firmware/brcm/BCM-0a5c-6410.hcd (for the bcm4360), substitute your adapter model.
Figure out where the kernel is looking for the firmware from the dmesg log, copy the firmware to that location.
dmesg | grep -i bluetooth
The Broadcom Bluetooth firmware can not be installed properly without knowing the correct device ID information gathered from your logs or via the lsusb command.
Bluetooth: hci1: BCM: chip id 63 Bluetooth: hci1: BCM20702A Bluetooth: hci1: BCM20702A1 (001.002.014) build 0000 bluetooth hci1: Direct firmware load for brcm/BCM20702A1-0b05-17cb.hcd failed with error -2 Bluetooth: hci1: BCM: Patch brcm/BCM20702A1-0b05-17cb.hcd not found
In the above example from the logs, it is clear that you would need the brcm/BCM20702A1-0b05-17cb.hcd firmware.
The name of this file is critical. The two sets of four characters, in this case 0b05-17cb, need to match your device's Vendor ID and Product ID exactly.
Place the required .hcd file into /lib/firmware/brcm.
sudo cp ~/broadcom-bt-firmware/brcm/BCM20703A1-0a5c-6410.hcd /lib/firmware/brcm/BCM-0a5c-6410.hcd
Substitute your adapter ID into the above command example, assuming your adapter requires a different module than 0a5c-6410.hcd.
Once the firmware has been sucessfully copied, issue these commands:
sudo modprobe -r btusb sudo modprobe btusb
If your adapter didn't initialize properly with those commands, then power down completely and then restart.
After properly copying the correct firmware to the requied directory your device should now successfully load:
Bluetooth: hci1: BCM: chip id 63 Bluetooth: hci1: BCM20702A Bluetooth: hci1: BCM20702A1 (001.002.014) build 0000 Bluetooth: hci1: BCM20702A1 (001.002.014) build 1467 Bluetooth: hci1: Broadcom Bluetooth Device
In some cases installing additional packages may be required, such as:
After your firmware is installed, Bluetooth may still require further configuration from within the Bluez utility for proper Bluetooth functionality.
The Winterheart broadcom driver no longer needs to be installed manually. The package is now available from the AUR.
Thank you for the reply. The bluetooth hardware could well be Broadcom, as that’s what the wifi hardware is. I’ve had grief getting the wifi working in other distros, but it worked out of the box in Manjaro.
lsusb | grep -i bluetooth produces no output at all. The other two commands give the following:
$ inxi -Fxxxz
System: Host: lenovo Kernel: 4.19.13-1-MANJARO x86_64 bits: 64 compiler: gcc v: 8.2.1 Desktop: Xfce 4.13.2git-UNKNOWN tk: Gtk 3.24.2 info: xfce4-panel, plank wm: xfwm4 dm: LightDM 1.28.0 Distro: Manjaro Linux Machine: Type: Laptop System: LENOVO product: 80JH v: Lenovo Yoga 3 14 serial: <filter> Chassis: type: 10 v: Lenovo Yoga 3 14 serial: <filter> Mobo: LENOVO model: Lenovo Yoga 3 14 v: SDK0J40709WIN serial: <filter> UEFI: Lenovo v: BACN96WW date: 08/17/2015 Battery: ID-1: BAT0 charge: 36.3 Wh condition: 36.3/45.0 Wh (81%) volts: 8.1/7.4 model: LENOVO LCFC type: Unknown serial: <filter> status: Full CPU: Topology: Dual Core model: Intel Core i5-5200U bits: 64 type: MT MCP arch: Broadwell rev: 4 L2 cache: 3072 KiB flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 17566 Speed: 799 MHz min/max: 500/2700 MHz Core speeds (MHz): 1: 799 2: 798 3: 798 4: 798 Graphics: Device-1: Intel HD Graphics 5500 vendor: Lenovo driver: i915 v: kernel bus ID: 00:02.0 chip ID: 8086:1616 Display: x11 server: X.Org 1.20.3 driver: intel unloaded: modesetting alternate: fbdev,vesa resolution: 1920x1080~60Hz OpenGL: renderer: Mesa DRI Intel HD Graphics 5500 (Broadwell GT2) v: 4.5 Mesa 18.3.1 compat-v: 3.0 direct render: Yes Audio: Device-1: Intel Broadwell-U Audio vendor: Lenovo driver: snd_hda_intel v: kernel bus ID: 00:03.0 chip ID: 8086:160c Device-2: Intel Wildcat Point-LP High Definition Audio vendor: Lenovo driver: snd_hda_intel v: kernel bus ID: 00:1b.0 chip ID: 8086:9ca0 Sound Server: ALSA v: k4.19.13-1-MANJARO Network: Device-1: Broadcom and subsidiaries BCM4352 802.11ac Wireless Network Adapter vendor: Lenovo driver: wl v: kernel port: efa0 bus ID: 02:00.0 chip ID: 14e4:43b1 IF: wlp2s0 state: up mac: <filter> Drives: Local Storage: total: 238.47 GiB used: 16.35 GiB (6.9%) ID-1: /dev/sda model: RTNMB256VBM8EWXL size: 238.47 GiB speed: 6.0 Gb/s serial: <filter> rev: 4 scheme: GPT Partition: ID-1: / size: 224.77 GiB used: 16.35 GiB (7.3%) fs: ext4 dev: /dev/sda2 ID-2: swap-1 size: 8.80 GiB used: 0 KiB (0.0%) fs: swap dev: /dev/sda3 Sensors: System Temperatures: cpu: 33.0 C mobo: N/A Fan Speeds (RPM): N/A Info: Processes: 178 Uptime: 20h 33m Memory: 7.67 GiB used: 1.16 GiB (15.2%) Init: systemd v: 239 Compilers: gcc: 8.2.1 Shell: bash v: 4.4.23 running in: xfce4-terminal inxi: 3.0.28
dmesg | grep -i bluetooth
[ 4.103241] Bluetooth: Core ver 2.22 [ 4.103328] Bluetooth: HCI device and connection manager initialized [ 4.103332] Bluetooth: HCI socket layer initialized [ 4.103335] Bluetooth: L2CAP socket layer initialized [ 4.103343] Bluetooth: SCO socket layer initialized [ 4.190519] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 4.190521] Bluetooth: BNEP filters: protocol multicast [ 4.190525] Bluetooth: BNEP socket layer initialized [ 4.244354] Bluetooth: hci0: BCM: chip id 63 [ 4.245354] Bluetooth: hci0: BCM: features 0x07 [ 4.261358] Bluetooth: hci0: lenovo [ 4.262352] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000 [ 4.262581] bluetooth hci0: Direct firmware load for brcm/BCM20702A1-0489-e07a.hcd failed with error -2 [ 4.262583] Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-0489-e07a.hcd not found [ 7.455517] Bluetooth: RFCOMM TTY layer initialized [ 7.455523] Bluetooth: RFCOMM socket layer initialized [ 7.455530] Bluetooth: RFCOMM ver 1.11 [ 3910.285384] Bluetooth: hci0: BCM: chip id 63 [ 3910.286503] Bluetooth: hci0: BCM: features 0x07 [ 3910.302391] Bluetooth: hci0: BCM20702A [ 3910.303394] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000 [ 3910.303412] bluetooth hci0: Direct firmware load for brcm/BCM20702A1-0489-e07a.hcd failed with error -2 [ 3910.303415] Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-0489-e07a.hcd not found [ 3939.157165] Bluetooth: hci0: BCM: chip id 63 [ 3939.158111] Bluetooth: hci0: BCM: features 0x07 [ 3939.174109] Bluetooth: hci0: BCM20702A [ 3939.175095] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000 [ 3939.175112] bluetooth hci0: Direct firmware load for brcm/BCM20702A1-0489-e07a.hcd failed with error -2 [ 3939.175113] Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-0489-e07a.hcd not found [ 4408.440201] Bluetooth: hci0: last event is not cmd complete (0x0f) [ 4500.496007] Bluetooth: hci0: last event is not cmd complete (0x0f) [ 5131.536044] Bluetooth: hci0: last event is not cmd complete (0x0f)
Holy moly, that worked! Looks like according to the dmesg output, I needed BCM20702A1-0489-e07a.hcd. I copied that to /lib/firmware/brcm/ like you said, restarted the bluetooth, and now peripherals are commecting. I’m typing this post from the bluetooth keyboard I wanted to connect, in fact! Thank you very much for the help!
I do have one follow up question, which may be DE specific: Now the devices show up when I click the Bluetooth icon in the panel and click “Setup new device”. However, they are all listed in the search results by MAC address, instead of by name or device type. I had to go down the list trying to connect until I got to the one that was the keyboard. Is there a way to get devices listed by name or some other detail so that I can figure out what’s what? I’m using the XFCE edition.
Thanks again for the help — very much appreciated!
Do me and others a favor and mark my post with the directions to install the firmware as the solution. If you click the three dots at the bottom of the post you can add the check mark to signify the solution. That way it is clear to all that your problem is solved and what the solution was.
Regarding your other questions, I’m awfully sorry I don’t use Bluetooth peripherals. The Bluetooth configuration aspect I’m totally unfamiliar with. I simply know how to get the hardware working. I hope someone else can help you with that.
Glad you got it working, and you’re very welcome.
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.