Its been long since I wanted to have a countdown timer. This finds use in many of the daily activities such as warming the water with a fixed timeout or boiling the milk or soaking the white cloths and the list goes on. Finally few days ago I gathered up all that I had and tried to start on this Project Samay1. The name litrally means “Time” in Sanskrit. This project is based around MSP430F2013 the famous dip version of MSP430. The reason I chose MSP430 is because of its High Code Density and Ultra Low Power. Well both became essential since I needed some thing that could work for a long time. In order to speed up my development I used the CookHa(MSP430 based Cooking Helper) board and modded it to help me build this prototype as shown below.
I also needed to display time information and prominently, so I took help of the trusty old 7Segment Display. But there was a problem of interfacing it to MSP430 so I used SN74HC595. This is a Serial In-Parallel Out type Shift register with Output Latches. Using this helped to shift in the data and then issue a load command to set the data into the Output latches. Thus the bit pattern needed for the 7Segment is sent out through the MSP430’s SPI(USI) port and latched by a pulse to the output. There are two buttons also provided to help in setting the timing and to stop the timer. There are preset duration for the timing since there is no up-down button facility, only a single button is used for this. The set timings are in 1minute to 30minute duration and can be changed in software provided the array containing the values.
I have included the Schematics into the source code itself. Here is a Link to the Software of Samay1.
This software is based on a State machine for proper operation and enable the Count down, alarm and proper sleep mode controls.
TODO: Updated !! 22-AUG-2010
– Post Video on the operation of the unit.
There is still a flaw in the button denouncing which is not working as expected but hope that I would be able to fix that soon.Fixed it by 50mS De-bounce -22/AUG/2010
– Need to make Battery measurement using ADC for alerting when its below the thresholds of operation.
Possibly measure the Temperature using the Cook-Ha’s temperature sensor Works Now with button 2 pressed. The Temperature Read out is Hundredth Digit First and then tens Digits. This is displayed 5times.- 22/AUG/2010
Automate timing control with temperature display for the Water heating application + timeout. Not Possible due to Lack of space – 22/AUG/2010
– Check possibility of incorporating a complete RTC showing time on the same hardware.
Let me know your views and ideas on how I can improve on the design as well as the software.