Introduction: Sunrise Simulator Lamp

I created this lamp because I was tired of waking up in the dark during winter. I know you can buy products that do the same thing, but I like the feeling of using something that I’ve created.

The lamp simulates a sunrise by gradually increasing in brightness for one hour beginning at a set alarm time. It connects via Bluetooth to an Android app, which can be used to set the alarm time, turn the light on and off, and adjust the brightness.

A three-way switch on the back of the lamp toggles between an “On,” “Off,” and “Alarm” state. When the switch is “On”, the LED is constantly on like a normal lamp. If it’s “Off”, the light won’t turn on even if the alarm is set. If it’s set to “Alarm”, the lamp will come on at the set time and can also be turned on at any time with the app.

Two 10W warm white LEDs provide lighting through a diffuser screen. The brightness can be controlled either by a dimmer knob on the back of the lamp or with the app. The maximum brightness of the lamp during its sunrise stage (for one hour after the alarm set time) can also be set with the app.

I'm not an electronics designer so I’m sure there are ways to improve upon my design. If you have any suggestions on how it can be improved, please let me know.

Step 1: Case

The case is made from a 1×4 fir board with a 1/8” plywood backing. Total assembled dimensions are 6” x 6” x 3-1/2.” Included is a dimensioned drawing of the case parts.

A slot is cut in each side of the case to contain the diffuser when the case is assembled. Another notch 1/8” deep is also cut on each side in order for the 1/8” plywood backing to sit flush to the back of the case sides when assembled. The case sides are mitred and glued together. Screws are used on the bottom for extra strength and the screw heads are covered with circular rubber feet.

The case backing holds all the internal components of the lamp. A 3/8” thick section of plywood the size of the PCB is glued to the inside of the 1/8” backing to serve as a base to which the circuit board can be screwed. The screws hold the PCB and the metal bracket attached to the LEDs in place so that all the internal components can be removed as one piece. The 1/8” backing is then screwed into the four case sides. Three penetrations in the backing are needed for the on/off/alarm switch, the dimmer knob, and the power plug.

Step 2: Schematic

This project was the first time that I’ve used Eagle, which I used to design both the schematic and PCB. I haven’t used it again in the few years since I created this, so please don’t ask me about how to use it!

It's been a few years since I built this, but I believe that the "Snooze" signal is confusing because it's actually just an indicator so the firmware knows that the switch is turned on. I think I had a snooze function in my previous version. I also added a header for a fan in case I needed cooling for the LEDs but never ended up needing it.

Step 3: Circuit Board

If you want to use my design to order boards and don’t want to change anything, you can get the gerber files at, which you can send to most PCB manufacturers to get boards printed. I used PCBWay and had really good results for a good price.

Otherwise you can also download the Eagle .brd file here and modify it to how you want.

Step 4: Bill of Materials

Most of the parts can be ordered from Digikey, which is great because they offer next day delivery. I built this a few years ago so I'm not even sure if all the same components are still available.

Step 5: Firmware

The microcontroller i used is a 28 pin ATMEGA168, which is standard on an Arduino Duemilanove board. For this reason, the Arduino IDE was a natural choice for firmware development.

The PCB contains an ISCP header for programming with a USBTiny programmer, which was very convenient during development when I kept having to modify things, but the microcontroller can also easily be programmed on an Arduino board and then transferred to the PCB.

Step 6: Android App

The Android app was developed using MIT App Inventor. It’s pretty basic, as it is the first and only app I’ve ever created. You can use the .apk file install the app on your Android device.

If you want to change something in the app, the photos show the input I used for MIT App Inventor.

Step 7: Assembly

The photos show the back plate of the case with all the hardware attached to it. The circuit board was screwed directly onto the plywood and holes were cut for the switch, dimmer knob, and charger plug. The LEDs are mounted on two heatsinks, which are attached to the plywood with a bend piece of thin sheet metal. This back plate fits into the case and can be attached with screws.

That's it!