Author here. One thing that didn't make it into the post: there are no hand-drawn traces on this board. I find mouse-driven PCB layout maddening, so the whole card is a Python script driving KiCad's API—antenna coil, lettering, everything. Retuning the antenna meant changing one number and re-running the script, which as a hardware novice was the difference between finishing this and giving up.
The chip is NXP's NTAG I2C Plus. I picked it for the energy-harvest pin (that's what lights the LED) and only realized later that it ships without NDEF formatting—which is why every consumer NFC app refused to touch it. Sending it raw write commands through Core NFC turned out to be much less scary than I expected: the part that matters is about 60 lines of Swift.
I still can't get over JLCPCB assembling ten of these for about $75.
gnabgib•31m ago
That made the post? Everything in your comment is in the post, AI summaries aren't very popular.
> I designed the whole board as code, which I’d recommend to anyone who, like me, finds dragging traces around with a mouse maddening. KiCad—the free PCB tool—has a Python API, so the entire card is generated by a script.
Neywiny•51m ago
We just did this https://news.ycombinator.com/item?id=49478426 this is starting to become the risc v of fpga resumes. It's certainly work and making anything that exists and works even somewhat is commendable but it's getting played out
thekevintang•2d ago
The chip is NXP's NTAG I2C Plus. I picked it for the energy-harvest pin (that's what lights the LED) and only realized later that it ships without NDEF formatting—which is why every consumer NFC app refused to touch it. Sending it raw write commands through Core NFC turned out to be much less scary than I expected: the part that matters is about 60 lines of Swift.
I still can't get over JLCPCB assembling ten of these for about $75.
gnabgib•31m ago
> I designed the whole board as code, which I’d recommend to anyone who, like me, finds dragging traces around with a mouse maddening. KiCad—the free PCB tool—has a Python API, so the entire card is generated by a script.