This repository provides step by step guide how to automatically control humidity in your home.
It is fun to build, consists of easy to get components and costs just $50.
There are only couple of cheap and easy to get components to make your project running
- Humidifier - $25
- ESP8266 board - $8
- Humidity sensor - $5
- RC Socket - $5
- RF Transmitter - $1
- Breadboard - $5
- Cables - $1
- PC - $0 - you likely have one already as you are reading this web page 😄
For more details please refer to Components section.
Depending on your experience, to make implementation easier, this project is broken down into the following steps:
-
Introduction - check it to learn more about this project and how we are going to implements it.
-
Components - describes in detail components you need and what you should look at when buying them.
-
Setup - how to configure Arduino IDE for ESP8266 and compile first sketch
-
Measure - details how to measure humidity with ESP8266 and DHT22 sensor.
-
Show - go on line and show humidity measurements in web browser.
-
Chart - how to push data to the cloud and display nice charts with measurements.
-
Control - switch on and off wireless RF 433MHz socket using ESP8266 and RF transmitter.
-
Automate - with all preparation done in prevoius steps now we are ready to put our humidity control system together and switch it into auto mode!
-
Maintain - how to make code uploads easier and quicker with OTA (Over The Air) updates.
-
MQTT - communicate with other devices using MQTT protocol.
-
openHAB - control humidifier from your mobile device using openHAB.
-
HTTP - interface ESP8266 and openHAB using HTTP binding. Is it a viable alternative to MQTT binding?
-
Persistence - save sensor values on your local PC instead in the cloud using persistence functionality provided by openHAB.
Note: If you do not have much experience with Arduino IDE programming and ESP8266, please don't skip ahead in sections of this repository! New concepts are introduced step by step and you may miss something that will be important later. As result you may get stuck trying to make the sketch or other applications work.
Feel free to contribute to the project in any way you like!
If you find any issues with code or descriptions please report them using Issues tab above.
If you like to discuss it please use this thread on ESP8266 Community Forum.
krzychb
Invite me to freshly squeezed orange juice.
Software for this project has been prepared thanks to great work of the following teams and individuals:
- Arduino team that develops and maintains versatile Arduino IDE
- esp8266/Arduino team lead by Ivan Grokhotkov that brought to us great ESP8266 core for Arduino
- adafruit providing DHT sensor library that is only one of numerous examples of open software adafruit contributed to community
- Randy Simons who prepared 433MHz libraries for Arduino
- Friends-of-Fritzing foundation - developer of widely used and really nice and friendly Fritzing
- Kamil Baczkowicz - the author of versatile and really user friendly mqtt-spy, an application that provides tremendous help when testing MQTT communication and debugging MQTT messages
- Imroy - developer of PubSubClient, a MQTT library fork of https://github.com/knolleary/pubsubclient
GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999