This is a small project for a kitchen timer.
- Timeout 1 - 99 minutes
- Rotary encoder to enter timeout
- Push button to stop alarm
- Two digit LED display
- Operates on two AA batteries for around 100 hours
The timer circuit is based on the microcontroller ATtiny1616 from MicroChip. The external components are kept to a minimum.
In order to simplify the design the internal low speed oscillator is used instead of an external crystal controlled oscillator. Based on the typical usage of the timer and the resolution of two digits an oscillator with a precision of 1 to 3 percent should be sufficient. The mechanical timers offered as kitchen timer probably have no better accuracy.
The time is displayed on a two-digit red 7-segment LED. It is directly driven by the microcontroller. The display is operated in multiplex mode to reduce the number of GPIO pins of the controller. The display modules are of type common cathode. Only the cathodes have current limiting resistors which is uncommon but also reduces the number of required resistors. In order to avoid different brightness of symbols the duty cycle for a given symbol has to be changed in software accordingly.
The timer employs a rotary encoder with push button to operate the kitchen timer. Debouncing is done in software.
The design uses a piezo buzzer with a frequency of about 2kHz to output a tick noise when the timer is running and to output the alarm signal when the entered time has expired. In order to maximize the sound volume the microcontroller uses the resonant frequency of 2kHz. The buzzer is connected to two GPIO pins which allows to double the signal amplitude.
Two AA type batteries (Alkaline or NiMH) directly powers the circuit. There is no additional voltage regulator. The microcontroller works down to 1.8V which is the usual discharge voltage of two AA cells. The LEDs gets dimmer as the batteries discharge. By measuring the battery voltage and change the display timing this could be compensated to some degree but is not implemented yet.
The major design goal is to simplify the usage as possible and to emulate the look-and-feel of a simple mechanical kitchen timer.
Simply rotate the knob of the rotary encoder left or right to set the desired timeout value. The timer then starts automatically the countdown. There is nothing else to do.
Note that each step of the rotary encoder is one minute for timeouts from 1 minute to 20 minutes. From 20 minutes to 90 minutes the step size is 5 minutes.
When the timer expires the alarm sounds for 5 seconds. It can be stopped pressing the button of the rotary encoder or by turning the rotary encoder left until the display is switched off.
Press the button of the rotary encoder or turn the rotary encoder left until the display is switched off.
Simply turn the rotary encoder to adjust the timeout value.