Battery-free is not the same thing as unpowered. A card you can tap against a phone and watch light up, with no cell to die and no port to charge, runs on energy the phone's own NFC field is already radiating. Wilson Harper built exactly that into a PCB business card, and the detail worth stealing is that it runs a real microcontroller off harvested power, not just a static tag.
What the card does
Tap it to a phone and 21 LEDs come alive. Harper started the project to learn KiCad and ended up with a credit-card-thin board carrying an NXP NTAG I2C Plus alongside a 3mm x 3mm ATtiny816. The NTAG chip is the clever half: on top of serving the record your phone reads, it routes surplus harvested DC out to external hardware, which is what keeps the ATtiny running. The ATtiny816 got picked for its QFN package and its 17 GPIOs, and thirty RoHS-compliant boards came back from JLCPCB.
The antenna is the hard part
A rectangular spiral fills the entire card, sized with STMicro's inductance calculator to land near 2.75uH so it resonates at 13.56MHz. No existing KiCad plug-in could draw that shape, so the repo ships a Python script that generates it. Two routing decisions keep the thing alive: no closed loop, and no ground plane, because eddy currents would otherwise swallow the field before the chip sees it. Six GPIO pins drive 20 Charlieplexed LEDs plus one indicator, and the firmware is bare-metal C clocked down to 1MHz to keep the flicker invisible. Every trace is mirrored onto the back silkscreen next to a block diagram and the BOM.
Build it yourself
Three exposed pads sit on the back at breadboard spacing, so programming happens over UPDI with a pogo-pin clip rather than a soldered header. A TVS diode guards the MCU against the static your wallet builds up. One gotcha is worth the price of admission: a Pico-based UPDI programmer produced nothing at all on the scope, and an Adafruit UPDI Friend worked on the first try, so budget for the known-good tool before you spend an evening probing. The tag itself was written with NXP TagWriter. A second revision with different LED colors and a button or two for arcade-style games is on the table.
The full writeup, the antenna generator script, and the BOM are at wilsonharper.net. If you want to try the idea on a breadboard first, an NTAG I2C Plus breakout and any UPDI-programmable ATtiny will get you to the energy-harvesting part without waiting on a board order.
Originally published on blog.circuit.rocks.



