FOUNDER'S JOURNAL2026-08-09· 5 min read

Founder's Journal || From Software to Hardware

ForgeCard v0 sounded easy: an NFC module, a small computer, a screen. Building it showed me what software had been hiding — in hardware, mistakes cost something, and every broken link in the chain reports back the same rows of dashes.

Hello, I'm Stickman Charles.

For the past while I've been busy with the most important project of my summer: ForgeCard v0.

It doesn't sound difficult: connect an NFC reader module to a small computer and a screen, so that tapping a card displays the corresponding EchoID tier.

I took on this project mainly to see what the hardware world is actually like. Before this, I had built a fair number of projects with AI coding assistants, and some of them found real users and real feedback. But I've been a hardware enthusiast since I was small — watching videos about upgrading rigs and studying specs was my favorite thing to do. And I've always felt that an EchoID without a physical card is incomplete. So I drew up an eight-week plan, bought every part on the list, and looked forward to getting started.

It was only when I reached the first step — assembling the Raspberry Pi, the small computer — that I realized this wasn't as simple as I'd imagined.

Cost and No Cost

In software, testing and building cost almost nothing. As long as the environment is configured properly, a mistake doesn't cause much trouble. At worst you roll back with git; failing that, you delete the whole test environment.

In hardware, everything requires twice the care. Touch a faucet before assembling, or static will damage the board. Don't press too hard when attaching the heatsink, or you'll crush the CPU. Don't work on the pins while the power is on, or you'll get shocked. Once these parts are damaged, the mild outcome is a black screen and the severe one is a dead board. Everyone understands these rules, but in actual practice — especially when you repeat the same operations day after day — it's easy to forget one or two of them.

Once the Pi was assembled, the real challenge was still ahead.

Friction and No Friction

To attach the NFC module to the Pi, the first step is to flip a tiny switch on the module labeled I2C. The switch is extremely small. Only once it's on can you run wires to the row of pins on the Pi. But the module itself has only four holes, so to wire it up you have to mount a spider-shaped adapter onto it. That adapter is loose: even with the wires connected correctly, the moment it shifts, the terminal reports that it can't read the external device. And wiring it means opening the case, which means the cooling fan on the lid no longer blows on the CPU; it overheats, the connection drops, and you start over.

When I was assembling mine, the I2C switch had no marking for which side was on and which was off, so I simply tried every combination. I went through all of them and still couldn't read the device. Then I suspected the adapter was loose, or the wires had poor contact, so I replaced them all — and then the Pi overheated and the connection dropped outright.

Nothing to do but try again the next day. Same result: the same rows of dashes.

While I was still puzzling over it, my eyes drifted to the two wires from the cooler. It turned out they had been occupying the pins that belonged to the NFC module the whole time, and I hadn't noticed.

Because no matter which link in the chain fails, what comes back is the same rows of dashes.

The same thing happened with the screen: my mouse's 2.4G receiver sat right beside the screen's USB cable, the two interfered with each other, and the mouse kept failing to respond.

In software, the vast majority of errors are specific and frictionless. A syntax error is a syntax error. An indentation error is an indentation error. If a library needs updating, you get a message about it.

In hardware, you have to build the habit of working through problems one step at a time, and never skip a step because it seems obvious. Otherwise you're likely to miss the real cause.

Feedback

What remained after that was mostly writing code by hand and connecting a screen.

The moment the whole project came together and the card scanned successfully, the rush of dopamine was nothing like writing one more piece of software after having already written many.

AI coding has made software development simple and efficient, but it still can't reach into the physical world. In domains where there are no hints, or only vague ones, the kind of experience that looks somewhat old-fashioned is what actually proves useful.

Keep thinking, and take care.


Published August 9, 2026 · EchoForge · FOUNDER'S JOURNAL