borisr.dev

Hardware

ESP32 desk gadget

Multi-screen desk display: NTP clock, DHT11 temp and humidity, outdoor weather.

GitHub ↗

Placeholder — GitHub social preview. Real asset: photo of the physical gadget (the in-body photos below are real).
The desk gadget's OLED display

A multi-screen desktop display built around an ESP32-C3 SuperMini and a 0.96-inch SSD1306 OLED. Four screens, stepped through with one push button: Clock (time synced over WiFi via NTP), Indoor (temperature and humidity from a DHT11 sensor), Outdoor weather, and a Summary screen with brightness, WiFi status and uptime. A potentiometer controls screen brightness; an optional rotary encoder can replace the button, and an optional PIR sensor blanks the display when the room is quiet.

Two firmwares run on the same hardware and wiring. ESPHome is the default: the gadget joins Home Assistant, indoor readings and uptime appear there, outdoor weather comes from a Home Assistant weather entity, and updates go over the air after the first USB flash. The standalone Arduino sketch is the backup: it fetches outdoor weather itself from Open-Meteo — free, no API key, no account — and needs no Home Assistant at all.

Breadboard layout for the desk gadget

CAD files

The enclosure CAD files aren’t in the repo yet — they are coming. The build docs (parts, wiring, setup, how it works) live in the repo meanwhile.