# e-print_client **Repository Path**: huadonga/e-print_client ## Basic Information - **Project Name**: e-print_client - **Description**: 这是e-print热敏打印机的微信小程序控制端 - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-10 - **Last Updated**: 2026-10-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # e-print_client WeChat mini program client for the e-print thermal printer. Communicates with the ESP32-based receiver over BLE using the WeChat mini program Bluetooth API, providing text layout, printing, preset management and device menu synchronization. ![logo](assets/logo_icon_144.png) ## Features - **Quick Print**: type and print, with automatic font sizing to paper width; mixed CJK/Latin text, multi-line layout, optional timestamp. - **Advanced Print**: free-layout editor — add multiple text boxes on a paper canvas with drag, font size, bold, italic, alignment and width controls, with live preview before printing. - **List Management**: syncs the `menu.txt` file with the receiver to manage print presets by category; bitmaps are downloaded to receiver storage when saving. - **Bluetooth**: scan / connect / disconnect; clock sync (RTC) on connect; automatic reconnection with exponential backoff (up to 30 attempts). ## BLE Protocol - Service UUID: `0000ABF0` (16-bit) - Packet format (little-endian): `cmd (4B) + dataLen (2B) + flag (2B, isLastPart) + payload` - Bitmap: 192 dots wide, 1bpp (24 bytes per row), sent in 190-byte chunks. | Command | Value | Description | |---|---|---| | SET_PRINT_DATA | 1 | Print bitmap data (chunked) | | START_PRINT | 2 | Start a print job | | GET_MENU_FILE / SET_MENU_FILE | 3 / 4 | Menu file read / write | | GET_FONT_FILE / SET_FONT_FILE | 5 / 6 | Font file read / write | | SET_FONT_BIN_FILE | 7 | Font binary download | | SET_BITMAP_BIN_FILE | 8 | Bitmap preset download (first packet carries the file name, stored under CRC32) | | DEL_BITMAP_BIN_FILE | 9 | Delete bitmap preset | | SET_DATE | 10 | Clock sync after connect (7-byte time struct) | ## Getting Started 1. Install [WeChat DevTools](https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html). 2. Import this repository (`appid` is set to the test placeholder `touristappid`; replace it with your own mini program AppID). 3. Build and run, then scan and connect to the e-print receiver on a real device with Bluetooth enabled. > This repository contains the mini program client only. The receiver firmware (ESP32 + LVGL) lives in the companion firmware repository. ## License [GPL-3.0](LICENSE)