The project uses an ESP32, a GC9A01 240×240 round TFT, Arduino_GFX, and NTP as its time source. The analog face includes HAAG EST. 1971 artwork, advances the second hand in eight steps per second, performs a full redraw every 15 seconds to limit graphics artifacts, and refreshes NTP hourly.
The minute hand can thicken slightly between full redraws.
Install PlatformIO and copy the Wi-Fi configuration example:
cp include/secrets.example.h include/secrets.hEdit the local include/secrets.h with your SSID and password. This file is ignored by Git. The firmware uses the Eastern time-zone POSIX string in src/main.cpp; users outside the Eastern time zone must change the string passed to configTzTime().
Build and upload with:
pio run
pio run -t uploadwatchface.png is converted to the generated RGB565 header src/watchface.h, which remains tracked so a fresh clone builds without regeneration. Install Pillow (for example, sudo apt install python3-pil) and run:
python3 make_watchface_header.pyThe script resizes the source to 240×240. Artwork should preferably be authored at 240×240 for predictable results.
This project is licensed under the GNU General Public License v3.0. See LICENSE.
