I have been using both yours and skyl3rs driver(switching back and forth to test them out) for a little while now, saw that rotation wasn't implemented from RawAccel/InterAccel just yet so I thought I'd just get this out there. Xorg has a Rotation built into it and I've been toying with it, although it isn't the run of the mill by degree. Using the calculator here we can set it up:
Select rotate in the degree
it's default lol
Set the degree at the amount you'd like your mouse to be rotated to compensate for your sensor
Mine is -1.5
Click the red button and let the calculator do its work
The matrix will come out as a 2x2 instead of 3x3 so for example: using my inputs (since I rounded them up) it would be 0.99 -0.03 0 0.03 0.99 0 0 1
replace the 4 digits I inserted with your own matrix
Next steps require the Terminal or editing your /etc/x11/xorg.conf.d files - Using the Terminal was fine for me for this and it hasn't changed
Now follow the steps:
Type xinput
list's all the usb devices on your system
Next find your mouse and look at the ID number
if you have multiple kernels installed I believe it'll double the input so if there are multiple mice remember all the ID numbers
Now type xinput list-props (device ID)
do this for all of them you can change one or all of them I don't believe it matters much usually the one that has the most information listed is the one that is in use
Now one of the first things you should see is Coordinate Transformation Matrix the (ID) that's listed next to it
mine looked like this: Coordinate Transformation Matrix (156)
Finally we can set the rotation: xinput set-prop (Device ID) (Coord ID) (Matrix we got from the calculator)
an example using my ID's would be xinput set-prop 8 156 1 0 0 0 1 0 0 0 1(this is a default matrix with no rotation)
Someone has made a python script to try out new angles here is the blog post, (he/she also explains it a bit better I believe with sources) its not listed there but you need to download Scipy's spatial transform.
I know almost nothing about coding only some basics but thought I'd contribute to something I tinker and toy with daily in some way. Hopefully this information will be useful to you or others who contribute to this project to add even more modules to this to enable it to get as close to the Raw Accel/InterAccel as possible.
I have been using both yours and skyl3rs driver(switching back and forth to test them out) for a little while now, saw that rotation wasn't implemented from RawAccel/InterAccel just yet so I thought I'd just get this out there. Xorg has a Rotation built into it and I've been toying with it, although it isn't the run of the mill by degree. Using the calculator here we can set it up:
Select rotate in the degree
Set the degree at the amount you'd like your mouse to be rotated to compensate for your sensor
Click the red button and let the calculator do its work
The matrix will come out as a 2x2 instead of 3x3 so for example: using my inputs (since I rounded them up) it would be 0.99 -0.03 0 0.03 0.99 0 0 1
Next steps require the Terminal or editing your /etc/x11/xorg.conf.d files - Using the Terminal was fine for me for this and it hasn't changed
Now follow the steps:
Type xinput
Next find your mouse and look at the ID number
Now type xinput list-props (device ID)
Now one of the first things you should see is Coordinate Transformation Matrix the (ID) that's listed next to it
Finally we can set the rotation: xinput set-prop (Device ID) (Coord ID) (Matrix we got from the calculator)
Someone has made a python script to try out new angles here is the blog post, (he/she also explains it a bit better I believe with sources) its not listed there but you need to download Scipy's spatial transform.