NFC reads and stores data in the OpenPrintTag format using PrusaLinkAPI
61
28
0
1410
updated February 22, 2026

Description

PDF

This device is an OpenPrintTag-compatible spool scanner that reads and writes NFC filament tags, displays spool data on an LCD screen, and automatically updates remaining filament using the PrusaLink API. It exposes the spools in Home Assistant and syncs with Spoolman. It also includes a Bluetooth-based browser UI for configuration and editing spool metadata. Firmware and hardware designs are fully open source on GitHub.

Project Status (BETA):

  • The Parts That Work:

    • Scanner reads and writes OpenPrintTag NFC tags

    • Tags are readable by the Prusa mobile app

    • LCD displays spool metadata correctly

    • PrusaLink API integration functional

    • Bluetooth configuration website operational

    • LCD enters sleep when content is unchanged

    • Spoolman support spools are updated and created in Spoolman

    • Spools show up in Home Assistant , and can be edited via automation.

  • The Parts That Need Work:

    • Only basic print use case is supported: 1 spool, no filament swaps. 

    • If you find other issues - raise them.

How It Works

  • ESP32 provides compute, Wi-Fi, and Bluetooth

  • Configuration is done via Bluetooth in a browser UI

  • Print data is fetched over Wi-Fi from the PrusaLink API

  • Spool tags are read/written via PN5180 NFC reader

  • Status and spool info are displayed on the LCD

Printing Directions

  • Print one of each part, in what ever material you want  (I used PLA)

  • No supports are required

Hardware Needed

Assembly

  1. Print 1x of parts. (no supports needed, 15% infill, .2mm layer height)

  2. Solder the header pin on to the NFC board (if not already attached).

  3. Connect 4 wires to dupont connectors on the LCD board.

  4. Install the LCD board, securing with 6mm 2 M3 screws.

  5. Secure the NFC board using command strip, or two sided tape.

  6. Connect wires to the dupont connectors on the NFC board.

  7. Connect wires per the table below. Note: for the 5V there is only 1 pin, so you will need to use a wago or wirenut to connect the LCD and NFC to 5V.

  8. Double check your connections - especially the GND, 3V, and 5V connections.

  9. Connect USB cable to ESP32.

  10. Secure ESP32 using command strip, or double-sided tape.

  11. ZIP tie the USB cable to the half circle tie down to avoid pullout issues.

  12. Install the back cover using m3 nuts in the holders, and m3 screws.

  13. Install the firmware on the ESP32 using this tool. or using pio from source github repo.

  14. Configure wifi and view spool details using this website: https://ryanch.github.io/openprinttag_scanner/

  15. Put your scanner next to your printer spool holder. 

Wiring Table

Power Warning
Double-check 3.3V, 5V, and GND before powering.
Reversed polarity can permanently damage the ESP32, LCD, and NFC module. Triple check the wire connections, especially the Ground and Power connections.

PN5180 Pin

LCD Pin

ESP32 Pin

RST

D13

NSS

D14

MOSI

D27

MISO

D26

SCK

D25

BUSY

D33

GPIO

D32

IRQ

D35

AUX

D34

REQ

- not connected -

3V

3V

5V

VIN (5V)

GND

GND

GND

GND

VCC

VIN (5V)

SDA

D23

SCL

D22

Screenshots of the Web UI

Shows spools recently seen by the scanner.

Allows edit of spool metadata:

Edit device settings:

Tags



Model origin

The author marked this model as their own original creation.

License