Overview
Three parts are needed to build the NFC reader/writer companion: a microcontroller, an NFC module, and an external antenna for better Bluetooth range. Total cost is around $30 at the prices shown below.
Seeed Studio XIAO ESP32-C3
Tiny MCU board with Wi-Fi and BLE for IoT scenarios. Includes battery charging, USB-C, and a U.FL connector for an external antenna. This is the brains of the build — it talks to the PN532 over I²C and exposes a Bluetooth LE service to the iPhone app.
HiLetgo PN532 NFC Module V3 Kit
NXP PN532 NFC/RFID reader/writer module supporting I²C, SPI, and HSU (UART) modes — selectable via the onboard DIP switches. Reads and writes Mifare 1K/4K, Ultralight, DesFire, and other ISO/IEC 14443 tags. Ships with a sample white card and a keychain fob for testing.
Tenmory 8 dBi Dual-Band Antenna (2-pack)
2.4 GHz / 5.8 GHz dual-band antenna with a U.FL (MHF1) connector and a 50 cm cable. The XIAO ESP32-C3's built-in PCB antenna works at short range, but plugging in one of these two antennas substantially improves Bluetooth range and reliability when the reader/writer is more than a couple of feet from the iPhone.
Other Items You'll Need
- Four jumper wires (male-to-female, ~10 cm). These jumpers may be supplied with your PN532 if you buy the kit shown above.
- USB-C cable for power and flashing the firmware
- Header pins and a soldering iron (if the boards arrive un-soldered). Of course, direct soldering of the wires is an option. I chose to do this on the microprocessor's castellated connections but elected to use the header pins on the PN532 end. This allowed my enclosure to be a bit more “slim” since the header connections take more “head room.”
- MIFARE Classic 1K NFC tags — the FM11RF08S type used in QIDI Box filament spools (a.co/d/0aPeex1j)