Fixing slow mouse with Raspberry PI OS
Last Updated on 6th February 2022 by peppe8o
One common problem with Raspberry PI OS is mouse speed. This problem isn’t linked to OS by itself, but appears to be more related to some mouse hardware. In this tutorial I’m going to show you how to fix slow/lagging mouse cursor.
Mouse Poll Rate
Raspberry PI OS exchanges position and click data with mouse with a pre-defined constant frequency named polling rate.
Polling Rate is measured in Hertz (Hz) and measures how many times in a second data are transmitted from mouse to operating system. It is set with a system variable named “usbhid.mousepoll”. Common values are following (first line “=0” means “=zero”):
usbhid.mousepoll=0 -> use interval requested by the device
usbhid.mousepoll=1 -> 1000Hz
usbhid.mousepoll=2 -> 500Hz
usbhid.mousepoll=4 -> 250Hz
usbhid.mousepoll=8 -> 125Hz
usbhid.mousepoll=10 -> 100Hz (Default)
If you experience a very slow mouse movement, then you can try by changing this value.
Changing Mouse Poll Rate
This operation can be done directly from Raspberry PI active and running.
usbhid.mousepoll parameter can be set from cmdline.txt file. This file is structured to configure a list of basic system settings in one single line, each parameter being separated with a space.
From terminal, edit cmdline.txt file available from boot folder:
sudo nano /boot/cmdline.txt
Go to end of line, append a space and then “usbhid.mousepoll=0”.
Save and exit. Then reboot Raspberry PI OS. Your slow mouse should be fixed after reboot.
Adding this intruction i was able to fix a NGS mouse.
Thank you very much!!
Thank you for your feedback, Fernando
That worked great, I thought this was unfixable. Thanks.
Thank you for your feedback, Murat. Glad this helped you too.
I came across this tutorial by complete accident, followed the instructions and fixed the slow moving problem of my mouse. At first I thought this was because of my mouse(used another wireless mouse and movement was fine) but it turns out the polling rate was limited, thanks.
Sadly, the font on this site makes it look like =oh instead of =zero
It mildly worked with =zero =0
Thank you, it’s not where I like it, I wish it were still a bit faster. Meh. I’ll take it.
Thank you for your feedback, Michael. I added a few words in this post to explicit that =0 means =zero.
Thankyou! Not just for the fix, but explaining the setting so nicely!
Thank you for your feedback!
My mouse was working normally for a long time, and something changed to slow it way down. Your instructions worked perfectly. Thanks!
Thank you for your feedback, Lance
None of the polling values had any effect on a (my) Raspberry Pi 4/4GB using kernel 5.15.56-v8+ #1575 SMP PREEMPT.
The mouse was either Logitech M325 wireless or a Hewlett-Packard (wired) USB mouse.
A number of reports on Raspberry Pi forums point to this kernel and slow, imprecise, and erratic (mostly bluetooth) mouse performance. There may be a kernel configuration error, or an accidental code problem with the Broadcom ARM hardware.
Yes it works. Thank you!
At first I thought the mouse is broken but then I tried with a cable mouse and it worked well. So, luckily I have two pairs of wireless keyboard/mouse and I tried the other ==> same issue: slow mouse. It was obvious that two same products have the same issue so I searched the net and I fount this post. Tried and fixed.
Thank you, sir!
Thank you for your feedback, Ovidiu. I’m really happy when my articles help people! Enjoy your Raspberry PI