BUILD YOUR OWN E-PAPER SMARTWATCH FOR 60 DOLLARS — THE BATTERY LASTS A WEEK
A smartwatch that arrives as loose parts, runs Arduino code, and sips so little power it lasts a week.
by SQFMI
Open-hardwareDisplays
- difficulty
- ●●●○○
- time
- an evening
- license
- MIT
- repo
- repo ACTIVE2,771 stars
●●●○○ · an evening · MIT · 2,771 stars · repo ACTIVE
WHAT YOU’LL NEED
- 3D printer + filament — printable parts — files are in the repo
- Electronic parts — full list with part numbers in the repo BOM
- Dev board / microcontroller — runs the project firmware
Partner
COMPAREE VERDICT
Watchy is a working smartwatch you assemble from scratch: ESP32 with Wi-Fi and Bluetooth, a 200×200 e-paper display that stays on without draining the battery, accelerometer, vibration motor, real-time clock, and a 3D-printed case. The open hardware board is solid, the Arduino library wraps everything cleanly, and the community has built face after face — weather, fitness, retro, minimal. The catch is that every face is a separate Arduino sketch you compile and flash yourself. There is no app store, no over-the-air updates, no graphical face editor. If you want notifications, you pair it over Bluetooth and wait for the screen to refresh — slowly, because e-paper is slow. Battery life is genuinely a week if you leave the face static and check notifications sparingly; heavy Bluetooth use or animated faces cut that to three or four days. The single thing most likely to go wrong is underestimating how much time you will spend in Arduino IDE once the hardware is built — tweaking fonts, fixing time zones, and waiting for the screen to catch up. If you want a watch you can program in C++ and never wonder what closed firmware is doing, this is it. If you want something that just works out of the box, buy a finished smartwatch.
IN THE REPO
NOT IN THE REPO
- —MIT-licensed hardware and software; commercial use allowed.
- —PCB Gerbers, case STLs, and Arduino library all in the repository.
- —Battery life claims are real but assume a static face — animation and Bluetooth wake-ups shorten it considerably.
- —The repo includes a full BOM with Mouser part numbers.
- —Dozens of community watch faces exist, but you have to compile and flash each one yourself.
- —No prebuilt firmware images — every face requires Arduino IDE and a USB cable.
Can I build this?
Build at your own risk. Projects involve tools, electronics and sometimes mains voltage — follow the creator’s safety notes.
Partner · KickstarterHeyGears G1: 10M+ colors and transparent parts in one print, plus UV printing on flat objects. Figures, parts and labels — no painting.
Videos
This DIY Open Source E-Paper Smart Watch Is The Coolest! Watchy ...
No official build video from SQFMI. Community walkthroughs exist but vary in quality and completeness.
Gallery
Start here
Navigation into the creator’s own docs — we don’t rewrite the guide, we route you to the source.
- 1.Order the Watchy kit from SQFMI or collect the components from the BOM in the repo. (The kit comes with everything except the case; the repo links to Mouser part numbers if you want to source your own.)
- 2.Print the case STLs from the hardware folder. (PLA works; PETG gives you a little more flex in the strap clips.)
- 3.Install the Watchy Arduino library and pick a watch face from the examples folder. (Each face is a separate sketch. The repo includes a default face; the community has made dozens more.)
- 4.Compile and flash the face over USB, then assemble the watch into the printed case.(The Arduino library handles the RTC, e-paper refresh, and Bluetooth pairing. You just set your time zone and upload.)
Resources
Documentation, files and community threads for this build — we link straight to the original sources and never rehost the creator’s files.
Partner · KickstarterBluHub reads and burns Blu-ray/DVD/CD, adds USB-C, USB-A, SD/TF and 10 Gbps data — plug and play, grand-piano finish.
KNOWN ISSUES
- The battery life claims assume a static face and infrequent Bluetooth wake-ups. Animated faces or constant notifications will cut it to three days.
- Every watch face is a separate Arduino sketch you have to compile and flash. There is no graphical editor and no over-the-air updates.
- E-paper refreshes slowly — a full screen update takes a second. If you expect instant notification pop-ups, you will be disappointed.
- The case design assumes you are printing with supports on; if your printer struggles with overhangs, the strap clips will sag.
- Time zone and NTP settings are hard-coded in each sketch. If you travel or change faces often, you will be editing and reflashing regularly.
- The Arduino library is well-documented, but if you have never used PlatformIO or the ESP32 board manager, expect an hour of setup before you compile anything.
Can I use this with an iPhone?
Yes, but only for notifications. You cannot reply to messages or control music from the watch — iOS does not expose those APIs to third-party Bluetooth devices.
How do I add a new watch face?
Find a face in the examples folder or on GitHub, open it in Arduino IDE, set your Wi-Fi credentials and time zone, compile, and flash over USB. Every face is a separate firmware image.
Can I run MicroPython or CircuitPython instead of Arduino?
Not officially. The Watchy library is Arduino-only. You could port it, but you would be on your own.
What happens if the battery dies completely?
The RTC has a backup supercap that holds the time for a day or two. After that, you reconnect to Wi-Fi and the watch pulls NTP time automatically.
Is the display always on?
Yes. E-paper holds an image without power, so the watch face stays visible even when the ESP32 is asleep. That is why the battery lasts a week.
Community builds
No community builds yet — be the first, we feature the best ones.
Discussion1
FROM THE COMPAREE TEAM
The e-paper display holds an image without power, so the watch face stays visible for a week on a charge — but every refresh takes a full second. Would that latency bother you, or is a week of battery worth the wait?
SQFMI
SQFMI is a small hardware studio that builds open-source e-paper devices. Watchy started as an experiment in how much smartwatch you could fit into an ESP32 module and a 1.54-inch display, and the answer turned out to be 'enough that people keep buying them'. The hardware has been stable since version 2.0.
DISCLAIMER
- Comparee is not the author of the projects featured here. All rights to each project belong to its creator — every page links to the original source, and we never host creators’ files.
- Information is provided without warranty and may become outdated as projects evolve. Prices are indicative bands only — always check the creator’s parts list for current costs.
- Building and operating any project is at your own responsibility. Protective equipment, safe workshop practice and compliance with local regulations are the builder’s responsibility.

CompareeTEAM23d ago
Practical notes from our verification: the repository includes hardware files, firmware library, and example watch faces, but no prebuilt binaries — you flash every face as a separate Arduino sketch. The $60 kit from SQFMI includes the PCB, battery, and strap; if you buy the bare board for $50 you will need to source and solder the battery connector yourself. The case STLs print cleanly in PLA, but the strap clips benefit from PETG if your printer can handle it. Battery life really is a week with a static face and light Bluetooth use; animated faces or constant notifications cut that to three or four days. The Instagram reel is community-posted; there is no official SQFMI video channel.