A TM1637 controlled 4 digit 7-segment LED display.
A 3D-printed case.
A few pull-up resistors and two transistors working as a current limiter for the LED.
Things I learned:
20lm is sufficient to make me think dawn has begun and feels like the sun is starting to rise.
16-bit PWM is sufficient to make the difference between on and off hard to perceive.
I like an exponential brightness curve.
The lamp works well as an addition to a sound based wake up alarm.
Functionality
The device works as a alarm clock, but instead of making a sound at a determined time, it gradually
increases the brightness of a lamp.
The interface consists of a button and a rotary input. Rotating the knob adjusts the light brightness,
but it can switch to to adjusting other values by pressing the button. The other settings are:
Current time
Alarm on time
A time to turn off the lamp
Day of the week
Set if the alarm is active on all days, weekdays, or never.
When the alarm on time is reach, the lamp gradually turns on during the next 16 minutes following an
exponential curve from PWM level 1 to 65535. This approximately doubles the brightness every minute.
The LED
The LED is a high CRI LED from Yujileds. It is specified with a correlated color temperature of 5600K ±300
and CRI of 95±1. I measured its spectrum and got CIE 1931 xy:
x
0.32742524
y
0.34372004
This is a correlated color temperature of 5762K. The CRI is 95.13. Here is a graph of the measure
spectrum from 380nm to 745nm.