Back
PaperMono: an e-paper shopping list for the fridge, synced from a phone
SiTech AI Team2 წთ. საკითხავი

PaperMono: an e-paper shopping list for the fridge, synced from a phone

Developer Seamus Cawley has published PaperMono Shopping List, firmware that turns the M5Stack PaperMono e-paper device into a household shopping list kept in sync with a FastAPI server and a phone web page.

An independent developer has published the source code for a shopping list that hangs on a fridge door as an e-paper display and stays in sync with a web page on a phone. The project, PaperMono Shopping List, targets the M5Stack PaperMono, an ESP32-S3 device with a 3.97-inch 480x800 e-paper touchscreen.

Firmware sized for a single device

The firmware is a PlatformIO project of about 2,400 lines of C++. Partial e-paper refreshes run without the usual black flash while tapping, scrolling or typing. A full refresh is forced after every ten partial updates, to hold ghosting down and protect the panel.

Tap, swipe and the side buttons all work, and an on-screen keyboard redraws only the parts that change as you type. Power handling covers power-button shutdown, a deep-sleep fallback when USB power stops the power IC switching off, and automatic shutdown at a safe battery voltage.

The PaperMono e-paper device on a fridge door showing a shopping list

Hourly Wi-Fi and edits queued on flash

Radio time is kept short: Wi-Fi is on only while syncing. Syncing happens every hour, sooner if the screen is tapped and the last sync is more than five minutes stale, and immediately after an edit. Everything else works offline, and changes are queued in flash until the next sync.

FastAPI server and optional sorting

The server is written in Python with FastAPI and SQLite and serves both an HTTP API and the phone interface. It remembers which aisle every item belongs to. The first time it sees a new item name, it can send only that name to the Claude Code CLI to file it under an aisle. If the item is moved by hand afterwards, the correction sticks. Deployment with systemd and Docker is documented, and the classifier can be turned off.

A personal project with the limits stated

The author, Seamus Cawley, calls it a personal project running on one device at home, not a product. Wi-Fi credentials are compiled into the firmware with no on-device setup. The server has no authentication and should stay on a local network or behind an authenticating reverse proxy, and only the PaperMono C153 has been tested. The board support and the display and touch drivers are adapted from MonoMesh, another firmware for the same hardware, and the code is released under GPLv3. Builders should back up the device's flash first, because it holds that unit's factory calibration data.

SSiTech

SiTech — AI-powered web development

We build fast, modern websites and bring AI into real business workflows. Have a project or a question? We'd love to help.