• Models
  • Contests
  • Slicer
  • Login
  • Start Here
    thingiverse-iconprintables-iconcults3d-iconmakerworld-iconmyminifactory-icon

    3D GO

    3D ModelsContestsCollectionsSaved ModelsOn a mobile device?

3D GO

Privacy Policy
Retro Smart Digital E-ink Alarm Clock 3D Printer File Image 1
Retro Smart Digital E-ink Alarm Clock 3D Printer File Image 2
Retro Smart Digital E-ink Alarm Clock 3D Printer File Image 3
Retro Smart Digital E-ink Alarm Clock 3D Printer File Image 4
Retro Smart Digital E-ink Alarm Clock 3D Printer File Image 5
Retro Smart Digital E-ink Alarm Clock 3D Printer File Image 6
Retro Smart Digital E-ink Alarm Clock 3D Printer File Image 7
Retro Smart Digital E-ink Alarm Clock 3D Printer File Image 8
Retro Smart Digital E-ink Alarm Clock 3D Printer File Thumbnail 1
Retro Smart Digital E-ink Alarm Clock 3D Printer File Thumbnail 2
Retro Smart Digital E-ink Alarm Clock 3D Printer File Thumbnail 3
Retro Smart Digital E-ink Alarm Clock 3D Printer File Thumbnail 4
Retro Smart Digital E-ink Alarm Clock 3D Printer File Thumbnail 5
Retro Smart Digital E-ink Alarm Clock 3D Printer File Thumbnail 6
Retro Smart Digital E-ink Alarm Clock 3D Printer File Thumbnail 7
Retro Smart Digital E-ink Alarm Clock 3D Printer File Thumbnail 8

Retro Smart Digital E-ink Alarm Clock

insignificant design avatarinsignificant design

July 17, 2026

makerworld-icon
DescriptionCommentsTags

Description

Retro Desk Clock

A retro-inspired desk clock. The clock combines a 3.7" e-paper display, addressable RGB LED strip, WiFi-synced time, live weather forecast, and a fully functional alarm system, all driven by an ESP32 microcontroller.

  • E-paper display, 3.7" black and white WeAct Studio panel (GDEY037T03). Hour/minute layout on the left, 4-day weather forecast on the right.
  • NTP time sync, connects to WiFi on startup and syncs time automatically via pool.ntp.org. No RTC module needed
  • 4-day weather forecast, fetched from the Open-Meteo API. Shows day, max temperature, and weather condition. Refreshes every hour
  • WS2812B LED strip, 10 addressable LEDs. Toggle on/off with the light button
  • Alarm system, set alarm hour via potentiometer dial (fully left = off, right = hours 1–12). Toggle AM/PM with the snooze button while the alarm popup is visible. Small indicator LED lights up when alarm is active
  • Snooze/dismiss button, press once to dismiss the alarm, or press during alarm setup to toggle AM/PM

Hardware:

ComponentNotes
ESP32-WROOM-32 dev board (38-pin) (Mine: https://www.aliexpress.com/item/1005006490116433.html)Get one with a screw terminal breakout board; makes wiring much easier
WeAct Studio 3.7" e-paper B&W (GDEY037T03)
(https://www.aliexpress.com/item/1005009712001279.html)
Specifically the black/white version
WS2812B LED strip, 10 LEDsAny density works
2x 12x12mm tactile buttons
(https://www.aliexpress.com/item/1005003727192340.html)
 
Passive piezo buzzer (12mm)
(https://www.aliexpress.com/item/1005010400627387.html)
Must be passive, not active
Standard 5mm LED + 220Ω resistorFor alarm indicator
B20K potentiometer
(https://www.aliexpress.com/item/1005005723920782.html)
For alarm dial
USB-C 5V power supply 
Jumper wires 

Feel free to use any other components; those are just the ones I used.

Wiring

E-paper Display

Display PinESP32 Pin
VCC3V3
GNDGND
DIND23
CLKD18
CSD5
DCD26
RST (RES)D27
BUSYD4

LED Strip

PinESP32
VCCVIN (5V)
GNDGND
DIND13

Other Components

ComponentESP32 PinNotes
Light buttonD14 + GNDDiagonal pins
Snooze buttonD33 + GNDDiagonal pins
Buzzer +D25Long leg
Buzzer −GNDShort leg
Alarm LED +D32Via 220Ω resistor
Alarm LED −GND 
Pot left pinGND 
Pot middle pinD34Analog input
Pot right pin3V3 

Software Setup

Code: https://github.com/TaminoDesign/clock01

Libraries (install via Arduino IDE Library Manager)

  • GxEPD2 by ZinggJM
  • Adafruit GFX (installed automatically as GxEPD2 dependency)
  • FastLED by FastLED
  • ArduinoJson by Benoit Blanchon

Board Setup

  1. Add to Arduino IDE > Preferences > Additional Board Manager URLs: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
  2. Install esp32 by Espressif Systems via Tools > Boards Manager
  3. Select ESP32 Dev Module
  4. Set Partition Scheme to Huge APP (3MB No OTA/1MB SPIFFS)

Before Uploading

Edit the top of index.ino:

 

cpp

const char* ssid     = "YOUR_WIFI_NAME"; const char* password = "YOUR_WIFI_PASSWORD";

Update coordinates in weatherURL for your location:

 

cpp

“?latitude=-36.4&longitude=174.7”

 

 

Let me know if you have any questions

Boost Me

License:

Standard Digital File License

Related Models

Digital Sundial preview image

Digital Sundial

Mojoptix profile image

Mojoptix

67,480

Mechanical wall clock preview image

Mechanical wall clock

Harald Andersson profile image

Harald Andersson

6,981

Rolex GMT-Master II – Wall Clock preview image

Rolex GMT-Master II – Wall Clock

Sparco profile image

Sparco

1,700

The 3D Printed Marble Machine #3 preview image

The 3D Printed Marble Machine #3

Tulio profile image

Tulio

42,889

Improved Wandering Hour Clock preview image

Improved Wandering Hour Clock

David Kingsman profile image

David Kingsman

6,390

fully functional mechanical clock! preview image

fully functional mechanical clock!

Novera profile image

Novera

4,597

3D Printable Jet Engine preview image

3D Printable Jet Engine

Catiav5ftw profile image

Catiav5ftw

39,811

Death Star Clock preview image

Death Star Clock

Nils Kal profile image

Nils Kal

1,841