3

I have a lenovo yoga bluetooth mouse, connected to my XPS13 (ubuntu 18.04).

The mouse is laggy.

I try evhz (from here https://gitlab.com/iankelling/evhz). With this mouse, I have about 22Hz

Lenovo YOGA Mouse Mouse: Latest    22Hz, Average    21Hz
Lenovo YOGA Mouse Mouse: Latest    21Hz, Average    21Hz
Lenovo YOGA Mouse Mouse: Latest    22Hz, Average    21Hz
Lenovo YOGA Mouse Mouse: Latest    21Hz, Average    21Hz
Lenovo YOGA Mouse Mouse: Latest    22Hz, Average    21Hz
Lenovo YOGA Mouse Mouse: Latest    21Hz, Average    21Hz
Lenovo YOGA Mouse Mouse: Latest    22Hz, Average    21Hz
Lenovo YOGA Mouse Mouse: Latest    22Hz, Average    21Hz
Lenovo YOGA Mouse Mouse: Latest    22Hz, Average    21Hz

I have "0" here:

$ cat /sys/module/usbhid/parameters/mousepoll
0

My touchpad or other mouse show about 125Hz which is ok for me.

I found a few forum/howto explaining how to change "mousepoll" of USBHID. but I still get 0 in /sys/module/usbhid/parameters/mousepoll and still 22Hz. Moreover, I have a bluetooth mouse....not sure if USBHID can influence here?

by the way, If I do "rmmod usbhid", I immediatly loose my USB keyboard, USB mouse, but the laptop keyboard, touchpad and my laggy bluetooth mouse still works (and still laggy)... I guess it means the mouse is not managed by usbhid....

I also found this:

$ systemctl status bluetooth.service
● bluetooth.service - Bluetooth service
   Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2019-04-11 17:13:11 CEST; 17min ago
     Docs: man:bluetoothd(8)
 Main PID: 1507 (bluetoothd)
   Status: "Running"
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/bluetooth.service
           └─1507 /usr/lib/bluetooth/bluetoothd

avril 11 17:13:36 celestin bluetoothd[1507]: bt_uhid_send: Invalid argument (22)
avril 11 17:13:36 celestin bluetoothd[1507]: bt_uhid_send: Invalid argument (22)
avril 11 17:13:36 celestin bluetoothd[1507]: bt_uhid_send: Invalid argument (22)
avril 11 17:13:36 celestin bluetoothd[1507]: bt_uhid_send: Invalid argument (22)
avril 11 17:13:36 celestin bluetoothd[1507]: bt_uhid_send: Invalid argument (22)
avril 11 17:13:36 celestin bluetoothd[1507]: bt_uhid_send: Invalid argument (22)
avril 11 17:13:45 celestin bluetoothd[1507]: Endpoint unregistered: sender=:1.119 path=/MediaEndpoint/A2DPSource
avril 11 17:13:45 celestin bluetoothd[1507]: Endpoint unregistered: sender=:1.119 path=/MediaEndpoint/A2DPSink
avril 11 17:13:50 celestin bluetoothd[1507]: Endpoint registered: sender=:1.138 path=/MediaEndpoint/A2DPSource
avril 11 17:13:50 celestin bluetoothd[1507]: Endpoint registered: sender=:1.138 path=/MediaEndpoint/A2DPSink

Any ideas ?

Whynot
  • 61
  • 1
  • 5

4 Answers4

3

I had the same problem with a Logitech MX Master 3

Following these steps worked for me:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1824559/comments/10

Following wysiwyg31's Comment, I did the following:

$ sudo nano /var/lib/bluetooth/xx\:xx\:xx\:xx\:xx\:xx/yy\:yy\:yy\:yy\:yy\:yy/info

where xx:xx.... is pc bluetooth address and yy:yy... is the mouse bluetooth address.

In the file, I added the section at the end:

[ConnectionParameters]
MinInterval=6
MaxInterval=7
Latency=0
Timeout=216

then, I restarted bluetooth service with: systemctl restart bluetooth

Using https://github.com/ian-kelling/evhz to check the rate (but it was immediately noticeable when the fix worked and 22Hz became 125Hz).

$ cat /sys/module/usbhid/parameters/mousepoll
8

now shows "8" instead of the previeous "0"

Annatar
  • 31
2

This seems to be a problem related to newer kernel versions.

There are suggestions to change the latency parameters of the connected device through hcitool as a workaround but this only works temporarily and has to be repeated for every reconnect.

A method that worked much better for me is to permanently change the latency in a kernel configuration file by following these steps:

  1. Disconnect / unpair the problematic device.
  2. Run echo 6 > /sys/kernel/debug/bluetooth/hci0/conn_min_interval
  3. Connect / pair the device again. A reboot is most probably not required.

The source for this method can be found here.

randhash
  • 321
0

sorry for late answer. If interested, bug report and workaround available here:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1824559

Whynot
  • 61
  • 1
  • 5
0

I had a problem connecting my bluetooth mouse to the ubuntu mate latest version running on raspberry pi4. I tried almost all the tips and tricks in the internet to change the poll rate with little success and reallised that I just had to edit aliases.conf file in the modprobe.d folder

I added the following line: options usbhid mousepoll:x (x is the value you want to set) as superuser... blow me down...fixed the problem