- Wemos D1 Mini microcontroller (ESP8266)
- PCF8574 I2C expander module
- DS3231 RTC module + LIR2032 rechargable 3.6V battery
- 2× SG90 servo motors
- 2× yellow led filament strips 38mm length
- 2× 100 Ω resistors
- 4-position (rotary) switch
- Push button
- Active buzzer (12×9.5mm)
- Cables, connectors
See the details in the wiring/steampunk-clock.fzz file.
Install the Arduino Maker Workshop Visual Studio Code extension.
Install the following libraries:
- Adafruit BusIO by Adafruit
- Adafruit PCF8574 by Adafruit
- RTCLib by Adafruit
- WiFiManager by tzapu
- OneButton by Matthias Hertel
The exact versions of these libraries used to create this code are visible in the sketch.yaml file.
Check the settings in the config.h file.
IMPORTANT FOR SECURITY! Make sure to set a custom password in the WIFI_AP_PASSWORD field!
When the RTC module reports power loss the clock connects to a Network Time Protocol (NTP) server over the internet to get the current time.
The first time the module will create a temporary WiFi access point with the SSID and password defined in the WIFI_AP_SSID and WIFI_AP_PASSWORD values in the config.h file.
Steps to connect to your local wireless network:
- Connect to this temporary access point.
- Navigate to http://192.168.4.1 in your browser.
- Select your network and enter your WiFi password.
Thanks to Werner Rothschopf for his NTP articles:
This project is created and maintained by György Balássy.
