Evidence at a glance #
source evidence…
What was done #
The author reverse engineered the AH-M2 thermal printer protocol from the Funny Print Android app and built a Web Bluetooth controller. The project includes protocol documentation, a web interface, and Node.js unit tests.
The author reverse engineered the communication protocol for the AH-M2 Bluetooth thermal printer, also marketed as the XenGro Mini Sticker Printer, by analyzing the Funny Print Android application. The project provides a browser-based controller that communicates with the device via Web Bluetooth. Documentation in the repository details the GATT layout, command structure, CRC-16/XMODEM handshake, and bitmap formatting. The controller supports printing text, images, and test patterns, while providing status updates for battery and paper levels. Claude Opus 5.5 is credited as a co-author on commits related to protocol documentation, the implementation of lead-in settings, and the configuration of the GitHub Pages deployment workflow. The project includes a protocol module in JavaScript and a suite of Node.js tests for verifying packet construction and bitmap processing. The controller requires a secure context and is compatible with Chrome and Edge browsers. https://raw.githubusercontent.com/sajingeo/blethermal/HEAD/README.md
Reproduce it #
Open https://sajingeo.github.io/blethermal/ in a supported browser, turn on the AH-M2 printer, and select the device via the Connect button.
Community #
Ask a question, share what worked, or follow the next milestone.