# mchose-linux: MCHOSE HID settings protocol and Linux client

> mchose-linux reconstructs the MCHOSE mouse settings protocol and implements Linux CLI and GUI clients for it. Its documentation traces HID feature-report commands and configuration fields from the M HUB web bundle and an L7 Pro mouse. The clients read and change DPI, polling rate, lift-off distance and other stored settings.

- Type: Case study
- Targets: Protocol
- Category: Independent reconstruction cases
- Relationship: Independent reconstruction project
- Sources reviewed: 2026-11-06
- Added to the catalog: 2026-11-08
- Original resource: <https://github.com/alexfrih/mchose-linux>
- Primary source: <https://github.com/alexfrih/mchose-linux/blob/75204ccc3bd83883330176d1eefda211dd449576/PROTOCOL.md>
- Catalog page: <https://awesomerea.org/resources/mchose-hid-linux-case/>
- Record JSON: <https://awesomerea.org/resources/mchose-hid-linux-case/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/mchose-hid-linux-case/index.md)

## Requirements & limits

- **Prerequisites:** Linux with access to the mouse's hidraw node; Rust and Cargo are needed to build the clients.
- **Testing evidence:** The author reports exercising the protocol on an MCHOSE L7 Pro; other listed models are not individually confirmed.
- **Limits:** The G3 family uses a different protocol and is unsupported.
- **License:** MIT license.

## Primary sources

1. <https://github.com/alexfrih/mchose-linux/blob/75204ccc3bd83883330176d1eefda211dd449576/PROTOCOL.md>
2. <https://github.com/alexfrih/mchose-linux/blob/75204ccc3bd83883330176d1eefda211dd449576/README.md>
3. <https://github.com/alexfrih/mchose-linux/blob/75204ccc3bd83883330176d1eefda211dd449576/LICENSE>

## More in Protocols

- [K1C CFS without official Creality firmware: CFS protocol client and Klipper integration](https://awesomerea.org/resources/k1c-cfs-klipper-case/index.md) · Case study
- [Open TechEd: reconstructing NanoDrop 1000 USB control](https://awesomerea.org/resources/open-teched-nanodrop-case/index.md) · Case study
- [douze: SSL 12 USB control protocol and Linux client](https://awesomerea.org/resources/douze-case/index.md) · Case study
- [Osmotic: a Mac client for DJI Osmo camera protocols](https://awesomerea.org/resources/osmotic-case/index.md) · Case study
- [GogglesView: receiving DJI Goggles 3 video over USB-C](https://awesomerea.org/resources/gogglesview-dji-goggles-3-case/index.md) · Case study
- [Xiaomi X-WPFTB LiDAR: decoding a robot-vacuum sensor's UART frames](https://awesomerea.org/resources/xiaomi-wpftb-lidar-case/index.md) · Case study

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
