Intro: Smart Water Controller
Hello, this is my first project on Instructables. Any question or suggestion, comments, please tell me.
I created an IOT node for my cold water tank on the roof. It gave me some information like:
1. Tank water level
2. Temperature, Barometric Pressure and Humidity
3. Motion Sensor
4. Light Lux
Base on Firmware ESP-EASY and hardware ESP8266 Nodemcu.
Because this IOT node need Wifi for working, I'm already re-configuration my Wifi network. Will sharing it with other project.
Step 1: Necessary Tools
List below are main Necessary Tools for my projects:
1. Welding station
2. Digital Multimeter
3. Welding Tools & Materials
Be careful when using any device that is related to electricity.
Step 2: Hardware With ESP8266
Because my cold water tank in the roof. So, I give some sensors for tracking enviroment (just for fun)
1. ESP8266 : any esp8266 but I recommend the NODEMCU - ESP8266, it is about 3$ - 4$
2. DS18b20 Waterproof : for water temperature
3. HC-SR04 : Ultrasonic Sensor for tank water level
DO NOT DIRECT CONNECT WITH ESP8266 (it is 5v signal and will kill your board)
4. DHT22 or DHT11 : Temperature and Humidity inside box
5. BMP180 : Barometric Pressure/Temperature/Altitude on roof
6. PIR HC-SR501 : Passive Infrared Motion Sensor, to detect someone or animal
7. BH1750FVI : Digital Light Sensor
8. Levelshifter: convert signal 5V from HC-SR04 to 3.3V.
Step 3: Flash Firmware EspEasy
1. Download it on https://github.com/letscontrolit/ESPEasy/releases
2. Using this firmware ESP_Easy_mega-yyyyMMdd_normal_ESP8266_4096.bin
3. Run FlashESP8266.exe for flash (in Windows only :D). Maybe you need flash.py to flash on Linux or Mac (try Google please)
4. First run please folow this guide https://www.letscontrolit.com/wiki/index.php/ESPEa...
Note : AP mode using this password to access : configesp
Step 4: Wire System and Sensors
Please wire ESP8266 with Sensors like this:
- DHT11 => GPIO3
- DS18B20 => GPIO1 : need R4,7k with (+)
- BH1750 => I2C : GPIO4,5
- BMP180 => I2C : GPIO4,5
- PIR => GPIO14
- HC-SR04 : DO NOT DIRECT CONNECT WITH ESP8266 (it is 5v signal and will kill your board)
You need a Levelshifter https://www.letscontrolit.com/wiki/index.php/HC-SR...
=> connect Levelshifter with GPIO12, GPIO13
Step 5: Config System
Config like this photo.
GPIO need match with previous step, you can change it.
But DO NOT use these GPIO:
- IO0, IO2 : need pull-up R
- IO15 : need pull-down R
- IO16 : sleep mode with RST
- IO7, IO8, IO9, IO10 : SD0..3
Using these GPIO will break down your Serial Monitor:
- IO1, IO3 : serial TX RX
Please make sure correct IDX on your Domoticz system.
Step 6: Control With Domoticz & ThingSpeak
Give it new hardware, setup devices and type the IDX on Domoticz in EspEasy
Get new chanel and give EspEasy the Write API Key
Step 7: Box & Go-Live
In box and test.
After that, setup with water tank.
Now : relax with beer :D
Note: please do not put it direct with the sun or rain. For inside only.
1. Android app : https://www.domoticz.com/wiki/Android
2. iOS app : https://www.domoticz.com/wiki/IOS
Step 8: Next Upgrade Version
In next version, I will make other node to control pump.
And include this to my Smart Home using Home-assistant (https://www.home-assistant.io/) instead of Domoticz (http://www.domoticz.com/ ).