Adding accelerometer (tilt / shift) data could help a little bit, because it's correlated to the motion of typing hands, too.
https://bugs.chromium.org/p/chromium/issues/detail?id=421691
https://arxiv.org/abs/1410.7746
Here is one of them, I don't recall the other two. https://dl.acm.org/citation.cfm?id=2162095
Adding accelerometer (tilt / shift) data could help a little bit, because it's correlated to the motion of typing hands, too.