Bluetooth disconnects occasionally

I recently reloaded my Lenovo P15 with Leap 15.3. Most things working very well, with the exception of Bluetooth. I have now tried two different headsets, and both connect just fine and sound great, 90% of the time. But every so often, the device disconnects from bluetooth for 10-15 seconds, and then reconnects like I just turned it on. I did not see this issue on Tumbleweed before on this same hardware. Looking in dmesg, I see this

[FONT=monospace] input: MP33834 (AVRCP) as /devices/virtual/input/input74


when it reconnects. The inputXX number increments each time it happens. Any thoughts on what I might try to get this more stable?

**kanawha:/home/dsims/Downloads #** uname -a
Linux kanawha 5.3.18-59.40-default #1 SMP Mon Jan 3 18:43:20 UTC 2022 (34edd9c) x86_64 x86_64 x86_64 GNU/Linux


[/FONT]

Please take a look at the output of “rfkill list” and “bluetoothctl show/list/scan on/devices” – please also check the status of the systemd Bluetooth services.

  • Do you have Bluetooth Mesh enabled? – “meshctl” …
**kanawha:/home/dsims/Downloads #** systemctl status bluetooth.service  
**●** bluetooth.service - Bluetooth service
    Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; vendor preset: disabled)
    Active: **active (running)** since Fri 2022-01-21 14:22:07 EST; 6 days ago
      Docs: man:bluetoothd(8)
  Main PID: 2116 (bluetoothd)
    Status: "Running"
     Tasks: 1 (limit: 4915)
    CGroup: /system.slice/bluetooth.service
            └─2116 /usr/lib/bluetooth/bluetoothd

Jan 28 01:04:52 kanawha bluetoothd[2116]: **src/profile.c:ext_io_disconnected() Unable to get io data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)**
Jan 28 01:05:01 kanawha bluetoothd[2116]: /org/bluez/hci0/dev_FC_58_FA_AB_75_18/sep1/fd39: fd(31) ready
Jan 28 01:33:15 kanawha bluetoothd[2116]: **src/profile.c:ext_io_disconnected() Unable to get io data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)**
Jan 28 01:33:33 kanawha bluetoothd[2116]: /org/bluez/hci0/dev_FC_58_FA_AB_75_18/sep1/fd40: fd(31) ready
Jan 28 08:30:22 kanawha bluetoothd[2116]: **src/profile.c:ext_io_disconnected() Unable to get io data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)**
Jan 28 08:30:27 kanawha bluetoothd[2116]: /org/bluez/hci0/dev_FC_58_FA_AB_75_18/sep1/fd41: fd(31) ready
Jan 28 08:38:15 kanawha bluetoothd[2116]: **src/profile.c:ext_io_disconnected() Unable to get io data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)**
Jan 28 08:38:37 kanawha bluetoothd[2116]: /org/bluez/hci0/dev_FC_58_FA_AB_75_18/sep1/fd42: fd(31) ready
Jan 28 08:42:12 kanawha bluetoothd[2116]: **src/profile.c:ext_io_disconnected() Unable to get io data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)**
Jan 28 09:33:39 kanawha bluetoothd[2116]: /org/bluez/hci0/dev_FC_58_FA_AB_75_18/sep1/fd43: fd(31) ready
**kanawha:/home/dsims/Downloads #** rfkill list
0: tpacpi_bluetooth_sw: Bluetooth
       Soft blocked: no
       Hard blocked: no
1: phy0: Wireless LAN
       Soft blocked: no
       Hard blocked: no
2: hci0: Bluetooth
       Soft blocked: no
       Hard blocked: no
**kanawha:/home/dsims/Downloads #

**

**
meshctl is installed, but seems unconfigured. I never **did anything actively to set this up for sure.

Try to use newer kernel with Leap.

Sometimes these devices have to be updated.

  • Unfortunately, they usually (often) do not support updates when connected to a Linux system.

Possibly, you’ll have to find a Windows system, install all the drivers for the devices and, update the device firmware.

  • Then, try again with Linux.

I have never updated any firmware on a headset. I did not know that was a thing you had to do.

What would help is if you can find out what makes the headset disconnect, the message you posted is about the reconnect, but I expect you can find also message about the disconnect.

Although you do not see (yet?) the problem on Tumbleweed, I would not rule out that a headset can be disconnected for example by WiFi interference.

The headset is loaded with firmware at the factory – it’s boxed and delivered to a handler who stores the box for some indeterminate period of time – in the mean time the factory discovers some issues introduced by the firmware’s developers and issues firmware patches and/or updates – at some later point in time, someone buys the box «with the outdated firmware» from the last handler in the chain …