HeadlinesBriefing favicon HeadlinesBriefing.com

Storing 2 Bytes in a Logitech Mouse: A Hacker's HID++ Deep Dive

Hacker News •
×

A developer explored storing data in the non-volatile memory of a Logitech mouse, specifically targeting the DPI register. The project began with the realization that the Logitech MX Vertical, used across multiple computers, must retain settings like DPI. Logitech's proprietary HID++ protocol allows for feature control, but macOS's IOHIDManager blocks direct access to certain registers like 0x1c00. The breakthrough came with the DPI register (0x6869), which accepts any 16-bit value without validation.

Writing 0x6869 allowed persistent storage of 2 bytes across reboots and different machines. The author details the technical journey, including reverse-engineering HID++'s feature table and encountering macOS's silent packet dropping. The GitHub repository provides a Rust tool enabling others to experiment with mouse storage.