Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Trackpad overlap (and some other weird issues) #55

Closed
mcronce opened this issue Feb 17, 2017 · 2 comments
Closed

Trackpad overlap (and some other weird issues) #55

mcronce opened this issue Feb 17, 2017 · 2 comments

Comments

@mcronce
Copy link
Contributor

mcronce commented Feb 17, 2017

I noticed that with the default deadzone (0.6), it didn't seem to be possible to use "diagonals" on the trackpads when they're configured as buttons. "Diagonals", of course, meaning that, using up and left as an example, the keycodes configured for both up and left would be sent.

I lowered the deadzone a lot (0.2), but noticed a bunch of issues far out on the trackpad - basically, it looks like the X and Y axes don't line up perfectly with the exact horizontal and vertical lines on the trackpads. At least, not mine...maybe there's variation from one to the next. Some testing shows that mine is off by about 0.1π radians.

So, I want to propose a change - rather than using a simple integer deadzone check (which effectively makes the deadzone a square), we can figure out the linear distance of the touch coordinates from center and do a little trigonometry to figure out the angle that we're working with and, consequently, which keycodes to send.

@mcronce
Copy link
Contributor Author

mcronce commented Feb 17, 2017

I have changes ready to go in https://github.com/mcronce/steamcontroller/tree/trackpad-improvements - I've done some terminal testing with evtest and it seems to be pretty good. I'm going to play test it tomorrow; if it goes well, I'll submit the pull request for these simple changes separately from my big set in #54.

@mcronce
Copy link
Contributor Author

mcronce commented Feb 18, 2017

Yeah this works super great. I had to fix deadzones after a little more testing tonight, but that was easy, they're back, and it's working. Test/critique away, let me know if you need anything else from me on this one.

@ynsta ynsta closed this as completed in #56 Jun 13, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant