Build log
Experiments, failures, discoveries and progress from the lab.
Working notes from real prototypes. The focus is on what was learned — not a polished case study.
The Action Code Nobody Was Checking
The controller honoured one command action and silently ignored the rest — and the interface sent the ignored ones anyway, because nothing rejected them.
Teaching Gears to Belong to Groups
Drag a light onto a group in a browser and have it actually stick — and then read the gear back to prove it did.
Running the Same Stack Three Different Ways
An engineer at a desk, a salesperson in front of a customer, and a test rig that isn't real — three surfaces over one lighting system, and the discipline that keeps them from breaking each other.
Deploying an OPC UA Gateway to the Cloud
Moving a collector and historian off the office network and onto a cloud box, over a private link, to a PLC that doesn't know anyone is listening.
The Hardest Part of Industrial Software Is Being Lie-able
Every operator UI is tempted to smooth over a bad reading. Resisting that temptation is most of the work.
A Demo Three People Can Use Without Training
The engineering control app and the sales demo are two different products over one rig — and they can't share the same access rules.
Rebuilding the Site Around the Work
The site had grown into one long dashboard with everything bolted on. Splitting it into projects, lab, build log and live demos — and what the structure taught me about presenting unreleased work.
One Control Surface, Many Cranes
Turning a single-rig control page into something that drives a fleet — and the identity bug that only appears once there's more than one.
Getting a Web Interface to Talk to Industrial Hardware
Notes from bridging a browser UI to a real industrial controller — what worked, what didn't, and what I'd do differently.
Building Motion Into a Small AI Robot
What I learned adding expressive movement to a desktop robot — from servo calibration to motion libraries to making the robot feel alive instead of mechanical.
Testing Radar for Privacy-First Presence Detection
Early experiments using mmWave radar to sense presence and activity in a room — without cameras or microphones.
Lessons From Running Local LLMs on Consumer Hardware
A practical note on what works, what doesn't, and what's actually useful when you run language models locally on Raspberry Pi, Jetson and modest GPUs.