IbInputSimulator icon indicating copy to clipboard operation
IbInputSimulator copied to clipboard

Account for Enhanced pointer percision

Open ChrisKader opened this issue 2 years ago • 5 comments

I kept getting failed tests until I disabled "Enhanced Pointer Precision".

image

Thoughts on how to account for it?

ChrisKader avatar Oct 15 '22 07:10 ChrisKader

In fact, this is a known issue. Checking EPP causes Windows to use an unknown algorithm to transform the relative movement of the mouse. Then the library will be unable to precisely control the actual amount of relative movement. Because some drivers only support relative movement (e.g. Logitech), their absolute movement is simulated by using relative movement, the absolute movement will also be affected by EPP.

There are a few articles that have looked at the unknown algorithm, but it's complex and I'm not sure if those articles still apply to Windows 10/11. I have tried to fit the curve of the algorithm and make corrections (Logitech.hpp#L170), but the result is not satisfying. The best option at this time may be to check and notify the user to turn off EPP.

Chaoses-Ib avatar Oct 15 '22 08:10 Chaoses-Ib

On my machine, I do not have a settings.json file located in this location.

image

Closest I have is %LOCALAPPDATA%\LGHUB and its a settings.db file:

image

ChrisKader avatar Oct 16 '22 01:10 ChrisKader

I also found that you can actually install the RzComDriver without Synapse. There are various logs generated by razer synapse and one of them is Manifest.log this contains an XML manifest of all software products from razer. I have a console app I wrote in c# that actually uses the C# API used by Razers software to download the same Manifest file.

Within the Manifest, there is a link to the full Razer Synapse install (eg: https://cdn.razersynapse.com/1665042231FcnE6gEARazerSynapseSetup_v3.7.1015.100615.exe).

This exe is in a format that can be extracted from and within the $PLUGINSDIR RzComDriver_vx.x.xx.x.exe exists which is the Razer Common Control Driver.

image

ChrisKader avatar Oct 16 '22 02:10 ChrisKader

image

ChrisKader avatar Oct 16 '22 02:10 ChrisKader

On my machine, I do not have a settings.json file located in this location.

Sorry, that's my fault. You don't actually need a settings.json. LGS' acceleration is indeed just another name for EPP (I didn't realize this until after I wrote it). You can check EPP in HKEY_CURRENT_USER\Control Panel\Mouse\MouseSpeed.

Chaoses-Ib avatar Oct 16 '22 04:10 Chaoses-Ib