1 / 2
ESP32 Thermal Printer — image 1
1 / 2

ESP32 Thermal Printer

Order a print of this model

We calculate the final price from your selected file. You review and accept it before payment.

Saved on this device.

A compact ESP32-based thermal receipt printer running ESPHome. Forked from lyntoo/esphome-thermal-printer — thanks to ly

Rating
0 / 5
Likes
4
Downloads
5
Makes
0
Views
135
Reviews
0

Updated at source:

Model information

Category
Other Ideas
License
GNU General Public License v3.0

Features

  • Versatile – Print weather reports, shopping lists, receipts, or small images.

  • On-demand power control – The printer is only powered when an action is triggered. You can add a Home Assistant automation to turn it off again.

  • Bitmap printing – Print arbitrary images by generating C array code with image2cpp. Inspired by the Circuit Digest ESP32 thermal printer tutorial.

Hardware

Component

Specification

MCU

ESP32-S2 Mini (or comparable)

Power

2× buck converters (5 V for ESP, 9 V for printer)

Printer

PNP500 or similar, TTL interface

PSU

12 V / ~2 A (currently 2.5 A)

Switch

MOSFET (switches 9 V printer supply via GPIO3)

How to print Bitmaps

Generate the hex array with image2cpp https://javl.github.io/image2cpp using these export settings:

  • Format: Horizontal, 1 bit per pixel

  • Output: Plain bytes, no comments, no prefix, no separator

  • Bytes per row: 200000 (single line, no newlines)

You may need to rotate or invert the image depending on your setup. Call the Home Assistant function with the image width, height, and hex data.

Repository

Code for esphome. You can flash this file with esphome builder.

git.swablab.de/projects/thermal-printer

Description in german:

https://wiki.swablab.de/books/projekte/page/thermo-drucker

Tags