* The esp8266 connects once a day to Internet to get time from NTP server
* To set WiFi parameters and advanced configuration WiFiManager library in SoftAP mode is used
* LDR is used to adjust clock display brightness according to ambient light
* Other alarm options are cycling LEDs, pulsing LEDs, full brightness of clock display, blinking clock display
* alarm on weekend is optional and has a separate alarm time setting
* if you like fall asleep with light, fade, fireplace and candles light effects are available
* the LEDs can be turned on and the intensity can be set by rotating the encoder
* the dim lighting and the fireplace or candles effect are nice not only for sleep




* the central LEDs are 3 yellow and one red. left and right block use 3 yellow LEDs each
* the fireplace effect has center LEDs slowly random pulsing in smaller PWM range and the left and right LEDs fast random pulsing at full PWM range. the 'fire' fades over falling asleep time.
* the candles effect uses slow random pulsing of left and right LEDs block at small PWM range
EXPANDED TECHNICAL DETAILS
Circadian Lighting Interaction
The Sunrise Clock is a wellness project designed to wake the user up naturally using a simulated sunrise transition.
- RGB Incremental Fading: Using a high-power RGB LED or NeoPixel strip, the Arduino starts a 30-minute countdown before the alarm time. It gently fades from Deep Red to Warm Orange to bright Daylight White (6500K) using 8-bit PWM resolution.
- Real-Time Clock (RTC) Sync: Relies on a DS3231 RTC module to maintain time with high accuracy (±2ppm), ensuring the sunrise sequence starts precisely on time every morning.
Sensory Experience
- Gentle Acoustic Backup: Includes a piezo buzzer or MP3 player module that gradually increases in volume at the end of the light sequence, providing a peaceful and non-jarring wake-up experience.