Reverse Engineered Repairs with Micropython and Claude

There’s a particular sound you never want to hear from a machine with two Tesla V100s bolted into it. A sharp zap, then half a second later the smell of magic smoke. I heard both, lunged for the PC’s main power switch and killed everything. Then I just stood there for a bit, not wanting to look. The carrier board those V100s sit on cost around $500 and isn’t the kind of thing you pick up at the local Jaycar; if I’d cooked it, the whole datacentre-under-the-desk project was dead in the water. That proper stomach-drop moment where you know you’ve done something dumb and you’re about to find out exactly how dumb. ...

July 20, 2026 · 13 min · Andrew Leech

Datacentre under the desk: your own personal AI

The Tesla V100 is a 2017 datacentre card that’s gone pretty cheap on the second-hand market, and it turns out it’s still a genuinely good bang-for-buck way to run LLMs locally in 2026. 16 GB of HBM2 at around 900 GB/s, and that memory bandwidth is the thing that actually matters for token generation. I’ve been assembling a few of these into machines and putting together a setup pack so anyone buying one can get going without fighting the toolchain, so this post is partly the story of getting there and partly a pointer to the kit. ...

June 24, 2026 · 12 min · Andrew Leech

Why MicroPython Is the AI Agent's Embedded Stack

I spent two weeks debugging a MIPI CSI-2 camera bring-up. The sensor is an AR0234CS, the receiver is a Lattice CrossLinkPlus FPGA bridging into an i.MX RT1176, and the symptom was that 85% of CSI-2 packets failed ECC validation in the FPGA’s integrated parser. Diagnosis took cross-referencing 700+ pages of ON-Semi datasheets, dozens of sensor and FPGA configuration permutations, and forensic byte traces from a debug peripheral inside the FPGA itself. ...

May 18, 2026 · 14 min · Andrew Leech

Plumbing image generation into Claude, the scenic route

I’ve got an image generator wired straight into Claude Code now. Tell it “draw me a whiteboard diagram of the queue lifecycle” inline in any session, and 30 seconds later there’s a PNG on disk, an inline preview in chat, and a URL that’s good for an hour. It works in Claude Desktop too via a stdio extension that proxies to the same backend. ...

May 8, 2026 · 20 min · Andrew Leech

Claude Meets MicroPython: Hands-On with the ViperIDE Extension

Claude can write MicroPython just fine. The annoying part is everything after that, getting the code onto a board, connecting to the REPL, figuring out why the pin numbers are wrong, iterating. I wanted Claude to be able to do all of that itself, talk directly to the hardware while I watch. ViperIDE is a browser-based IDE for MicroPython and CircuitPython by Volodymyr Shymanskyy. It connects to devices over USB, Bluetooth, or WiFi and gives you a file manager, editor, and REPL terminal. If you haven’t tried MicroPython before it’s one of the easier ways to get started. ...

April 22, 2026 · 4 min · Andrew Leech

Claude Code From Anywhere: Tailscale, Eternal Terminal, and a Phone

I’m writing this blog post on my Pixel 5, standing in the kitchen. Termux open, connected to my home server through three layers of infrastructure that make the whole thing feel like I’m sitting at my desk. The same Claude Code session I started on my workstation this morning is right here on a 6" screen, and I can type a prompt, put the phone down, come back in an hour, and nothing has dropped. ...

April 20, 2026 · 6 min · Andrew Leech

Triaging 1500 Open Issues: Local LLMs, Sonnet, and a GPU in the Closet

MicroPython has about 1500 open issues across its repos. Some of them have been there for years. A bunch are duplicates of each other, a bunch more are already fixed by PRs that got merged without anyone linking them back, and a pretty solid chunk are just noise (support questions, cross-posts, wrong-repo stuff). Nobody’s going to sit down and manually review 1500 issues against 8000+ PRs looking for connections though. ...

April 17, 2026 · 9 min · Andrew Leech

Sunbeam Torino EM8000: Installing an OPV

I’m quite a fan of my Sunbeam Torino It looks great and has a lot of solid features like dosed shot buttons, pour timer, pressure gauge, PID adjustable temperature control, quick warmup, strong steam and a full size (58mm) group head. When the Torino first launched, it did not review well, on CS the response was generally quite brutal… Sunbeam trying to sell it for AUD$2000 put it up against a lot of big names in the industry and people in the know didn’t seem to think it matched up at all. ...

February 17, 2022 · 13 min · Andrew Leech

Bluetooth SIG PTS Testing without the Laird Connectivity PTS Dongle

At work we needed to certify a BLE device recently. We had the legacy PTS dongle provided by Bluetooth SIG, however I found it only supports testing devices up the BLE 4.2 So we need a new BLE Dongle - they now only support the Laird Connectivity | 451-00004 https://store.bluetooth.com/ This is normally stocked by all the online electronics distributers; element14, digikey, mouser, arrow etc. Unfortunately it was out of stock on all of them, for about 4 months. ...

May 11, 2021 · 5 min · Andrew Leech