Skip to content

fix(compx): address the active onboard profile for settings writes - #18

Merged
jazzstack merged 1 commit into
OpenMouse-Project:mainfrom
jazzstack:fix/address-active-profile
Aug 14, 2026
Merged

jazzstack merged 1 commit into
OpenMouse-Project:mainfrom
jazzstack:fix/address-active-profile

Conversation

@jazzstack

Copy link
Copy Markdown
Contributor

Fixes an Attack Shark R5 Ultra issue where DPI, polling rate, lift-off distance and sensor options changed "successfully" (write confirmed via read-back) but never actually affected the mouse.

The CompX (Lamzu + WLMouse) drivers hardcoded profile 0x01 as the first argument of every profile-page command. When the onboard active profile is not 1 (this R5 Ultra reports active profile 2), the writes land in a stored slot the mouse is not running, so the running settings are unchanged.

Now the driver resolves the active profile (device command 0x85) before reading or writing any profile-scoped setting, and addresses that profile. Verified with a captured session where the R5 Ultra reports active profile 2.

Profile-page commands hardcoded profile 1, so DPI, polling rate, lift-off
distance and sensor options were written to a stored slot the mouse was not
running: the write confirmed via read-back yet the behavior never changed.
Resolve the active profile (device command 0x85) first and address that
profile for every profile-page read and write, in both the Lamzu and WLMouse
drivers.
@jazzstack
jazzstack merged commit 1406570 into OpenMouse-Project:main Aug 14, 2026
1 check passed
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

Successfully merging this pull request may close these issues.

1 participant