DIY Sunrise Alarm Clock


As a project for an embedded systems class, [Alan] recently built himself a sunrise-simulating alarm clock. You are probably familiar with these sorts of timepieces – they gradually light up the room to awaken the sleeping individual rather than jarring them awake with a buzzer or the radio. Since many commercial units with this feature are sold for $70 and up, his goal was to replicate the functionality at a fraction of the cost, using only open source components.

An Arm Cortex M3 processor runs the show, displaying the time via a pair of 8×8 LED matrix panels on the front of the device. The clock is programmed to gently wake up its user by simulating a sunrise over a period of 5, 15, 30, 45, or 60 minutes. If the user has not woken up before the sunrise simulation is complete, the clock resorts to a traditional piezo alarm to rouse the heavy sleeper.

The project is nicely done, and after looking at his bill of materials it seems to be far cheaper than many sunrise alarm clocks you will find in stores.

15 thoughts on “DIY Sunrise Alarm Clock

  1. I don’t want to be negative, but if his goal was to be cheap, Arm Cortex M3 seems like a little overkill. Then again, maybe that was a class requirement, or just what he prefers to use.

    It looks nice though.

  2. I’ve heard of alarms with bells that slowly increase in intensity, but I’ve never seen one of these. What a cool idea, and this seems like a nice implementation.

  3. I have one of those Phillips alarm clocks,
    and it’s horrible: it’s all plastic, and too
    light to operate the front buttons without
    holding onto the back of it, also the buttons
    give off a really cheap, hollow “plasticky”
    sound. To top it off, the LCD display is WAY
    too bright for a nightstand, and it frequently
    “forgets” the programmed brightness level.

    I’d very much like to build one of these.

  4. Yay! I have been wanting to make one of these for a while but never quite figured out how!

    Then again, I wonder if it could simply be done with LEDs and PWM?

  5. A Cortex M3 might seem like overkill, but if you read the project page, he’s using a $10 STM32-Discovery board. Given that he’s using like 23 or so i/o’s, that dev board is probably the cheapest, simplest solution for his needs.

  6. It’s not like the STM32 part is expensive anyway, the 128K part he used is available in singles for like $2.50/ea, and for this application he could probably get away with using the 32K version at $1.75.

    Add the uber cheap dev board into the picture, and this really is cost-driven choice.

  7. “Also if time allowed, a DMA should be used to transfer the display data from memory to GPIO without CPU intervention, which could save a lot of CPU run time. ” -author.

    YOU SEE! he was tight with a m3 cortex.

    i’m suggesting an upgrade of the project with an intel atom board. But a Xeon platform might be a better choice.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.