Sunday, February 27, 2011

The Final Arduino Kitchen Timer

Kitchen-Timers have a durability which is only slightly bigger than the warranty of the device. It doesn't matter if you buy a cheap one or an expensive. They initiate self-destruction after one year (IKEA, WMF, Zyliss, No-Name... I tried them all) . That's just my personal experience and this is also the reason, why I decided to build my own kitchen-timer.
...and it's name shall be "The FAKT".

I could not find a suitable solution for me on the web, so I have to engineer by myself this time.
Because I didn't want to reinvent the wheel, I choose Arduino as suitable platform. There are enough libraries and documentation and examples available. The board is cheap and very friendly for prototyping.

My requirements for the FAKT are:
- Simple to use with just one rotary-encoder and a LCD-display
- A loud beeping-tone or a melody indicates when the time is expired
- A low power-consumption
- Small dimensions
- Simple to build
- Simple to code. Reuse as much code as possible.
- Cheap hardware

The first firmware-version is working fine, but there are still some open issues. Power-saving should be implemented and my inner-voice told me to switch to an 3.3V-based Arduino-board. I think I will do so. Otherwise I have to destroy my Uno and I don't want to do that. I'm thinking about an Arduino Pro Mini. This will make it also fit in a smaller housing.

The LCD was surprisingly easy to integrate. I used an existing library called DogLcd.
The rotary-encoder is interrupt controlled based on example code from, but I'm still not satisfied with debouncing and step-regognition. Sound is played via two PWM-pins to get a higher volume. This is not optimal and I have to find a different solution, if I switch to 3.3V power-supply.


  1. Hi, Great looking project!
    I looking to do a Similar project but for use with a PCB Exposure Box!

    Would it be possible to see your source code? or have you got any pointer that can help me get started?



    1. Hi DDEA,
      I did a shrink of the whole thing in the meantime using "Arduino Pro Mini" and I will put an update here. I also would like to release the sourcecode. Please just give me some time...

  2. This is exactly what i was looking for! Did you ever get arround to releasing the source code and perhaps a tutorial? This would be greatly appreciated!