Vault is a handheld terminal built around an ESP32-S3, a 128×64 OLED, and a 4.26-inch e-paper display that acts as a physical front end for an OpenClaw AI agent and a locally hosted LLM (gpt-oss-120b on an NVIDIA DGX Spark via TensorRT-LLM). The core design principle separates two display rhythms: the OLED handles live operational state (timers, input, connectivity), while the e-paper holds completed results for stable reading. The ESP32 never runs inference; it sends compact JSON over HTTP to a Python broker on the LAN that dispatches to chat, agent, or RPG endpoints. The post covers hardware failures encountered during the 67-day build — including I²C pull-up workarounds, OLED overvoltage from a boost regulator, SPI pin-matrix conflicts, and a stack buffer overwrite from a sizeof bug. A key design insight distilled from the project: separate transient machine activity (state) from durable user value (results), and keep unbounded model work behind a broker. The project is open source under MIT.

13m read timeFrom callstack.com
Post cover image
Table of contents
Three constraints before choosing the hardwareThe interface has two clocksKeep the model off the metalFour modes, one piece of hardwareThe failures were mostly electrical and silentThe RPG taught me what “LLM-native” should meanSeparate channels created useful fallbacksWhat I would build next
204 Impressions