Sometimes the float valve of a water tank may not work properly causing water to overflow and spread across the floor. Peter Jennings faced this problem in his storage area, and he had developed an alarm device to notify him when the water exceeds its normal range.
Peter’s project includes a simple water sensor and ESP8266 wifi module connected with power switch circuit. When the water reach a specific threshold, the sensor will trig the switch to turn on the ESP8266, which will connect to a wireless network and send a message to a web server.
ESP8266 is a wifi module contains System-On-Chip (SOC) with integrated TCP/IP protocol stack that can give any microcontroller access to any WiFi network. The ESP8266 is capable of either hosting an application or offloading all Wi-Fi networking functions from another application processor. There are various versions of ESP8266 differ in size, shape and price. Peter used this $1.5 module, and you you are free in choosing your ESP8266 board.
Mini Pushbutton Power Switch from Pololu, an electronics manufacturer and an online retailer, is the power switch circuit used in this project. It is a $4 power control alternative to bulky mechanical switches which is able to turn on and off any device using the mini push button on the board, the external on & off pins, or a control signal. This low-voltage version operates from 2.2 V to 20 V and can deliver continuous currents up to around 6 A.
The sensor which is used to detect the overflow is very simple, it is just two wires pinned inside the tank above the highest level that water should reach. One of these wires is connected t
o the Vin pin, and the other is connected to CTRL pin on the switch circuit. DC current will flow between the two wires when the water pass the limit sending a control signal to turn on the Wifi module.
This combination is powered by a range of 3 volts to 3.6 volts battery pack. The circuits should be connected as shown in the diagram:
You have to create your own web server which will receive the message from the ESP8266 and notify you. If you are not familiar with web development you can use IFTTT, a free web-based service that allows users to create chains of simple conditional statements which are triggered based on changes to other web services.
To use IFTTT, you have to create your own account, then proceed to the Maker Channel to create a Trigger event. IFTTT will give you the URL to enter into the ESP8266 code. You can set the alarm to run a ringtone on your android device, tweet on your twitter account, post in facebook, send an email, and a lot of other choices.
There are also many ways to program the ESP8266. Peter used the simple NodeMCU Lua system, but for Arduino fans there is an Arduino firmware installation available for the ESP8266 which can also be used to implement the simple firmware required.
Additional information and other resources are reachable at the project page. You can also find some useful tutorials and links about using the ESP8266 and LuaLoader or getting started with ESP8266 on Peter’s website.