1

My Microsoft Designer Bluetooth Mouse will stop working after a short time.

UPDATE: It is a general bluetooth problem. I tried sending files from my mobile to my laptop and received only 1 file. The Bluetooth connection stalled afterwards.

I am running the latest openSUSE Tumbleweed on a Lenovo T460s. First I was running openSUSE Leap 42.2 with Kernel 4.0.36 and the Bluetooth Mouse worked flawlessly, but on older Kernels there is an issue with Skylake Processors so that my system would freeze - https://forums.opensuse.org/showthread.php/521718-Frequent-lockups-freezes .

I was able to pin down the problem to the following:

sudo systemctl stop NetworkManager

The mouse will work flawlessly. As soon as I start the NetworkManager the mouse will stop working and the Bluetooth Icon in Gnome Shell will signal Bluetooth connection forever. I could then run:

sudo systemctl restart bluetooth

which will make the mouse work for only a few seconds. Here comes the even stranger part. If I exclude the wlan0 interface in /etc/NetworkManager/NetworkManager.conf

[keyfile]
unmanaged-devices=interface-name:wlan0

The mouse will work again flawlessly but of course I don't have WiFi managed by NetworkManager which is undesirable.

So something from NetworkManager is interfering with bluetooth as long as wlan0 device is managed.


Specs:

mike@think:~> cat /etc/issue
Welcome to openSUSE Tumbleweed 20161226 - Kernel \r (\l).
mike@think:~> uname -a
Linux think.suse 4.9.0-2-default #1 SMP PREEMPT Fri Dec 16 19:51:27 UTC 2016 (6fbc0c0) x86_64 x86_64 x86_64 GNU/Linux
mike@think:~> sudo dmidecode -t bios
# dmidecode 3.0
Getting SMBIOS data from sysfs.
SMBIOS 2.8 present.

Handle 0x000C, DMI type 0, 24 bytes
BIOS Information
    Vendor: LENOVO
    Version: N1CET52W (1.20 ) <-- latest
...
mike@think:~> sudo systemctl status bluetooth
● bluetooth.service - Bluetooth service
   Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2017-01-06 11:27:31 CET; 17min ago
     Docs: man:bluetoothd(8)
 Main PID: 1191 (bluetoothd)
   Status: "Running"
    Tasks: 1 (limit: 512)
   CGroup: /system.slice/bluetooth.service
           └─1191 /usr/lib/bluetooth/bluetoothd

Jan 06 11:27:31 think systemd[1]: Starting Bluetooth service...
Jan 06 11:27:31 think bluetoothd[1191]: Bluetooth daemon 5.43
Jan 06 11:27:31 think bluetoothd[1191]: Starting SDP server
Jan 06 11:27:31 think systemd[1]: Started Bluetooth service.
Jan 06 11:27:31 think bluetoothd[1191]: Bluetooth management interface 1.14 initialized
Jan 06 11:27:32 think.suse bluetoothd[1191]: Failed to obtain handles for "Service Changed" characteristic
Jan 06 11:27:32 think.suse bluetoothd[1191]: Sap driver initialization failed.
Jan 06 11:27:32 think.suse bluetoothd[1191]: sap-server: Operation not permitted (1)
Jan 06 11:27:34 think.suse bluetoothd[1191]: Endpoint registered: sender=:1.26 path=/MediaEndpoint/A2DPSource
Jan 06 11:27:34 think.suse bluetoothd[1191]: Endpoint registered: sender=:1.26 path=/MediaEndpoint/A2DPSink
mike@think:~> nmcli -v
nmcli tool, version 1.4.4

I have also tried udev rules using vendor and productid for my mouse and bluetooth hub leveraging NM_UNMANAGED (man NetworkManager) without success. I tried turning on DEBUG logging in NetworkManager.conf (man NetworkManager.conf) but can see nothing interesting when the mouse failure occurs. The same applies if I start usr/lib/bluetooth/bluetoothd -n --debug 2>&1 debugging. Nothing to see.

I am out of options. Any help is appreciated, because I would like to have a mouse and internet access at the same time :)

UPDATE lspci

mike@think:~> sudo lspci -nnk | grep -iA2 net
00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet Connection I219-LM [8086:156f] (rev 21)
    Subsystem: Lenovo Device [17aa:2233]
    Kernel driver in use: e1000e
--
04:00.0 Network controller [0280]: Intel Corporation Wireless 8260 [8086:24f3] (rev 3a)
    Subsystem: Intel Corporation Device [8086:0130]
    Kernel driver in use: iwlwifi

I was able to improve the situation by disabling bt_coex in iwlwifi module:

cat /etc/modprobe.d/50-iwlwifi.conf
options iwlwifi bt_coex_active=0 

The only issue left right now is that after wakeup from suspend I have to restart bluetooth service to make it work again. Restarting NetworkManager still kills bluetooth, but when I connect my mouse after WiFi is established the connection will not stall anymore and disconnects/reconnect (turning off the mouse) are handled without errors.

  • Please edit the question to include results for lspci -nnk | grep -iA2 net – Jeremy31 Jan 8 '17 at 14:33
1

Since I deactivated bt_coex the problem is solved for me. If I don't connect the mouse too fast after wake up from suspend (i.e.: wait for WiFi to be established), everything works fine.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.