building a uber alarm clock
I started a new project some days ago. Some years ago i read about a sleep phase alarm clocks and thought: very nice idea. I wanted to have one but the price is way to high and also the software is closed source. I surely don’t buy a peace of hardware I can’t use the way I want to :-).
The only problem i had was detecting the sleep phase with some not bothering accelerometer…
Some weeks ago C’t reviewed the very nice EZ430-Chronos and i fall in love with this very neat watch clock. One of the nice features are accelerometer and a low power wireless chip. And the best thing, the firmware is open source and they ship with debugging hardware :-)
So, the first step was to write a firmware for clock. As they use a closed source compiler, some work had to be done for porting the firmware to msp430-gcc. Thank to Paul F Sehorne for the initial pieces. I forked the firmware and began cleaning up the code and modularizing it, so people can have a config file with the features they want. It is “only” 32 kb flash — 8kb for the boot loader (which contains the wifi flasher). As msp433-gcc does not optimize as good as IAR or CCS, useless code needs to be optional (like the 24/12 am and Fahrenheit code ;-)). I call the project OpenChronos.
The next step was to write some daemon that uses the clock and controls the alarm clock, has http xmlrpc/json apis, logs the measured data, etc. 32kb is way to less for storing them, and i really don’t want to loose functionality there.
I choose to use django with some apps like piston for writing the daemon. This has automatically the feature of having a featured website into the daemon. As i plan to use a Chumby as the alarm clock later on, having a full web-framework/server is ++. UberClock was born :-)
Logging for 2 days now, data is quite interesting:

The clock calculates a movement index and transmits to the clock. Low values mean low movement (maybe i will increase the high pass filter a little bit so it will be more like 0 on no movement). Higher values mean more movement. As you can see, there are typical spikes and longer phases of no movement.
I was already up at 11:06, thats the reason for the high values there.
Now i need to write some algorithms to find good spots when waking up would be best. I plan to have different sleep plans like:
- I have to stand up at n o’clock latest and he sets itself a window in which he would wake you up.
- N deep sleep phases, and start waking you up.
- powernap phases
And I there is also a third project. I started to design a 12 V pwm dimmer which the daemon will control. There are full spectrum halogen bulbs available. I want to mount some of them above my bed and the clock should start dimming them slowly brighter and brighter before starting the alarm, so my body can adjust even better…

Comments
freakin project, dude! small step for a man giant leap for the intelligent house! i guess we’ll see you whenever you think it’s time for a maths class. greeting from the upper playground, martin and klemens
Hi! I read from your project in the chumby forums, pretty neat idea! I’m currently working on getting my chumby dim my room lights before an alarm sounds. I use 220V halogen lights, as dimmer base i use a modified crystal. It communicates over I2C with the chumby. Currently i am looking into the chumby source to trigger the dim process… Hope I finish my project soon :)
If your stuff is going to work, i gonna buy an ez430 :) Keep up your good work!
Greets Luki
a year later, I receive my own ti chronos watch. I’m completely lost in the programming, and updating and all the rest but I’m definitly interrested in this firmware. I’ll flash it and try it for sure (not now : I’m got a week of treking to log, but after that for sure). Cheers for the good work.
Is it possible to use the chronos stand-alone as an accelerometer enhanced alarm clock? I’d rather not have to run my PC all night, it seems like it would be easier to just have the watch itself act as the alarm clock. Also, it seems like it would save battery life on the watch since no wifi to transmit acc data.
I just got my chronos and am looking forward to playing with it to see what it can do. Thanks so much for your OpenChronos firmware, that’s going to make hacking the device much easier!
Amazing content, i love poelzi.org !!
<a href=http://www.youtube.com/watch?v=7DFQalIrgT4>paradis poker</a>
Most powerful&cost effective SEO and website traffic service in world get up to 100’000 forum backlinks now! Get large online web traffic using amazing backlink service today. We can post your marketing message up to 100’000 forums worldwide, get thousands of backlinks and amazing targeted online web traffic in very short time. Most affordable and most powerful service for web traffic and backlinks in the world!!!! Your post will be published up to 100000 forums worldwide your website or blog will get instant traffic and massive increase in seo rankings just after few days or weeks so your site will get targeted long term traffic from search engines. Order now: <a href=http://xrumerservice.org>backlink service</a>
poelzi.org is well designed
<a href=http://www.youtube.com/watch?v=cAXzAJFpS38>Trichozed</a>
poelzi.org has good graphics
<a href=http://www.youtube.com/watch?v=JVfA9zpu6wQ>buy prohormones</a>
Comment form for «building a uber alarm clock»