{
  "added_at": "2026-11-08",
  "additional_evidence_urls": [
    "https://github.com/terraboops/catbus99/blob/341574514fbf74315487f2aa5984657e16646f16/README.md"
  ],
  "category": "reconstruction-cases",
  "class": "hardware",
  "description_en": "catbus99 reconstructs control of the Epomaker TH99 Pro keyboard display from captured driver WebHID traffic. Its Rust client sends USB-HID reports to display images and rendered widgets, while a protocol document maps the configuration and TFT interfaces. A daemon governs writes to the display's flash storage.",
  "description_zh": "catbus99 根据采集到的驱动 WebHID 流量还原 Epomaker TH99 Pro 键盘屏幕控制。Rust 客户端通过 USB-HID 报文显示图片和小组件，协议文档记录配置与 TFT 接口；守护进程限制向屏幕闪存的写入。",
  "entry_url": "https://awesomerea.org/resources/catbus99-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/catbus99-case/",
  "evidence_class": 2,
  "evidence_status": "observed",
  "evidence_url": "https://github.com/terraboops/catbus99/blob/341574514fbf74315487f2aa5984657e16646f16/docs/PROTOCOL.md",
  "group": "cases",
  "id": "catbus99-case",
  "json_url": "https://awesomerea.org/resources/catbus99-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/catbus99-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/catbus99-case/index.md",
  "name": "catbus99: reconstructing Epomaker TH99 Pro screen control over USB-HID",
  "name_zh": "catbus99：还原 Epomaker TH99 Pro 屏幕的 USB-HID 控制方式",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirement_facets": [
    "prerequisites",
    "limits",
    "limits",
    "license"
  ],
  "requirements": [
    "Epomaker TH99 Pro connected by USB cable; macOS or Linux and Rust 1.82+.",
    "The display is not reachable over 2.4 GHz or Bluetooth.",
    "Screen uploads are subject to a rate limit with a five-minute floor.",
    "MIT License."
  ],
  "requirements_zh": [
    "需要通过 USB 线连接的 Epomaker TH99 Pro、macOS 或 Linux，以及 Rust 1.82+。",
    "无法通过 2.4 GHz 或蓝牙访问屏幕。",
    "屏幕上传受写入频率限制，最短间隔为五分钟。",
    "采用 MIT 许可证。"
  ],
  "scope": "unknown",
  "targets": [
    "protocol"
  ],
  "url": "https://github.com/terraboops/catbus99",
  "verification": "source-reviewed",
  "verified_at": "2026-11-06"
}
