A field guide · ESP32-S3 + MicroPython + one cloud API

Build a palm-sized dashboard
that watches your AI spend.

You already know Python. This guide adds the missing half: a $25 Wi-Fi microcontroller with a built-in color screen, the firmware that runs real Python on it, and a complete worked app — an always-on desk gadget that shows your OpenRouter API usage in real time.

The Adafruit ESP32-S3 Reverse TFT Feather: a small black circuit board with a color display and three buttons labeled D0, D1 and D2
The hardware. Adafruit's ESP32-S3 Reverse TFT Feather — a dual-core Wi-Fi chip, a 240×135 color display, and three buttons on a board smaller than a USB stick box.
warp Today $0.35 Week $1.20 Month $4.50 Used $0.35 $20.00 @ 18:51 1/3
D0D1D2

The software. Plug it in and it joins Wi-Fi, calls OpenRouter over HTTPS, and paints today / week / month spend plus a green→orange→red budget bar — refreshing itself every minute, forever.

The route

Four short chapters

Each one is crisp on purpose — enough to be dangerous, with links out to the official docs when you want the deep end.

Pack list

What you'll need

Hardware

The board

Adafruit ESP32-S3 Reverse TFT Feather (product #5691, ~$25). Display, buttons and Wi-Fi are all built in — no soldering, no wiring. The USB-C port is the only connection this project uses.

Hardware

A USB-C data cable

Many USB-C cables are charge-only. You need one that carries data — it's the #1 “my board doesn't show up” cause.

Network

2.4 GHz Wi-Fi

The ESP32-S3 has no 5 GHz radio. Most routers broadcast both; you just need the 2.4 GHz network's name and password.

Cloud

An OpenRouter key

A normal (read-only is fine) inference API key from openrouter.ai/settings/keys. The dash only ever reads usage.

Laptop

uv

uv installs the two command-line tools you'll use (esptool, mpremote) and the host-side test toolchain.

You

Working Python

No electronics experience required. If you can read a while loop and a dict, you're qualified.