My Motivation This winter my girlfriend had a lot of trouble waking up in the morning and seemed to be suffering from SAD (Seasonal Affective Disorder). I even notice how much harder it is to wake up in the winter since the sun hasn't come up yet. Symptoms of severe SAD can include irritability, oversleeping but still being tired, not being able to get out of bed, depression, and even some physical problems such as joint pain and lowered resistance to infection. I had heard about sunrise alarms that simulated the sunrise and figured it could be a possible solution to her problem. The Plan I remembered seeing an instructable (http:www.instructables.com/id/Blue-LED-dawn-simulator-for-Soleil-Sun-Alarm/) about modifying a sunrise alarm to provide blue light using LEDs since blue is supposed to be the good light to help out. I liked the idea but the way the microcontroller is used in this instructable intimidated me since I've had limited experience with programming one after the code is developed. It also did not solve the other concern of mine: spending $80 on an alarm clock and modifying it, not that my girlfriend isn't worth it :D I first thought about developing a clock from scratch using a microcontroller. We built a binary counting clock in one of my college classes, so I was familiar with the logic. I later gave up on that idea since I wouldn't be using the same programming language and I would take a lot of time to develope the code. I then had the idea to use a cheap digital alarm clock that could, hopefully, provide a voltage when the alarm went off. I could take this voltage and use it as a switch with a microcontroller. When the alarm went off and the voltage went high, the dimming process would begin. If the snooze button was hit, or the alarm was turned off, the voltage would go low and the dimming process would stop, turning the lights off. I researched this idea and found out that it was possible to use a voltage from a clock and use it with a microcontroller! A guy had completed a similar project that opened his blinds automatically in the morning (http:hackaday.com/2008/11/18/alarm-clock-automated-blinds/). The Microcontroller The ideas started flowing and all I had to do was pick a microcontroller to use. I saw an article on sparkfun.com that went through the process of building a circuit to run an ATMega168. I read carefully and decided that it seemed simple enough and that it was the microcontroller I wanted to use. Upon further research, I found this Arduino thing everyone has been using for their DIY projects. It used the ATMega168, was open source, and had numerous help forums and starting examples; perfect for the beginner. I decided to use it to program my ATMega168 and transplant it into a breakout board that contained the bare essentials for the ATMega168 to run. With the last piece of the puzzle in hand, I could start. Quick Side Note: Before I start, I just want to say thanks to all of the sources I used. I tried to make sure I linked any reference I used within the instructable. The code is just manipulations of the examples included within the Arduino environment and a bit of my own so thanks to the people who coded those! Also, this is my first microcontroller project. I'm sure I didn't do everything completely correct, such as adding filter caps to places and other various parts to my circuits. If you see something that can be improved, let me know! I'll be sure to update or make notes of it. Enjoy!

step 1Probing The Clock and Alarm Output Circuit
'''Probing the Clock''' This is the clock I chose. I got it at Walmart and it was cheap so if I wasn't able to use it, I wouldn't be too upset. It also has a 9v batte…
step 2Power Supply Circuit, LED Driver Circuit, and Wiring
'''Power Supply Circuit''' If I were to hook the microcontroller straight up to the Vcc of the clock, I would blow it up (well not really, but render it useless). I n…
step 3Hooking up the ATMega168 and Building the Prototype
'''Hooking up the ATMega168''' There are only a few pins that need to be connected for the ATMega168 to run. I found this pinout of the ATMega168 at [http:www.moder…
step 4Building the LED "Bulb"
'''The Triple Quad LED Bulb!!!!"' If you want, you can skip this step and use a single LED to test your circuit. You can come back to this when you have the circuit …
step 5Adjustable Neck and the Base
'''The Adjustable Neck''' In order to direct the "sunlight" that the alarm clock generates, I chose to add an adjustable neck. At first I thought I could use conduit …
step 6The Program
'''The Program''' '''In order to program your ATMega168 with the USB connection and Arduino board, you will need an ATMega168 chip that has the Arduino bootloader already …
step 7Conclusion
'''Possible Inprovements''' After I had finished the sunrise alarm, I though of some improvements or extra features I could have added. One of the ideas I came up with was…
http://www.instructables.com/id/LED-Sunrise-Alarm-Clock-with-Customizable-Song-Ala/