# MacroPad: reconstructing a USB macropad configuration protocol

> MacroPad reconstructs the USB HID configuration exchange of a 12-key, two-knob macropad identified as 1189:8840 and implements it in a Linux GUI. The author documents capturing MINI_KEYBOARD.exe traffic with usbmon, decoding configuration and commit reports, and replaying captured packets in tests.

- Type: Case study
- Targets: Protocol
- Category: Independent reconstruction cases
- Relationship: Independent reconstruction project
- Sources reviewed: 2026-11-06
- Added to the catalog: 2026-11-06
- Original resource: <https://github.com/Probler-Yt/MacroPad>
- Primary source: <https://github.com/Probler-Yt/MacroPad/blob/2b75543c74727427ea4f3cc1d3c720fbd56fc438/docs/protocol.md>
- Catalog page: <https://awesomerea.org/resources/macropad-usb-protocol-case/>
- Record JSON: <https://awesomerea.org/resources/macropad-usb-protocol-case/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/macropad-usb-protocol-case/index.md)

## Requirements & limits

- **Prerequisites:** Linux, Python 3.9+ and the 1189:8840 macropad are documented for the supported configuration path.
- **Limits:** Other pad IDs are reported as unsupported until their layout and protocol are added.
- **License:** GPL-3.0 license.

## Primary sources

1. <https://github.com/Probler-Yt/MacroPad/blob/2b75543c74727427ea4f3cc1d3c720fbd56fc438/docs/protocol.md>
2. <https://github.com/Probler-Yt/MacroPad/blob/2b75543c74727427ea4f3cc1d3c720fbd56fc438/README.md>

## More in Protocols

- [Monix: reconstructing Audient iD USB mixer control on Linux](https://awesomerea.org/resources/monix-audient-id-case/index.md) · Case study
- [Scooter Link: a Xiaomi scooter client built from BLE protocol research](https://awesomerea.org/resources/scooter-link-case/index.md) · Case study
- [Sound Blaster AE-9: reconstructing Linux control from Windows driver analysis](https://awesomerea.org/resources/sb-ae9-case/index.md) · Case study
- [thermalmaster: a Go client for ThermalMaster camera USB commands](https://awesomerea.org/resources/thermalmaster-case/index.md) · Case study
- [open-rknpu: Rockchip NPU task-program reconstruction](https://awesomerea.org/resources/open-rknpu-case/index.md) · Case study
- [hardsid4u: reconstructing the HardSID 4U USB protocol](https://awesomerea.org/resources/hardsid4u-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.
