LordOfMice / hidusbf

USB Mice Overclocking Software (for Windows)
909 stars 188 forks source link

polling rate downclock from 1000Hz to 240Hz, 120Hz #270

Closed fuweichin closed 8 months ago

fuweichin commented 8 months ago

Why 240Hz, 120Hz polling rate? What's the problem with 125Hz, 1000Hz polling rate?

Because we have 120Hz, 60Hz screens, and a polling rate which is not multiple of refresh rate may cause some jumpy reactive frames per second when mouse reports are coalesced and vsync-ed. According to online tool Pointer Movement Timing Analyzer and post post On mouse report rate (polling rate) and screen refresh rate

mouse-report-coalesce-125Hz Using a 125Hz mouse with a 60Hz screen may cause 5 (which is 125 modulo 60) jumpy reactive frames per second

Also a high polling rate (e.g. 1000Hz) may sometimes overkill thus cause active frame dropping.

chromium-frame-dropping-1000Hz Using a 1000Hz mouse with Chrome causes active frame dropping.

Any existing cases using 240Hz, 120Hz polling rate?

If minimum timer precision is 1ms, how to achieve uneven but acceptable 120Hz?

Instead of keeping each polling interval 8.333333ms, repeat patterned polling intervals 8ms, 8ms, 8ms, 9ms, ....

For 120Hz report rate, average interval: 1000/120 = 8.333333 = average(8, 8, 9)

For 240Hz report rate, average interval: 1000/240 = 4.166666 = average(4, 4, 4, 4, 4, 5)

LordOfMice commented 8 months ago

It's impossible on modern hardware+software. But theory talks that you can use higher rates, like 1000+ Hz. And rate higher 2 times is enough.

Using a 1000Hz mouse with Chrome causes active frame dropping.

It's the clearly problem inside Chrome, ask its authors about this problem.

According to online tool

And yes, use the RIGHT measurement tools.

fuweichin commented 8 months ago

Apple seems to be aware of the problem since 2021, some MacBook Pro models (those with 120Hz-refresh-rate displays) successively come with 120Hz-report-rate touchpads.

For jitter-free media playback, VESA published MediaSync Display certification for displays, along with AdaptiveSync Display.

A rational consmuer cares about diminishing marginal benefit, trys to find a sweet spot on quantity and quality curve. As a developer and a consumer I'd like to pay for vendors who help to find the sweet spots for us.

LordOfMice commented 8 months ago

It is really good things. And people who play media on PCs well know about this tens of years, But how it relates to THIS software?

A rational consmuer cares about diminishing marginal benefit, trys to find a sweet spot on quantity and quality curve.

Yes, it is true. But you have to calculate. 8,8,8,9 sequence has 9/8= 12,5% instability only. Of course, you can eliminate even such small things, but you definitely in the END of diminishing return, not in the begin,

JFYI, there is 8000Hz input devices...