The hardware actually deployed in the reference fleet — the
printers this stack is developed and tested against. Not a buying
guide, and not a requirement list: every controller below can be
substituted with a Raspberry Pi, a BTT Pi-equivalent, or any other
Klipper-capable host. The stack itself doesn't depend on any specific
controller family.
PN532 modules are the cheapest reliable option. Recommendations:
Avoid Aliexpress no-name PN532s that ship pre-set to I2C with
the SEL0/SEL1 traces cut wrong. Buy from a vendor that lets you
select UART mode in stock.
USB-UART bridges: CH340 and FTDI both work. PL2303 also works,
some older Linux kernels have quirky behavior — prefer CH340/FTDI
if you have a choice.
HSU wakeup: Once the daemon was upgraded to emit the 16-byte
0x55 preamble before every command, no ESP32-based bridge MCU is
needed. Direct PN532-to-USB-UART works fine.
TigerTag: bought with spools that carry them pre-printed (some
vendors). Standalone NTAG213 stickers can be written by the
manufacturer but typically you receive them pre-encoded.
OpenPrintTag: NFC-V (ICODE SLIX2) stickers from a generic NFC
supplier. Format is community-defined, so you write your own.
Wiring varies per controller (Pi GPIO header, Klipper MCU SPI, etc.)
and per PN5180 breakout. Refer to your controller's documentation
and your PN5180 reader's documentation for the correct pin
assignments, then plug those GPIO numbers into pn5180_busy_pin and
pn5180_reset_pin in nfc_spoolman.cfg.