interpolation, acceleration curve, movement vector acceleration
1 The movement interpolation should be removed/deactivated completely, once the input data is correct.* *by now, the input seems to be stalled/dropped when cpu load is too high (on Xorg-server)
2 https://wayland.freedesktop.org/libinput/doc/latest/pointer-acceleration.html This document shows, that the acceleration profile curves show an edge when reaching the value 1. Let the acceleration-value drop below 1 according to the acceleration curve and get rid of those edges in the curve.
3 Make sure to calculate the acceleration using the length of the movement vector, not x- and y-axes separately.* *I don't know if this is actually the case or not, because I can't read code, but I just want to make sure.
1 Better responsiveness of acceleration and slow movements without direction change. Also removing code once unnecessary.
2 Human eye-hand-coordination can handle constant function-curves very well, and it will be very adaptable and useable, when making ultra-fine movements. Edges in the curve are not ergonomic.
3 Useable and ergonomic acceleration can not be achieved accelerating x- and y-axes separately, especially when the values differ extremely by axes, so the length of the movement-vector needs to be accelerated.
any analog Input device like Mouse, trackball, trackpad, joystick, trackpoint, graphic-tablets (but please don't accelerate graphic-tablets)
Implementation in Other Systems
Probably, but I don't know anything about the implementation.
I am not a programmer, so I can't contribute code, but I can give you a useful tool (so to speak) to check the usability of your pointer profiles: I use CS:GO (Counter-Strike:Global Offensive) to check every new version of the input-chain (also Xorg-server on Linux Mint). Sounds weird, but this game actually needs quickness and precision in a very high degree and it shows every little flaw in the input chain. And it's free on steam since lately, so maybe consider giving it a shot or two. On Linux Mint 19.1 with Xorg-server 1.19, xorg-input-libinput 0.27.1, for example, it shows an obvious flaw: When playing against bots you need a different mouse speed than when playing casual online, probably because the bot AI uses more CPU resources. and much more... !!deactivate "raw input" in the CS:GO options when testing!!
--I don't intend to advertise so feel free to delete any inappropriate passages--