Difference between revisions of "Mouse polling rate"

From ArchWiki
Jump to: navigation, search
m (Change polling rate without rebooting. Gotten from bones_was_here)
(Further Reading: dead link rm'ed)
Line 69: Line 69:
 
== Further Reading ==
 
== Further Reading ==
 
[http://www.overclock.net/computer-peripherals/173255-cs-s-mouse-optimization-guide.html CS:S Mouse Optimization Guide] -- largely aimed at Windows users, though the same principles apply for Linux.
 
[http://www.overclock.net/computer-peripherals/173255-cs-s-mouse-optimization-guide.html CS:S Mouse Optimization Guide] -- largely aimed at Windows users, though the same principles apply for Linux.
 
 
[http://en.gentoo-wiki.zugaina.org/index.php/HOWTO_Customize_Mouse_Polling_Rate HOWTO Customize Mouse Polling Rate] -- from Gentoo wiki
 
[http://en.gentoo-wiki.zugaina.org/index.php/HOWTO_Customize_Mouse_Polling_Rate HOWTO Customize Mouse Polling Rate] -- from Gentoo wiki
 
[http://www.linux-gamers.net/modules/wiwimod/index.php?page=HOWTO+USBPolling Increase Mouse Polling Rate Interval]
 

Revision as of 04:55, 17 February 2011

If you have invested in a high resolution mouse, adjusting the USB polling rate is a common trick to utilise the added precision it brings. The polling rate (or report rate) determines how often the mouse sends information to your computer. Measured in Hz, this setting equates to lag time (in ms).

By default, the USB polling rate is set at 125hz. The table below represents combinations of Hz values and their corresponding delay time:

Hz ms
1000 1
500 2
250 4
125 8
100 10

If the polling rate is set at 125 Hz, the mouse cursor can only be updated every 8 milliseconds. In situations where lag is critical (for example games), it is useful to decrease this value to as little as possible. Increasing the polling interval will improve precision at the tradeoff of using more CPU resources, therefore care should be taken when adjusting this value.

Setting the polling rate

Here we are using the USBHID module of the kernel to set a custom "mousepoll" rate. Simply add the following line to your /etc/modprobe.d/modprobe.conf file:

options usbhid mousepoll=[polling interval]

(where [polling interval] is a number in ms from the table above. For example, to set a polling rate of 500Hz:

options usbhid mousepoll=2

Now, to ensure the USBHID module loads upon boot add the following to your /etc/rc.conf file, within the MODULES list:

usbhid

For example:

MOD_AUTOLOAD="yes"
MODULES=(usbhid)

To change the polling rate without rebooting

modprobe -r usbhid && modprobe usbhid

Warning: Make sure that both commands execute otherwise you will be unable to use the mouse and keyboard and will have to reboot or ssh into your machine.

Then unplug and replug your mouse.

Displaying current mouse rate

A tool exists (named evhz) that can display the current mouse refresh rate -- useful when checking that your customised polling settings have been applied.

The original source no longer exists ([1]), so a mirror has been provided here: evhz.c. Full credit goes to the original author, Alan Kivlin.

Compile it with:

gcc -o evhz evhz.c

Then execute in root:

./evhz

Alternatively, Windows tools such as DirectX mouserate checker can be run using WINE.

Further Reading

CS:S Mouse Optimization Guide -- largely aimed at Windows users, though the same principles apply for Linux. HOWTO Customize Mouse Polling Rate -- from Gentoo wiki