Arduino Alarm Clock




Arduino is an amazing machine. This project is just one of the many. You can build your project as per the instructable or expand into more functions if you want.

We will construct a fully-interactive arduino powered alarm clock.
Here is a video of the alarm clock:

The alarm clock has the following functions:
1. Displays the time and date
2. User adjustable time and date
3. User settable alarms with various settings "weekday, weekend, daily, once, off", with buzzer and flashy led to wake you up.
4. Remembers its alarm settings even when power is removed.
5. More importantly, a special key that stops the alarm so you can get back to sleep!
6. Use the alarm function to power any shenanigans you want against your sleepy head :)

We will need the following parts:
1. Arduino duenilanove or UNO
2. Phi-1 shield kit for arduino

We will need the following tools:
1. A soldering iron. Anything from radioshack will work just fine. I use a set that is $8 with the iron and a few tools including some solder .
2. 45 degree cutter for electrical cords, to trim after you're done solder. You can buy one from radioshack or other places.
3. Optional third hand for holding circuit board. I can just lay the board down and solder it
4. Masking tape to hold down parts to be soldered

Let's get started!

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Step 1 Assemble the Phi-1 Shield

Please read the attached .pdf file for assembly instructions first. Then use the following pictures and steps to guide you.

Use masking tape to hold parts on the board and solder at least one pin. Be best if you can solder two pins on opposite ends of the headers. Make sure the headers are straight up and not tilted to the side.

After soldering the two pins, remove the tape and solder the rest of the pins. Then reuse the tape on the next parts.

1. Solder on the three rows of female pins first.
2. Solder on the three rows of male pins.
3. make sure you don't solder on these two pins 0 and 1.
4. Solder the 16-pin female headers for LCD.
5. Solder 5V and GND pins. This is for convenience when you use a breadboard.
6. Solder all 7 tactile switches.
7. Solder the Dip sockets and battery holder. Observe orientation.
8. Solder the crystal, one 220Ohm resistor, optionally the GPS connector.
9. Solder the variable resistor.
10. Solder the buzzer, + on top, the LED, short pin or a cut on the casing on left, 150Ohm resistor, 5V GND headers, and optionally the GPS breakout female headers.
11. Place the DS1307 and optionally the 24LC256 and the battery. Observe the orientation. Dot or grooves down for chips.
12. Solder male headers on the LCD. You just need 6 pins on each side.

Here is a 360 degree view of a complete shield:

Step 2: Step 2 - Check the Function of the Phi-1 Shield With Testing Code

Load the attached code.

First turn the potentiometer all the way on direction until you hear clicking or can't turn. If you don't get anything, then turn the other way. You will see message on the screen. Just follow the instructions. Here is a video.

Make sure your shield is working.

Step 3: Step 3 - Load Alarm Clock Code

Load the alarm clock code. You are done!

Step 4: Step 4 - Do More Projects With Arduino and Phi-1 Shield

For more projects with Arduino and Phi-1 shield, visit my blog and the Phi-1 shield page:

1 Person Made This Project!


  • Made with Math Contest

    Made with Math Contest
  • Multi-Discipline Contest

    Multi-Discipline Contest
  • Robotics Contest

    Robotics Contest

17 Discussions


1 year ago

nice project!...I'm planning to make one of this as well..this will serve as one of my references.



1 year ago

how can i get the coding ? thanks guys


2 years ago

Is the PHI-2 shield still available in 2017 ?

and is it compatible with this project ?


3 years ago

where can i buy phi-1 shield kit? because they stopped selling on the website u put


3 years ago

How can I exchange the beeping sound and the lights into one liight that keeps getting stronger?


4 years ago

Could I build this without using a phi 1 shield?


5 years ago on Step 3

How do you upload this? I am only familiar with .ino files.


7 years ago on Introduction

Nice project, except for serious timekeeping accuracy I'd consider using a Maxim DS3231 Extremely Accurate I2C-Integrated RTC/TCXO/Crystal module instead of the Maxim DS1307. The accuracy of the former is +/-2ppm from 0C to +40C, which translates to about +/-1 minute per year. The DS1307 uses a discrete 32.767 kHz tuning for crystal, and if you check the datasheet and separate application note regarding the crystal, you'll see there's no easy way to trim the crystal frequency and assure high accuracy over time and temperature.

Once the accurate timebase is available and the battery backup of the DS3231 makes it immune to power outages, well -- yeeoow! -- the Arduinuo can be used to make a clock with the wildest combination of features that you'll never find off-the-shelf anywhere.


7 years ago on Introduction

I just ordered a Pi2 4-line LCD kit.

Are the Eagle files available for it?
I'd like to make a case for it on my cnc laser cutter.
(and I hate measuring if I don't have to...)

My intention is to make use of this project and combine it with a binary clock.
(a dual-display-mega-geek-alarm-clock, you might say...)



Reply 8 years ago on Introduction

Thanks! Right now it doesn't have this function but it could be implemented. Do you mean, say, transferring 5 alarm settings to the arduino from computer? How is setting alarms through a computer necessary? I could work on this function if you tell me more about your requirement. Thanks.


Reply 8 years ago on Introduction

Yeah i was thinking for some time about an alarm clock that i would be able to set with a script or even better to get the alarms from the settings of an computer alarm clock so that if i would combine it with "this-hack-really-pushes-our-buttons" from "Ahackaday" or something similar i could start the computer in the morning or whenever and then the computer alarm will run :D

Hope it makes sense