Skip to content

leprasmurf/arduino_sunrise

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sunrise alarm clock

Hardware

Connections

  • Button OK <-> D2 Arduino
  • Button Left <-> D7 Arduino
  • Button Right <-> D3 Arduino
  • LED Data <-> D6 Arduino
  • RTC SDA <-> A4 Arduino
  • RTC SCL <-> A5 Arduino
  • Screen D/C <-> D8 Arduino
  • Screen RST <-> D9 Arduino
  • Screen CS <-> D10 Arduino
  • Screen MOSI <-> D11 Arduino
  • Screen SCK <-> D13 Arduino
  • Screen SD CS <-> D4 Arduino
  • Screen SD MISO <-> D12 Arduino

External Libraries

Arduino Libraries

Operation

One hour prior to the target the LED strip will illuminate (full intensity for sunset, minimal for sunrise). Over the next hour the brightness is inverted on a linear scale. The RTC has a battery backup and can maintain the date/time displayed. The target time for sunrise and sunset is stored in the Arduino's EEPROM.

Each of the three momentary button has 2x available actions: short and long press. Long pressing the middle (OK) button toggles setup mode. While in setup mode (indicated by the flashing LED strip) each value can be adjusted. The currently selected value is highlighted and can be adjusted by the left or right buttons. Short pressing left or right will adjust the selected value down or up respectively, whereas long pressing left or right will change which setting is currently selected. Short press OK to advance to the next setting as well.

Roadmap

  • Finish cleaning code (move support functions into header file)
  • Add Sugru over hot-snot holding screen in place (create a smooth bevel).
  • Add Sugru over the momentary switches.
  • Enhance sunrise and sunset routines to transition between two colors.
  • Add buzzer for simple notifications.
  • Add support for the SD Card reader on the screen; screensaver with timestamp

About

Sunrise alarm clock with an Arduino

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages