This is part of an on-going series of posts about littleBits projects. littleBits is available in the Adafruit store – Base Kit,Deluxe Kit, Synth Kit, Space Kit, Arduino Module, Arduino Starter Bundle, Sequencer Module, and Cloud Starter Bundle.
Monitor and control the temperature of your home remotely. Transform your average household thermostat into a smart thermostat with littleBits. Using the littleBits cloudBit, you can use your smartphone to get real time temperature readouts from your home and change the temperature from anywhere, whether you are across the world or sitting on the couch.
We used a very basic thermostat from the hardware store. It uses a temperature responsive metal coil to turn your AC/heater on and off (see image 6). This kind of thermostat is perfect for this project because the metal coil is essentially just an on/off switch. We replaced the metal coil with our servo so we could control the thermostat with our new circuit.
How it works
Monitor There are two number modules in this circuit, one which displays the the current temperature in your home, and the other which displays the desired temperature you set. The current temperature in your home is read by the temperature sensor and transmitted through the first Arduino module to the cloudBit. In Cloud Control, you can view the temperature readout under the “receive signal” tab.
Control The desired temperature can either be controlled through Cloud Control with the cloudBit or manually with the dimmer. Because these two inputs will often be set to different temperatures, the second Arduino module decides which input was most recently changed by you and sends that signal to the first Arduino. This module compares this value to the analog value coming in from the temperature sensor. Based on the difference of this comparison, the Arduino will either tell the servo to turn on or off. The servo activates the mechanism in a traditional thermostat that controls the temperature in your home. For example, if the current temperature of your home is 80 degrees Fahrenheit, and you set it to be 70 degrees Fahrenheit, the Arduino will turn the servo on until the current temperature comes down to 70 degrees Fahrenheit, thus equalizing the inputs.
Automate Use IFTTT to program your thermostat to maintain certain temperatures throughout the day. IFTTT is a service that lets you connect to different web apps through simple conditional statements. For example, when you are away from home during the day, it is ok if the temp
reaches up to 80 degrees Fahrenheit, but when you are home after 5 pm, you want it to stay around 70 degrees Fahrenheit.
On/Off The button, latch, and LED at the top of the circuit act as an on/off switch for the thermostat. When this part of the circuit is on, the Arduino runs its program. When the button turns the latch off, the Arduino stops adjusting the servo (but you can still read the current temperature from the number module or from Cloud Control).