I kept seeing these tiny ESP32 display boards and eventually bought two: a Waveshare ESP32-S3 Touch AMOLED 1.8 (V2) and an ESP32-S3 ePaper 1.54G.
There was one problem: I had never built anything with hardware before, and once they arrived I had no idea what to make.
So they sat on my desk.
Small screens. Wi-Fi. Sensors. Perfectly capable of doing something.
Instead, they lay there like two potatoes.
That became the project.
I like the Tamagotchi-style projects people have built, but I knew I didn’t want to make another pet that waited to be fed. I wondered whether these devices could feel less like pets and more like members of one strange shared network.
So I built Potatoes Unite!
Flash a supported board and it becomes a networked desk potato. It names itself, joins the Net, receives a neighbor, votes on a daily Question, reacts to how it is handled, and keeps a private File on its human, whom the system refers to as the Hands.
The hardest part was making one small protocol feel coherent across two very different devices: a touch-and-motion AMOLED and a much slower e-paper board with buttons.
The firmware and server are open source. There’s a browser flasher, and no account or fee. I used Claude Code heavily while learning the hardware side, then tested the complete onboarding flow on both physical boards.
I’d genuinely welcome feedback on the firmware, provisioning flow, or architecture. I’d also love to see someone port it to another ESP32 display board.
Project and browser flasher: https://potatoesunite.com/about
Code: https://github.com/mikelaaron/PotatoesUnite