Bluetooth mouse keeps disappearing

Over the course of several years this PC (openSUSE and KDE) was upgraded 12.1>12.2>12.3>etc., etc., all the way to Leap 15.0, one version at a time via zypper dup. Ever since about 12.3 and for the last 3+ months on 15.0, I’ve run a bluetooth mouse without issue. Yesterday a number of factors made it appropriate to re-install 15.0 (using the old /home).

Since then:

  • The mouse is not connected at boot. It will detect, pair and connect manually, but disappears after 1-5 minutes.
  • Any attempt to re-connect results in a timeout.
  • Attempts to remove and re-pair usually result in the mouse not being detected, 'though sometimes it will be detected but not pair, other times it is detected twice. Even if it pairs it is non-functioning.
  • The only way I can get a functional mouse (briefly) is to reboot and start over.

Nerve damage resulting in hand tremors has made use of a touchpad pure torture, so help would be greatly appreciated.

linux-jjh1:~ # sudo rfkill list
0: ideapad_wlan: Wireless LAN
        Soft blocked: no
        Hard blocked: no
1: ideapad_bluetooth: Bluetooth
        Soft blocked: no
        Hard blocked: no
2: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: no
6: hci0: Bluetooth
        Soft blocked: no
        Hard blocked: no

linux-jjh1:~ # dmesg | grep -i blu
   10.684735] Bluetooth: Core ver 2.22
   10.684747] Bluetooth: HCI device and connection manager initialized
   10.684749] Bluetooth: HCI socket layer initialized
   10.684751] Bluetooth: L2CAP socket layer initialized
   10.684755] Bluetooth: SCO socket layer initialized
   10.702949] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
   10.702950] Bluetooth: BNEP filters: protocol multicast
   10.702953] Bluetooth: BNEP socket layer initialized
   10.798598] Bluetooth: hci0: BCM: chip id 63
   10.814768] Bluetooth: hci0: BCM20702A
   10.815759] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000
   10.816136] bluetooth hci0: Direct firmware load for brcm/BCM20702A1-04ca-2003.hcd failed with error -2
   10.816139] Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-04ca-2003.hcd not found
   15.046965] Bluetooth: RFCOMM TTY layer initialized
   15.046969] Bluetooth: RFCOMM socket layer initialized
   15.046973] Bluetooth: RFCOMM ver 1.11
   89.867696] hid-generic 0005:045E:0805.0003: input,hidraw2: BLUETOOTH HID v1.00 Mouse [Designer Mouse] on 44:6D:57:86:24:3F
  141.836685] Bluetooth: hci0: BCM: chip id 63
  141.852718] Bluetooth: hci0: linux-jjh1
  141.856717] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000
  141.856730] bluetooth hci0: Direct firmware load for brcm/BCM20702A1-04ca-2003.hcd failed with error -2
  141.856732] Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-04ca-2003.hcd not found
  148.297809] Bluetooth: hci0 advertising data length corrected
  148.388804] Bluetooth: hci0 corrupted ACL packet
  148.396675] Bluetooth: hci0 corrupted ACL packet
  148.403800] Bluetooth: hci0 corrupted ACL packet
  148.418924] Bluetooth: hci0 corrupted ACL packet
  148.463958] Bluetooth: hci0 ACL packet for unknown connection handle 12
  148.463975] Bluetooth: hci0 ACL packet for unknown connection handle 4095
  148.463976] Bluetooth: hci0 ACL packet for unknown connection handle 0
  178.459970] bluetoothd[1860]: segfault at e1 ip 00005562e819c9a2 sp 00007ffeb2315ed0 error 4 in bluetoothd[5562e80fe000+f6000]
 6492.957780] Bluetooth: hci0 advertising data length corrected
 6492.962758] Bluetooth: hci0 advertising data length corrected
 6493.058585] Bluetooth: hci0 corrupted ACL packet
 6493.066331] Bluetooth: hci0 corrupted ACL packet
 6493.081080] Bluetooth: hci0 corrupted ACL packet
 6493.081153] Bluetooth: hci0 ACL packet for unknown connection handle 1563
 6493.096706] Bluetooth: hci0 corrupted ACL packet
 6493.096782] Bluetooth: hci0 ACL packet for unknown connection handle 16
 7173.577069] Bluetooth: hci0: BCM: chip id 63
 7173.593122] Bluetooth: hci0: linux-jjh1
 7173.594095] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000
 7173.594121] bluetooth hci0: Direct firmware load for brcm/BCM20702A1-04ca-2003.hcd failed with error -2
 7173.594122] Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-04ca-2003.hcd not found
 7176.640062] Bluetooth: hci0 advertising data length corrected
 7176.645069] Bluetooth: hci0 advertising data length corrected
 7176.742613] Bluetooth: hci0 corrupted ACL packet
 7176.750406] Bluetooth: hci0 ACL packet for unknown connection handle 22
 7176.750409] Bluetooth: hci0 ACL packet for unknown connection handle 256
 7176.757763] Bluetooth: hci0 corrupted ACL packet
 7176.758478] Bluetooth: hci0 corrupted ACL packet
 7182.021057] Bluetooth: hci0: BCM: chip id 63
 7182.037112] Bluetooth: hci0: linux-jjh1
 7182.038088] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000
 7182.038116] bluetooth hci0: Direct firmware load for brcm/BCM20702A1-04ca-2003.hcd failed with error -2
 7182.038118] Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-04ca-2003.hcd not found
 7184.929927] Bluetooth: hci0 advertising data length corrected
 7184.934924] Bluetooth: hci0 advertising data length corrected
 7185.022517] Bluetooth: hci0 corrupted ACL packet
 7185.030279] Bluetooth: hci0 ACL packet for unknown connection handle 22
 7185.120165] Bluetooth: hci0 corrupted ACL packet
 7185.120235] Bluetooth: hci0 ACL packet for unknown connection handle 3328
 7185.120237] Bluetooth: hci0 ACL packet for unknown connection handle 12
 7224.599696] Bluetooth: hci0 advertising data length corrected
 7224.704513] Bluetooth: hci0 corrupted ACL packet
 7224.719759] Bluetooth: hci0 corrupted ACL packet
 7224.764611] Bluetooth: hci0 corrupted ACL packet
 7260.951501] Bluetooth: hci0 advertising data length corrected
 7261.041707] Bluetooth: hci0 corrupted ACL packet
 7261.049423] Bluetooth: hci0 ACL packet for unknown connection handle 22
 7261.139334] Bluetooth: hci0 ACL packet for unknown connection handle 1792
 7261.139337] Bluetooth: hci0 ACL packet for unknown connection handle 12
 7261.146846] Bluetooth: hci0 ACL packet for unknown connection handle 4073
 7261.146849] Bluetooth: hci0 ACL packet for unknown connection handle 16
 7261.154239] Bluetooth: hci0 corrupted ACL packet
 7426.584311] Bluetooth: hci0 advertising data length corrected
 7426.677106] Bluetooth: hci0 corrupted ACL packet
 7426.684862] Bluetooth: hci0 corrupted ACL packet
 7426.692824] Bluetooth: hci0 corrupted ACL packet
 7426.692851] Bluetooth: hci0 ACL packet for unknown connection handle 1563
 7426.692853] Bluetooth: hci0 ACL packet for unknown connection handle 11
 7426.692854] Bluetooth: hci0 ACL packet for unknown connection handle 0
 7431.702474] Bluetooth: hci0 corrupted ACL packet
 7431.702496] Bluetooth: hci0 ACL packet for unknown connection handle 16

linux-jjh1:~ # bt-device -l
Added devices:
Designer Mouse (E7:9C:CE:40:04:E7)

Just in case this TW thread is relevant…
https://forums.opensuse.org/showthread.php/530541-Direct-firmware-load-for-brcm-BCM20702A1-0a5c-21e8-hcd-failed-with-error-2

In particular, read the bug report (which was linked in the thread).

Hi Deano,
Thanks for the quick reply. I’m a little out of my element here, but I think I read that the likely fix is to install the bcm20702a1-firmware-12011012-5.1.noarch.rpm

(https://download.opensuse.org/repositories/home:/Sauerland/Kernel_stable_standard/noarch/bcm20702a1-firmware-12011012-5.1.noarch.rpm)

from Sauerland’s repo. However, that link returns a 404 error. Any suggestions?

It’s been updated since then :wink:

Repo…
https://download.opensuse.org/repositories/home:/Sauerland/Kernel_stable_standard/

File is currently…
https://download.opensuse.org/repositories/home:/Sauerland/Kernel_stable_standard/noarch/bcm20702a1-firmware-12011012-11.1.noarch.rpm

Installed the file and rebooted just for good measure, no change in behavior but fewer errors indicated… Progress (??)

**linux-jjh1:~ #** dmesg | grep -i blu
   11.305434] **Blu**etooth: Core ver 2.22
   11.305459] **Blu**etooth: HCI device and connection manager initialized
   11.305461] **Blu**etooth: HCI socket layer initialized
   11.305464] **Blu**etooth: L2CAP socket layer initialized
   11.305469] **Blu**etooth: SCO socket layer initialized
   11.324967] **Blu**etooth: BNEP (Ethernet Emulation) ver 1.3
   11.324968] **Blu**etooth: BNEP filters: protocol multicast
   11.324971] **Blu**etooth: BNEP socket layer initialized
   11.422608] **Blu**etooth: hci0: BCM: chip id 63
   11.438553] **Blu**etooth: hci0: linux-jjh1
   11.439568] **Blu**etooth: hci0: BCM20702A1 (001.002.014) build 0000
   11.441644] **blu**etooth hci0: Direct firmware load for brcm/BCM20702A1-04ca-2003.hcd failed with error -2
   11.441651] **Blu**etooth: hci0: BCM: Patch brcm/BCM20702A1-04ca-2003.hcd not found
   15.267882] **Blu**etooth: RFCOMM TTY layer initialized
   15.267903] **Blu**etooth: RFCOMM socket layer initialized
   15.267909] **Blu**etooth: RFCOMM ver 1.11
   86.085585] **Blu**etooth: hci0 corrupted ACL packet


update:
just noticed that after the unsuccessful attempt to connect the Bluetooth icon in the panel still shows the spinning circle around it that normally only appears during pairing and or connecting. It’s now showing even after I remove the mouse in “configure - system settings module” and no other device loaded either. top shows no cpu activity for hci0
(??)

I’m at the limits of my knowledge with this. The kernel messages don’t look good. You may need to submit a bug report for this. Hopefully, someone more familiar with this than me can chime in.

11.441644] bluetooth hci0: Direct firmware load for brcm/BCM20702A1-04ca-2003.hcd failed with error -2

That ID is not in my rpm…

bcm20702a1-firmware - Firmware for BCM20702A1 based devices (ID 0a5c:21e8 and 0b05:17cb)

This is yours:
https://github.com/winterheart/broadcom-bt-firmware/blob/master/brcm/BCM20702A1-04ca-2003.hcd
Klick on Download and copy it to /lib/firmware.

I did notice that discrepancy but wasn’t qualified to understand the implications. I will certainly do as you suggest, however I would like to know if there’s anything I should delete at the same time.

If you have enabled my Repo and you use only the firmwre.rpm from it, you can disable and delete my Repo.
Also there is no need to have my firmware package installed.

I have downloaded the file and copied it to /lib/firmware, however the mouse still only is detected, but will not connect.

**#** dmesg | grep -i blu
   10.042527] **Blu**etooth: Core ver 2.22
   10.042546] **Blu**etooth: HCI device and connection manager initialized
   10.042549] **Blu**etooth: HCI socket layer initialized
   10.042551] **Blu**etooth: L2CAP socket layer initialized
   10.042558] **Blu**etooth: SCO socket layer initialized
   10.065678] **Blu**etooth: BNEP (Ethernet Emulation) ver 1.3
   10.065680] **Blu**etooth: BNEP filters: protocol multicast
   10.065682] **Blu**etooth: BNEP socket layer initialized
   10.158338] **Blu**etooth: hci0: BCM: chip id 63
   10.174199] **Blu**etooth: hci0: linux-jjh1
   10.175210] **Blu**etooth: hci0: BCM20702A1 (001.002.014) build 0000
   10.176583] **blu**etooth hci0: Direct firmware load for brcm/BCM20702A1-04ca-2003.hcd failed with error -2
   10.176587] **Blu**etooth: hci0: BCM: Patch brcm/BCM20702A1-04ca-2003.hcd not found
   13.997474] **Blu**etooth: RFCOMM TTY layer initialized
   13.997479] **Blu**etooth: RFCOMM socket layer initialized
   13.997483] **Blu**etooth: RFCOMM ver 1.11
   93.147253] **Blu**etooth: hci0 corrupted ACL packet
  252.216256] **Blu**etooth: hci0 corrupted ACL packet

My fault.

Copy to /lib/firmware/brcm/

no problem

Copy to /lib/firmware/brcm/

Done, we’re making progress:

** #** dmesg | grep -i blu
   10.709012] **Blu**etooth: Core ver 2.22
   10.709029] **Blu**etooth: HCI device and connection manager initialized
   10.709032] **Blu**etooth: HCI socket layer initialized
   10.709033] **Blu**etooth: L2CAP socket layer initialized
   10.709037] **Blu**etooth: SCO socket layer initialized
   10.727252] **Blu**etooth: BNEP (Ethernet Emulation) ver 1.3
   10.727254] **Blu**etooth: BNEP filters: protocol multicast
   10.727256] **Blu**etooth: BNEP socket layer initialized
   10.822846] **Blu**etooth: hci0: BCM: chip id 63
   10.838864] **Blu**etooth: hci0: linux-jjh1
   10.839868] **Blu**etooth: hci0: BCM20702A1 (001.002.014) build 0000
   11.656713] **Blu**etooth: hci0: BCM20702A1 (001.002.014) build 1488
   11.672722] **Blu**etooth: hci0: Broadcom **Blu**etooth Device
   14.765942] **Blu**etooth: RFCOMM TTY layer initialized
   14.765947] **Blu**etooth: RFCOMM socket layer initialized
   14.765952] **Blu**etooth: RFCOMM ver 1.11

However the behavior hasn’t changed. Mouse is detected but will not connect (times out).

I have managed to get the mouse working without adding any additional software. The only method that worked was to:

  1. copy the file kindly provided by Sauerland to /lib/firmware/brcm/
  2. remove all traces of the mouse left over from previous connection attempts (without this step nothing else works)
  3. reboot
  4. redetect the mouse
  5. connect the mouse

Thank you to Sauerland and deano_ferrari

Good to read of you success with getting the new firmware installed.

Now I have build the Firmware package new, it supports now many Chips:
https://build.opensuse.org/package/show/home:Sauerland/bcm20702a1-firmware

I have a similar problem with a GPS-Dewvice instead of a Mouse and under Tumbleweed instead of Leap 15, but i thinks that doesn’t matter.

After installing the Firmware Sauerland provided, i’m able to connect to my GPS, but the connection breaks imeadiatly.
Maybe i have to remove the traces of previous attempts.
But how can i do that? I have no Idea where to find them?

New Problem, new thread.

Hi Sauerland,
I am having the same issue, I am a beginner user of linux and could use some direction here. I am having the same issue with my wireless/bluetooth mouse. Would that file be the same for me? I am running openSUSE Leap 15.1.

post:

lsusb

Bus 002 Device 002: ID 8087:8000 Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp.
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 002: ID 1770:ff00
Bus 003 Device 004: ID 8087:07dc Intel Corp.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub