print_master_ble 0.2.0 copy "print_master_ble: ^0.2.0" to clipboard
print_master_ble: ^0.2.0 copied to clipboard

Flutter library for Zhuhai Quin thermal printers (Marklife, Phomemo, Vretti). Implements Protocol 0x1F with Floyd-Steinberg dithering and ZLIB compression.

0.2.0 #

Added #

  • High-Level Print Handler API - New recommended API for simplified printer integration
    • PrinterDevice abstract class - BLE-library agnostic device interface
    • PrintMasterHandler - Manages complete printing process with flow control, chunking, and progress tracking
    • FlutterBluePrinterDevice - Reference implementation for flutter_blue_plus (in example app)
    • Progress and status streams for real-time UI updates
  • BLE Protocol Constants - PrinterBleProtocol class with documented UUIDs and helpers
    • All service and characteristic UUIDs centralized
    • Helper methods for UUID matching
    • Protocol identifier constants (0x01, 0x02, 0x1F)
  • API Mode Toggle - Example app demonstrates both high-level and low-level APIs
    • Runtime toggle between manual and high-level modes
    • Visual mode indicator (green "H" vs orange "M" badge)
  • Documentation & Metadata:
    • Added Ko-fi support button
    • Added "Related Projects" section referencing Web Kit
    • Validated P50/P50S device compatibility

Changed #

  • Library Reorganization - Improved structure with clear module separation
    • core/ - Core interfaces and protocols (ble_protocol, printer_device, logging)
    • commands/ - Printer command implementations
    • utils/ - Helper functions (image processing, dithering)
  • README reorganized to feature high-level API first
  • Example app simplified significantly (~90 lines removed from controller)
  • All exports centralized in main print_master_ble.dart file
  • PrintMasterLog now publicly exported

Removed #

  • dudu.js - Removed legacy JS port file from root

Maintained #

  • Full backward compatibility with existing low-level PrintPort API
  • No new dependencies added to library (remains BLE-agnostic)

0.1.0 #

  • Initial release
  • Complete implementation of Protocol 0x1F for Zhuhai Quin thermal printers
  • Support for Marklife (P11, P12, P50, P50S), Phomemo (D30, D35, Q30), and Vretti (HP3, HP4) printers
  • Floyd-Steinberg dithering with ITU-R BT.601 luminance conversion
  • ZLIB compression (RFC 1950) with manual header construction for 1KB window compatibility
  • Flow control management (Protocol 0x01) for reliable data transmission
  • Cross-platform support: Android, macOS, iOS (expected), Web (experimental)
  • Data chunking (200 bytes) with progress tracking
  • Complete example app demonstrating all features
  • Comprehensive documentation
0
likes
160
points
139
downloads

Publisher

verified publisheratokatl.dev

Weekly Downloads

Flutter library for Zhuhai Quin thermal printers (Marklife, Phomemo, Vretti). Implements Protocol 0x1F with Floyd-Steinberg dithering and ZLIB compression.

Homepage
Repository (GitLab)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

archive, flutter, image

More

Packages that depend on print_master_ble