Skip to content

Feature request: surface calibration (sensor tuning + lift-off distance) #154

Description

@kfrancis

What I'm asking for
A way to calibrate the mouse sensor to the surface it's actually used on, the way the first-party software from most major mouse brands does. In those tools, you start a calibration, move the mouse in circles on your pad for a few seconds, and the sensor stores tuned values for that surface.

Why it matters
Out of the box, the sensor uses conservative defaults meant to work on any surface. On a specific pad, that usually means a higher lift-off distance than necessary, and on some pads (dark cloth, glass-like hard pads), noticeably less consistent tracking. Calibrating fixes both, and it's the one thing I still have to keep the vendor's software installed for. Being able to do it here would let me drop that software entirely.

Suggested behaviour
A "Calibrate surface" action that walks the user through the circle-motion pass and reports success/failure.
Optionally, a manual lift-off distance selector (low/medium/high, or mm values) for people who don't want the full calibration.
Store the result per profile (or per surface, if profiles already exist), so switching pads is a one-click swap.

Implementation notes (as far as I understand it)
On PixArt-based sensors, this is a firmware-level "surface tuning"/LOD-calibration feature exposed through vendor HID commands, so it's likely a matter of finding the right report IDs rather than doing any image processing on the host. I'm happy to capture USB traffic from the vendor tool on my hardware and to test builds.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions