SolvedMain_MiSTer Set USB polling to 1ms for improved input latency. "usbhid.jspoll" parameter not working from Linux on MiSTer

"usbhid.jspoll=1" does not have any effect and linux still polls at the requested rate of controllers.
Having it at 1000Hz can eliminate some of the needs to get those commercial LLAPI adapters as it can pull the results down to near 1ms.

Modifying the module "drivers/hid/usbhid/hid-core.c" should yield the same result as the parameter seems to have no effect.

Test results of 1000Hz polling rate improving controller's input latency across all tested controllers documented here: https://medium.com/@WydD/controller-input-lag-how-to-measure-it-1ebfd2c9d60

22 Answers

✔️Accepted Answer

I've added commit related to jspoll

to apply jspoll value i suggest to create file /media/fat/linux/u-boot.txt with following content:

v=loglevel=4 usbhid.jspoll=1

for more debug messages you can set loglevel=7. You can see HID usage value and applied polling interval with this value. Just unplug and then plug your gamepad.
Some gamepads have completely different usage like Logitech F710 having 0xFFA00001 usage which is not joystick or gamepad, so such devices won't receive jspoll value.

Related Issues:

5
Main_MiSTer Set USB polling to 1ms for improved input latency. "usbhid.jspoll" parameter not working from Linux on MiSTer
I've added commit related to jspoll to apply jspoll value i suggest to create file /media/fat/linux/...
5
Main_MiSTer Long bootup when having modelines for many cores
It supports: Also new commit supports additional core names (including all above) in section: So if ...