littleBits Projects: DIY Smart Thermostat

This is part of an on-going series of posts about littleBits projects. littleBits is available in the Adafruit store – Base Kit,Deluxe KitSynth KitSpace Kit, Arduino ModuleArduino Starter BundleSequencer 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.



The 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).



Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here:

Join Adafruit on Mastodon

Adafruit is on Mastodon, join in!

Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Join over 36,000+ makers on Adafruit’s Discord channels and be part of the community!

CircuitPython – The easiest way to program microcontrollers –

Maker Business — “Packaging” chips in the US

Wearables — Enclosures help fight body humidity in costumes

Electronics — Transformers: More than meets the eye!

Python for Microcontrollers — Python on Microcontrollers Newsletter: Silicon Labs introduces CircuitPython support, and more! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi

Adafruit IoT Monthly — Guardian Robot, Weather-wise Umbrella Stand, and more!

Microsoft MakeCode — MakeCode Thank You!

EYE on NPI — Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — #NewProds 7/19/23 Feat. Adafruit Matrix Portal S3 CircuitPython Powered Internet Display!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at !

No Comments

No comments yet.

Sorry, the comment form is closed at this time.