Skip to content

Hardware support

@thermal-label/escpos-core is a pure protocol encoder — it ships no hardware-specific knowledge. There is no device registry, no per-model configuration, and no transport binding here.

The package targets any spec-aligned ESC/POS printer doing bitmap label printing that accepts the ESC @ + GS v 0 + ESC N subset. That includes (non-exhaustively):

  • Epson TM-L100 and similar Epson-branded label-mode receipt printers.
  • Bixolon mobile printers in bitmap-only mode.
  • Star Micronics bitmap modes on label-capable models.
  • Future iDPRT consumer-line printers, Polono / Vretti standalone units, and any future ESC/POS-extending vendor.

For vendor-extended ESC/POS dialects (additional 1F 11 xx opcode families, compressed raster modes, vendor status-opcode tables, multi-copy framing) consult the vendor's own driver package. Examples:

  • @thermal-label/labelife-core — LabeLife / Aimo / Quyin family with the 1F 11 xx opcode family, three sub-engines (escpos-a / escpos-y0 / escpos-p1), and an LZO-compressed raster path.

If you are adding support for a new ESC/POS-speaking label printer and find that this package's pure-spec subset is not enough, the right answer is almost always a thin downstream package that re-uses these byte builders and adds the vendor-specific framing on top — not patching the spec-aligned core.

Released under the MIT License.