Coder Social home page Coder Social logo

x52d mouse diagonal cursor speed about libx52 HOT 5 OPEN

nirenjan avatar nirenjan commented on June 1, 2024
x52d mouse diagonal cursor speed

from libx52.

Comments (5)

nirenjan avatar nirenjan commented on June 1, 2024

You're right, the axis movements are handled independently. One thing we could check is if your hardware is working as expected.

When you run x52evtest, observe the values printed in the console, especially when you move the mouse stick in the different directions. Does the value for THUMBX and THUMBY match when you move the stick in the cardinal directions vs diagonally?

from libx52.

VorpalBlade avatar VorpalBlade commented on June 1, 2024

Using x52evtest is really difficult. Something seems to be wrong with the joystick twist axis (which I don't use, I have rudder pedals) and it generates constant noise when centred (ABS_RZ events ranging from 470 to 545), though that axis is still when twisted significantly far enough away from the centre position . :-(

After filtering that with grep, both of the mouse axes seem to have values ranging from 0-15, though I have to press fairly hard to get to the outermost values (1-14 is more typical). The values seem to behave sensibly.

When I press really hard on the mouse thumbstick I can also feel that there is a "hard stop" that is square (i.e. as I slide it around I can feel the corners on the diagonal). This is in contrast to the trackpoint of my thinkpads (plural, I have used thinkpads for many years, and I don't throw away old computers that still work), where I can't feel such hard stops. After some investigation I realised that the actual trackpoints don't seem to move at all, only the rubber dome on top of it seems to be squish and stretch a bit as they are made of a flexible material. I believe the plastic nub under the rubber dome is actually fixed and uses some sort of pressure or force sensors.

The different construction methods does of course result in completely different feel, and it is likely that it affects how the resistance of the axis works as well. Thinking about the physics I believe that on a trackpoint the force I need to apply will be proportional to the deviation from the centre (Euclidian distance, L2 norm).

In contrast: on the X52 where the axes that actually move, the force I need to apply will be per axis (if it increases at all before hitting the hard stop, not sure about that). Thus the force is additive between the axes (Manhattan distance, L1 norm). This means that when it feels like I press with an equal amount of force in a cardinal direction and a diagonal direction, I'm actually moving further away from the centre position when going diagonal.

In conclusion, though I'm not sure yet, I now suspect this is just how the hardware is and perhaps nothing can be done about it. I may simply have to get used to it. Unless I want to make an electronics project and transplant a Thinkpad trackpoint onto the X52 ;-)

from libx52.

stale avatar stale commented on June 1, 2024

This issue has been automatically marked as stale because it has not had recent activity in the past 6 months. It will be closed within 2 weeks if no further activity occurs. Thank you for your contributions.

from libx52.

VorpalBlade avatar VorpalBlade commented on June 1, 2024

As far as I know this issue persists. I haven't used my x52 since then (I have not had any time for flight sims in recent months). As such I don't remember, did you need anything further from me?

from libx52.

nirenjan avatar nirenjan commented on June 1, 2024

I haven't had time to work on it either, the stale bot just kicked in automatically.

from libx52.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.