Case study
castty: reconstructing Mionix Castor control on Linux
castty reconstructs configuration of the Mionix Castor mouse on Linux from captured HID feature reports. Its protocol notes describe command report 0x60, profile report 0x61, readback, and field offsets; the Rust GUI and CLI use those findings for lighting, DPI, buttons, macros, and profiles.
- Targets
- Protocol
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
- Evidence class
- C1 partial scope or analysis entry
- Stars
- 2
- Last commit
- 2026-09-17
- Language
- Rust
- License (GitHub)
- GPL-3.0
GitHub data as of 2026-11-10
Evidence

- Observed
- Download and demo observed; the case covers part of the target software.
- Scope
- Partial
- Checked
- 2026-11-08
Requirements & limits
- Prerequisites: A Mionix Castor with USB ID 22d4:1316 and Linux hidraw are required.
- Limits: The Castor PRO is a different device and is unsupported.
- License: GPL-3.0.
Cite
BibTeX
@misc{castty-mionix-castor-case,
title = {{castty: reconstructing Mionix Castor control on Linux}},
howpublished = {\url{https://github.com/fawaz7/castty}},
url = {https://github.com/fawaz7/castty},
urldate = {2026-11-06},
note = {Awesome REA entry: \url{https://awesomerea.org/resources/castty-mionix-castor-case/}}
}Plain text
castty: reconstructing Mionix Castor control on Linux. https://github.com/fawaz7/castty (accessed 2026-11-06). Awesome REA entry: https://awesomerea.org/resources/castty-mionix-castor-case/
Useful? Star Awesome REA on GitHub2.4k
About this entry
The description was reviewed against primary sources.
Primary sources
- research/PROTOCOL.md GitHub · fawaz7/castty · Revision ac12436
- README.md GitHub · fawaz7/castty · Revision ac12436
More in Protocols
- legion-gpu-rgb: reconstructing Lenovo GPU lighting control · Case study
- SoundcoreBridge: reconstructing Soundcore Space 2 headphone controls · Case study
- NiimBridge: reconstructing the NIIMBOT D110_M print protocol · Case study
- OMS fingerprint module: reconstructing USB communication for a Linux driver · Case study
- zwift-api: mapping Zwift's private data endpoints · Case study
- Gear VR Controller: decoding Samsung's BLE remote protocol · Case study