Seven day alarm Using Atmega644

Introduction

The variability of a college student’s class and school work schedule gives way to an abnormal sleep/wake pattern that is not experienced any other age group. Few lucky students have the pleasure of having all their classes start at the same time every day. However, most students do not have this luxury. This requires that most students reset their alarm clocks every night in to adjust to each day’s different schedule. Forgetting to reset the clock could result in sleeping through classes, or unexpected wake-ups hours before classes start. This abnormal schedule disrupts your circadian rhythm and makes it increasingly difficult to get out of bed in the morning. For some it leads to snoozing your way through morning classes.
Seven day alarm Using Atmega644
We have created a new type of alarm clock that will have a built-in record of your weekly schedule so that it may wake you up at the right time, every time, every day. Our alarm clock will include extra features that improve on the shortcomings of current alarm clock designs.

Features Introduction

Even chronic snoozers will have no excuse for sleeping through another class again. Each of the daily alarms will include a feature that indicates a priority for the wake-up time. For example, a student may give waking up on Monday morning for class a high priority, while giving waking up for a Saturday morning jog a low priority.
The different priorities will determine how hard it is to disable the alarm. High-priority alarms will be louder and annoyingly difficult to reset. This will ensure that the user is well awake before the alarm can be silenced. In contrast, a low-priority alarm can be snoozed or disabled with a single press of a button.
The backlight LCD display will inform the user of the day of the week and the date. It will also display the next upcoming alarm to the user. The calendar feature of the clock automatically compensates for leap years. The alarm also features an ambient light controller that will make sure that the seven-segment LED display is always an appropriate brightness.

User Input

We wanted to make sure that setting the time for the device was simple and intuitive. We were originally debating over two input methods. A simple interface with 4 navigation buttons or the use of a large keypad for data input. The added features such as the 7 day programmable alarms made it essential that data input was easy for the user.
It has buttons for incrementing and decrementing a value, a back button and an enter button. The keypad represents a 4×4 grid of buttons for user input. We ultimately decided that the navigational keypad would not only simplify the user experience when inputting data but would also help reduce the complexity of the state machine.

Block Diagram

Standards

Communication between chips takes place using two standardized communication protocols. The first of which is SPI interface. This is used by both the LED drivers and the digital to analog converter. We wrote the software to communicate over SPI to both of the chips. Both of the chips communicate using SPI standard 1. The clock calendar chip uses the I2C interface. To communicate to the clock calendar chip over I2C we used the library created by Peter Fleury. His open source software can be found at the link referenced at the bottom of the page.

Patents and Copyrights

Seven day alarm Using Atmega644 Schemetic

We were only able to find one other standalone programmable alarm clock. Although they seem to be the only unique product with this feature we do not infringe on any of their patents. We were only able to find patents for their user interface and not for their 7 alarm feature. Since the user interface of our clock is vastly different from theirs there are no patent conflicts.

Parts List:

Component NameQuantityCostVendorP/NProject CostTotal Cost
ChipsAtmel ATmega644 CPU16Land66
MCP 4822 12-Bit DAC13SampleMCP4822-E/P03
NXP PCF8563p Real Time Clock12.11DigikeyPCF8563P/F42.112.11
Allegro A6276EA-T Led Drivers23FSAE StockA6276EA-T06
DisplaysLCD 16×218.5All Electronics8.58.5
Unitech Systems 1″ 7 Segment Displays42FSAE StockLCS-10012TUR1108
Passive Components10k Potentiometer11Land01
Photoresistor11Land01
32.768kHz Crystal11Ebay11
Misc resistors11Land01
Misc capicators11Land01
Other HardwareKeypad16Land66
Illumniated Buttons44DigikeyCW152-ND1616
Power Supply15Land5
Atmega PCB board14Land44
Lego Whitehouse150Stock21006050
Whiteboard16Land66
Solder Board Small21Land22
Solder Board Large12.5Land2.52.5
DIP Socket40.5Land42
Total Cost:58.11132.11

For more detail: Seven-day alarm Using Atmega644


About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top