This incredibly easy-to-make project uses TMP102(from sparkfun.com) digital temperature sensor which measures the ambient temperature of room. You get temperature in degree Centigrade and Fahrenheit. TMP102 is simple and accurate digital sensor which can detect very small changes in temperature (0.0625° C) and is accurate up to 0.5°C. In addition to these amazing features, the TMP102 operates at very low current, 10µA (10 millionths of an amp). TMP102 is an I2C device; after you connect the device as shown in the picture below, it shows ambient temperature of your room. It is more accurate than other sensors like LM35.
I2C is a 2-wire serial connection with SDA(Data) and SCL(CLOCK) . SDA pis on analog pin 4 and SCL is on analog pin 5 and on an arduino mega, SDA is digital 20, and SCL is digital 21. Like many other I2C devices, we use wire.h for communicating with Arduino. The sensor has an address pin (ADD0) that is used to change the address of the sensor. The best thing about I2C is that you can hook up some other I2C devices(with different addresses) and communicate with Arduino independently(even on the same bus). We ground ADDo pin so that the sensor uses the address of 72(0x48 in Hex). And if we connect this pin to 3.3V pin on the arduino, the address would be set at 73(0x49 in hex). The address can be changed at the top of the code ( int tmp102Address = 0×49).
Features in summary:
- 12-bit, 0.0625°C resolution
- Accuracy: 0.5°C (-25°C to +85°C)
- Low quiescent current
- 10µA Active (max)
- 1µA Shutdown (max)
- 1.4V to 3.6VDC supply range
- Two-wire serial interface
The original version of this project can be found on bildr.org and the circuit layout is made using fritzing.