I need to use the Mouse Keys feature of Windows 10 for accessibility reasons. It's a useful tool that can control the mouse using NumPad keys. But it has very limited configurability. It only has two sliders for "Pointer Speed" (ranging from 10 to 358) and "Pointer Acceleration" (ranging from 100 to 500).
There is a similar tool in Ubuntu and Debian called xkbset, which I can set the parameters with the terminal command xkbset mousekeysaccel <mk-delay> <mk_interval> <mk_time_to_max> <mk-max_speed> <mk_curve>, for example I find these values to be usable: xkbset mousekeys; xkbset mousekeysaccel 20 10 500 120 10. Here max speed is 120 but the "interval" is 10ms so it repeats more often, resulting in much higher speed.
Windows version, however, is incredibly slow even on the fastest setting, so I want to increase the max speed. I found that the two slider values are stored in regedit under this path: Computer\HKEY_CURRENT_USER\Control Panel\Accessibility\MouseKeys, but manually editing the MaximumSpeed value does not affect anything, 358 is still the hard limit. So I'm looking for a way to increase / disable this upper limit for max speed.
Notes
- I know I can do this with a 3rd party software like AutoHotkey but I don't want to install something else if it's possible to "fix" what Windows already comes with.
- I found this API reference page: MOUSEKEYS (winuser.h) but I don't know what to do with it.. Can I invoke this struct via cmd / PowerShell? Or write a C# program (like this) to edit these values?
- Is there an executable or service that handles Mouse Keys that I can reverse engineer / edit? I'm OK with editing Windows dll's or whatever, even making a custom .iso build, I use this feature every day and want to be able to customize it, just the max speed, nothing fancy like xkbset interval / curve values etc.