# ry5088-flasher: reconstructing a magnetic keyboard's HID-DFU path

> ry5088-flasher reconstructs the USB HID-DFU update path used by RongYuan RY5088 magnetic keyboards. A Rust flasher reads the board's dev_id, obtains the matching stock image and transfers it through the documented bootloader protocol. The repository also provides profile-driven AT32F405 reference firmware, whose hardware bring-up is still experimental.

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

## Requirements & limits

- **Prerequisites:** An RY5088 keyboard, USB access and libhidapi are required for the flasher.
- **Prerequisites:** Building the custom firmware requires arm-none-eabi-gcc and the separately obtained Artery BSP.
- **Limits:** The author reports that the custom firmware builds and passes host tests but has not completed on-hardware bring-up.
- **License:** MIT license.

## Primary sources

1. <https://github.com/dot-agi/ry5088-flasher/blob/2a7db6ad83cf20385897b4080a586764916656e5/docs/protocol.md>
2. <https://github.com/dot-agi/ry5088-flasher/blob/2a7db6ad83cf20385897b4080a586764916656e5/README.md>
3. <https://github.com/dot-agi/ry5088-flasher/blob/2a7db6ad83cf20385897b4080a586764916656e5/firmware/README.md>
4. <https://github.com/dot-agi/ry5088-flasher/blob/2a7db6ad83cf20385897b4080a586764916656e5/LICENSE>

## More in Firmware and hardware

- [TJ-56-654 weather clock: replacement firmware after hardware and security analysis](https://awesomerea.org/resources/esp8266-weather-clock-case/index.md) · Case study
- [Torso T-1: reconstructing the .t1 backup format](https://awesomerea.org/resources/t1-backup-file-format-case/index.md) · Case study
- [open-smc-pad: replacing M-Vave SMC-PAD firmware](https://awesomerea.org/resources/open-smc-pad-case/index.md) · Case study
- [Predator Sense for Linux: reconstructing PHN16-72 firmware control](https://awesomerea.org/resources/predator-sense-phn16-72-linux-case/index.md) · Case study
- [HH41V: reconstructing the GOTU/SUDH update process](https://awesomerea.org/resources/hh41v-fota-case/index.md) · Case study
- [Band 9 表盘生成器: Huawei Band 9 HWT watch-face format reconstruction](https://awesomerea.org/resources/band9-watchface-generator-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.
