Applicatio for Multi Function Shield on Mega2560 - Alarm Chrono Clock

Hi to all, I improved the _24_hr_Alarm_Clock.ino made by hackatronics. I put a blinking dot betwen hours and minutes; I add a down button (button n° 2) to admit go up (button 3) and down (button 2) during alarm and clock's set; just press button 3 to see seconds and hundredths of a second; long press button 3 set up the alarm with two beep; short press button 1 set the hour's in point with three beep. Obviously all the old functions are working.

The source is like attachment.
Enjoy!
KMZ

24_hr_dot_blink_Alarm_Clock_set_up_down_beep_second_chrono_time.ino (9.23 KB)

Hi to all, I improved again my Alarm Chrono Clock with a high precision RTC DS3231(TCXO based).
Download the source and enjoy!
Please leave a comment about!
Best regards,
KMZ

24_hr_dot_blink_Alarm_RTC_Clock_set_up_down_beep_second_chrono_.ino (11.5 KB)

Okay boys :slight_smile: ,
I (hope) ultimated the improvement about the original hackatronics's clock!
After the addiction of the DS3231 RTC to improve the time's accuracy, I improved the program, so now it cans automaticaly spare from RTC to clockISR in case of RTC's fault, and viceversa. Every malfunction will be displayed and sounded.
Please tell me if you agree my works!
Best regards,
KMZ

24_hr_dot_blink_Alarm_RTC_auto_spare_clockISR_set_up_down_beep_.ino (14.3 KB)

Never ending! Last modify: I added the date function!
ow by short press of button 2 (long press to see/adjust alarm) you can see the day of week and the manth date, like "MER 7.10" for today, mercoledì 7 Ottobre. In the photo you can see "MER" displayed. Try!
Enjoy and comment!
Best regards,
KMZ

24h_RTC-ISR_data_chrono_alarm_clock.ino (16.5 KB)

Errata corrige!

USE THIS SOURCE - the last contains a little bug (alarm doesn't ring); this is the right version full options and 100% working.
I remember my modity from original hackatronics clock:

  • dot blinking betwen hh and mm;
  • fast setting time with up/down button (button 2 and 3);
  • beep every hour in point by short press of button 1 (beep confirm and LED 4 on);
  • show seconds and hundredths of second by short press of button 3;
  • alarm on/off by long press of button 3 (beep confirm and LED 1 on);
  • show date: day of week, then day and month (or "none" in free-running) and alarm sound off by short press of button 2;
  • clock time locked on RTC reported by LED 2;
  • clock time free-running by clockISR reported by LED 3;
  • RTC fail and RTC battery low reported by display;
  • lamp test at power-on;
  • automatic spare clock source from RTC to clockISR and viceversa;
  • ...what else? Enjoy and... stay tuned!!!

Best regards,

KMZ

24h_RTC-ISR_data_chrono_alarm_clock.ino (16.7 KB)

Hi boys!
Last (I hope) improvement: the alarm time be stored on Arduino EEprom, so also after power loss it loads the alarm time.
What else? Suggestion about will be appreciated!

I remember my implementation from original hackatronics clock:

  • dot blinking betwen hh and mm;
  • fast setting time with up/down button (button 2 and 3);
  • beep every hour in point by short press of button 1 (beep confirm and LED 4 on);
  • show seconds and hundredths of second by short press of button 3;
  • alarm on/off by long press of button 3 (beep confirm and LED 1 on);
  • show date: day of week, then day and month (or "none" in free-running) and alarm sound off by short press of button 2;
  • clock time locked on RTC reported by LED 2;
  • clock time free-running by clockISR reported by LED 3;
  • RTC fail and RTC battery low reported by display;
  • lamp test at power-on;
  • automatic spare clock source from RTC to clockISR and viceversa;
  • alarm time be stored on Arduino EEprom;
  • ...what else? Enjoy and... stay tuned!!!

Best regards,

KMZ

P.S.: The RTC DS3231 must connect on I2c bus on SCL and SDA and Vcc and GND, look the photo. Sorry for my poor English!

24h_RTCsparedISR_data_chrono_alarm_clock_memo.ino (17.6 KB)

The RTC DS3231 must connect on I2c bus on SCL and SDA and Vcc and GND (on Mega2560 SCL is the pin 20, and SDA is the pin 21), look the photo.-

Close up connection of RTC DS3231.-

Last version: errata corrige: no ring at hours in point. Now I correct all, it works fine 100%.
Please download this last version - it works and tested 100% (the bug not made by me but by library :frowning: ).-
Please leave a comment if you agree my work!
Best regards,

KMZ

24h_RTCsparedISR_data_chrono_alarm_clock_memo.ino (17.6 KB)

Hi again boys!
Last (I hope) improvement: beep every 15', 30', 45' and hour in point by short press of button 1 (beep confirm and LED 4 on).
My source now is more three time bigger than original hackatronics source!
What else? Suggestion about will be appreciated!

I remember my implementation from original hackatronics clock:

  • dot blinking betwen hh and mm;
  • fast setting time with up/down button (button 2 and 3);
  • beep every 15', 30', 45' and hour in point by short press of button 1 (beep confirm and LED 4 on);
  • show seconds and hundredths of second by short press of button 3;
  • alarm on/off by long press of button 3 (beep confirm and LED 1 on);
  • show date: day of week, then day and month (or "none" in free-running) and alarm sound off by short press of button 2;
  • clock time locked on RTC reported by LED 2;
  • clock time free-running by clockISR reported by LED 3;
  • RTC fail and RTC battery low reported by display;
  • lamp test at power-on;
  • automatic spare clock source from RTC to clockISR and viceversa;
  • alarm time be stored on Arduino EEprom;
  • ...what else? Enjoy and... stay tuned!!!

Best regards,

KMZ

24h_RTCsparedISR_data_chrono_alarm_clock_memo_time.ino (20.2 KB)

Okay, last modify, I toggled the day of week in english, to back in italian uncomment the source.

I remember my implementation from original hackatronics clock:

  • dot blinking betwen hh and mm;
  • fast setting time with up/down button (button 2 and 3);
  • beep every 15', 30', 45' and hour in point by short press of button 1 (beep confirm and LED 4 on);
  • show seconds and hundredths of second by short press of button 3;
  • alarm on/off by long press of button 3 (beep confirm and LED 1 on);
  • show date: day of week (italian/english must uncomment on source), then day and month (or "none" in free-running) and alarm sound off by short press of button 2;
  • clock time locked on RTC reported by LED 2;
  • clock time free-running by clockISR reported by LED 3;
  • RTC fail and RTC battery low reported by display;
  • lamp test at power-on;
  • automatic spare clock source from RTC to clockISR and viceversa;
  • alarm time be stored on Arduino EEprom.-

Please leave a comment if you agree or disagree my project!
Best regards,

KMZ

Here the source!

KMZ

24h_RTCsparedISR_data_chrono_alarm_clock_memo_time_eng.ino (21.3 KB)