-
Notifications
You must be signed in to change notification settings - Fork 0
Known Limitations
The protocol is still being reverse-engineered from observed web-driver behavior and captured HID frames.
Battery reporting is known but not reliable enough for the public UI yet.
Known queries:
Status: 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4a
Battery: 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 49Observed battery replies can contain several percent-looking bytes that do not always agree with the official web driver. The app currently keeps parsing logic in code, but the README marks battery level as not implemented.
The app has a Button Assignment tab, but it is currently a visual preview only. No verified button-remapping write frames are implemented.
Needed before enabling:
- Captures for left, right, middle, forward, backward, and DPI-cycle assignments.
- Confirmation of whether mappings are stored per profile or globally.
- Confirmation of restore-default behavior.
The current DPI write frame is verified for a captured value, but the exact role of byte[8] = 0x77 is still unknown.
Current frame shape:
ENCAP=0x18
byte[4]=0x04
byte[5]=byte[6]=(dpi / 50) - 1
byte[8]=0x77The app selects the DPI stage before writing the value.
ENCAP=0xB9 appears in two places:
- as the apply frame after changing polling rate
- as the work-mode setting read from block
0xB4
Both behaviors are documented because both are present in captures/tests. This address may be overloaded by the web driver or context-dependent.
The UI knows about Ultra Performance as a concept, but raw mode 2 is not verified and is not sent as a normal selectable work mode.
Support for IPI FLOAT 88, QI Pro, and other IPI-compatible mice requires:
- HID vendor/product IDs
- usage page and usage
- status/battery captures
- block-read captures
- write captures for DPI, polling rate, LOD, and advanced settings