What Limits Local AI Speed on an Arduino, a Raspberry Pi and a Mac Mini

I wanted to know what actually limits how fast a small language model runs, and I wanted numbers I could trust. The usual answer is two rules: memory capacity decides which model fits, and memory bandwidth decides how fast it writes. I spent two weeks testing how far that goes on the three devices I had: an Arduino UNO Q, a Raspberry Pi 5 and a Mac mini with an M4, each writing one answer at a time (single-stream decoding; batching has its own section). Claude Code wrote the harness and ran most of the measurements. I’m a systems electrical engineer, not an ML person, so I wanted a method that rests on real data. ...

October 9, 2026 · 27 min · Derek Welty

TRMNL X, Part 2: Weather, Bike, Muni and Trash Duty

In the first post the server was running and the display was still in the mail. It showed up in July and did nothing. The screen sat on a static “install dock and USB-C” image, it didn’t react to power, and no TRMNL Wi-Fi network appeared. I tried the dock in different positions, a few USB-C cables, a wall adapter and a laptop port, then wrote to TRMNL support asking for a replacement. ...

October 6, 2026 · 10 min · Derek Welty

Game Night: Ogle on My TV, With Our Phones as Controllers

Ogle runs on my TV now: the board on the big screen, everyone tracing words on their own phone, and a small server on the Mac mini keeping score. That’s how Netflix runs its party games, and it’s how I wanted to play Ogle with friends in the same room. Ogle already has our dictionary and our rules, and Dial already puts my own app on the TV, so game night was the piece in between: our game, on our TV, scored by our own backend. ...

October 4, 2026 · 9 min · Derek Welty

Ogle: A Daily Boggle for My Friends, With House Rules

On a trip to Tahoe my friends and I got hooked on Netflix’s Boggle. The best part was the end of each round, when it reveals the words and their points one at a time. The part I’d change was the dictionary: Netflix leaves out slang and rude words. So I had Claude Code build our own. The point was to set our own rules and dictionary, and to grow it into a private league for the five of us instead of making a clone. My friends ogled over that game in Tahoe, so ours is called Ogle. It’s live at play.derek.engineer/ogle, and it went from first commit to live between Sunday night and Wednesday morning. ...

September 30, 2026 · 6 min · Derek Welty

How This Blog Is Built and Published

This is how derek.engineer is wired: static Hugo site, PaperMod theme, Netlify deploys, Squarespace DNS, and a local writing workflow that keeps publishing from becoming its own project. The stack Hugo — static site generator, fast builds, zero frontend dependencies PaperMod — clean Hugo theme, installed as a git submodule Netlify — deploys on every push to main, custom domain + SSL handled automatically GitHub — source of truth, all posts are Markdown files in content/posts/ The flow is simple: ...

June 12, 2026 · 4 min · Derek Welty