Skip to content

Option to change HID descriptor to use absolute coordinates #154

@willwade

Description

@willwade

Is your feature request related to a problem? Please describe.
When we use Macros its hard to be really useful - e,g. drawing a circle or clicking on screen elements, because mouse is only relative. It needs to be absolute to be useful

Describe the solution you'd like
An option - I'm not sure where - that the mouse is set to be absolute rather than relative. It needs to be not the default - it can go wrong if you use this with a different screen resolution to what the user is used to

Describe alternatives you've considered
Software on the recieving device to change relative to absolute. This wouldnt work for iOS/Android

**NB: See this for inspiration. Look at the readme and mouse section - https://github.com/hrvach/deskhop) **

So heres the thinking. It's possible to accumulate the relative movements internally to maintain an accurate tally of the position, essentially creating a virtual absolute coordinate system. This method wouldn't require you to know the physical screen size but rather work within a predefined coordinate space. Here's how it could work:

Change the HID Report Descriptor: Alter the HID report descriptor on the nRF52840 to indicate that it's sending absolute coordinate data.
Accumulate Movements: Implement firmware to accumulate the relative movements from the mouse. As the mouse sends its relative movements, the firmware would add these to a running total, which represents the current position in your virtual coordinate space.

I havent read the code of deskhop very well but I imagine its doing something like this in the code - maybe in the mouse section https://github.com/hrvach/deskhop/tree/main/src

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