This project uses a Dallas DS1621 temperature sensor which indicates the temparature of the device.

 The temperature sensor has an thermal alarm output, which becomes high when the temperature of the device exceeds a user defined value. When the temperature drops below a user defined value, the alarm output becomes low. In this way any amonut of hysteresis can be programmed. The values are stored in a special register of the device that is nonvolatile. The signal of the alarm output is amplified by a BC557 PNP transistor, that drives a relay that can switch a heater element or a blower on or off.

The temperature settings and readings are communicated to/from the device over a simple 2-wire serial interface. An ATMEL ATTiny2313 microcontroller controls the serial communication to/from the DS1621.The microcontroller also controls three LED, only one of the LED's is on when the temparature is within a certain range. The range of the temperature in which the LED's are on can be set by the user in the program code. The circuit needs to be powered by a 5V power supply, which can be obtained from a wall-wart.


  • Measures temperatures from -55°C to +125°C
  • Three LED's to indicate in what range the temparature is.
  • User definable thermostat with high and low settings
  • Output via a relay to control a heater element or a blower fan (or something else)
  • Power supply ......................4.5 to 5.5 VDC
  • Power consumption ...........15mA

Circuit Schematic and PCB Layout

It contains only a few parts, a DS1621 temperature sensor, a attiny2313 micrcontroller,three LED's one relay and some resitors. I have made a small printed circuit board for it.

Temperature Indicator sch

Temperature Indicator brd


The software for this projects is made with the AVR Bascom compiler. Download is below,