Review on IoT based water level sensing and controlling.

Download Full-Text PDF Cite this Publication

Text Only Version

Review on IoT based water level sensing and controlling.

Akshay Sharma A S,

Department of Electronics and communication engineering, Vidyavardhaka college of engineering,

Mysore, Karnataka, India

Abstract:In any household or industry or any agricultural field, water is a part of life and water tank is principal part of any building, home. In any common household, most of them have a water pump, which is operated manually by a person, switching it on and off, which is inconvenient and also sometimes causes wastage of water due to overflowing, which may in turn cause damage to roof, and also may cost you some penalty. Here, we use an ultrasonic sensor to sense the water level in the tank, which is processed by Node MCU, the water level in the sump is also sensed using Water level sensor. The water level in the tank and sump is noted and is sent to the Blynk IoT cloud, which a user can monitor remotely. The water in the tank is replenished immediately when it goes below prescribed level and stops pumping when tank reaches prescribed full level. The Blynk IoT also sends a notification to user whenever tank is empty or full. The user is also given manual control to turn the pump on and off. The pump doesnt run and Blynk sends notification when the water in sump is low. Notification is also sent when there is a power failure.

Keywords: Water level Sensor, Ultrasonic Sensor, Blynk IoT, Node MCU, Pump


    IoT stands for Internet of Things, which is a system of inter- releated computing devices, machines provided with unique identifiers(UIDs) and has ability to transfer data without human to human or human to computer interaction, meaning that they can transfer data between machines and computing devices without the need of human or computer intervention. IoT has its applications in lighting, home appliances, heating ventilation and air conditioning(HVAC), power monitoring and much more. The specialty of IoT is that the devices or appliances can be monitored, controlled anytime anywhere with internet connection. IoT has its applications right from 1982, used by Coca Cola vending machine for temperature monitoring. IoT has given birth to concepts like smart home, where hubs or platforms control devices and appliances, like Philips Hue, where a Hue bridge is used to control the light color, brightness and also mood. IoT protocols include Zigbee, Bluetooth, Data Distribution Service(DDS), Lightweight M2M(LwM2M), Message Queuing Telemetry transport(MQTT). IoT is integrated not only in home appliances, but also in automotive segment, where it is called Connected Car which has inbuilt Connected car features like Remote Engine Turn on or off, Geofencing, Realtime location tracking, Remote car lock or unlock, remote HVAC turn on or off and much more, which can all be controlled by phone app. Connected car features are now becoming more common in many top end cars by reputed manufacturers like Kia, Hyundai, Morris Garage

    and many. These connected cars have an inbuilt SIM card for providing internet connectivity to car. IoT integration is provided to almost all the home appliances like lights, fans, water heaters, air conditioners, thermostats.

    A water level controller is a device, that manages the water levels in variety of systems like tanks, swimming pools. The basic function here is to regulate water flow and optimize system performance. Water level controllers find its application in most of the households and also in some industries. Here, a combination of IoT and water level controller yields an IoT based water level sensor and controller.


    In [1], the paper emphasizes about the essentiality of water for human beings, plants and animals. The key aim of the paper is to reduce human intervention to reduce percentage water wastage in agricultural farms using a water level controller with wireless technology. The paper has said about the development of 4 stages of water pumping system. The paper has also compared between the wired and wireless Bluetooth based water level controller. They have used an Ultrasonic sensor, Arduino uno microcontroller, pump, relay and Bluetooth module HC-12. The controller decides unique code for water level based on 4 stages of water pumping. Distance is calculated using formula d=S*(T/2)=0.03435*(T/2), where S is speed of sound, T is duration of transmission and reception of sound wave from an ultrasonic sensor. S=0.003435 cm/microsecond. The paper also displays drawbacks of wired controller, which includes limited wire length, which paved way for introducing wireless automatic water level controller.

    In [2], the paper says about the issue due to excessive water usage in the domestic or commercial purposes, which in turn may lead to further problems like problem with weather patterns. The paper has said about the development of a system comprising of a water level sensor, digital logic processing unit or integrated circuit(IC), for input signal processing, 7 segment display, JK flip flop sequential circuit, motor driver controlled by relay. The data from the water level sensor is encoded using a digital encoding circuit, where water level is encoded to decimal, indicating the water level from 0 to 9. The decimal is then decoded from BCD to 7 segment using BCD to 7 segment decoder (IC7447). Digital logic controller, responsible for the turning on or off of the pump, turns the pump whenever the water level reaches ONE, and turns off when it reaches level NINE. A JK flip flop is used as a driver circuit to turn on or off the motor. Relay is used as a switch, which turns on the

    motor and also turns it off whenever the tank reaches full capacity.

    In [3], the paper explains the importance of internet for communication, and also objects communicating with each other, otherwise called Internet of Things(IoT). The paper also says that a process of water filling, causes overflowing and wastes water. The paper says about development of Blynk IoT and PHP web based programming to provide water level sensing. They have also said that system has an error of 2cm controlling the water level. They have used an ESP8266 as a microcontroller, which has capability of connecting to the internet. They use an ultrasonic sensor for water level sensing. The Blynk app is used to provide connectivity both to the ESP8266 and also smartphone or any smart device. The microcontroller communicates with the PHP web based water container monitoring information system via Blynk Server. The pump can be controlled automatically and also semi automatically. They have given the result that the pump runs at a range between 15 to 35 cm of water level in the container or tank.

    In [4], the paper explains about the application of IoT in AnyControl- which is a home appliances controlling and monitoring system. The paper also says about the enhancement of old appliances and also controlling experience through IoT. The paper also says about the existing systems which are sensor based, self learning based, universal controller applications. The paper has an objective to enhance old appliances by using add on modules and sensors to the existing appliances, also providing them network connection. The paper also aims for task based and sensor triggered automation, where process is organized based on the tasks, which also supports self learning and prediction service. The paper says that they have developed a universal controller, on Raspberry Pi which is a Linux based single board computer having serial communication, internet connectivity , infrared module capability. They also use an environment sensor which sense Radiation Temperature, Illuminance, Flow Velocity, Humidity, Air Pressure. The operation performed is Monitoring, Controlling, Trigger Tasks through an Android Application. But the drawback is that using an IR based module, we cannot know whether the operation is done correctly or not, however is detected using the environment sensor. The paper also says that they are trying to implement in a bigger scale like whole building or bigger rooms.

    In [5], The paper has described about the controlling and monitoring of home appliances, using an android application using internet, thus controlling the device both in home and remotely, making it easier for physically challenged people, this particular paper uses WiFi (Wireless Fidelity) as connectivity protocol. The paper also describes about usage of Arduino Mega Microcontroller, WiFi module for communicating with the phone, which acts as a bridge between the Smartphone and Arduino Mega. They use an Android SDK based application. The sensors used here are Temperature Sensor, Light Dependent Resistor(LDR) and also includes other components like Servo Motor, Relays, IC MAX232, LCD display and finally a bulb. The WiFi module use here is HLK-RM04. The paper also describes the working of the system developed, in which Arduino is

    interfaced with temperature sensor, rain sensor to control the fan speed, and also status of the fan and lighting equipment is monitored using Android app and also displayed on the LCD display. The android app allows to send the light intensity and fan speed change commands. The paper also aims in providing security to the application using password, username and also aims for using it for large number of devices like Television, Refrigerator


    Here, we use Node MCU, which is a low cost IoT platform running on ESP8266 WiFi System on Chip(SoC). An ultrasonic sensor HC-SR04 can be used to sense the tank water level, which uses sound waves to calculate the distance as s=0.03430*(T/2), where 0.03430 is speed of sound in air in cm/microsecond and T is time taken for transmission and reception of reflected sound wave. A water level sensor, used to sense the water level in sump, is a simple sensor that tells the level of water by sending some voltage value to the Node MCU, which later the NodeMCU interprets as some digital value. The Blynk App, has widgets in it like a display for displaying messages or distance or any parameter, which can be done using NodeMCU command Blynk.virtualWrite(parameter,Message). The point to be noted here is that, we need to download a Blynk library file for Arduino IDE to execute these. The motor is also given manual control, but will be overridden when tank water level is Full or Water in the sump is low. The Node MCU analyzes the water level in the tank and starts pumping when water level in the tank goes below 8cm from the bottom and stops when the water level reaches 25cm from the bottom. The motor is turned on Via a Relay, motor type used is 0.5 HP. The motor also stops pumping whenever the water level in the sump reaches low level or simply, when the value of the sensor reaches below 125 in the ADC value. The Node MCU can be connected to Wifi using Blynk.begin(ssid, password, authorization key), the authorization key allows the app to receive data from Node MCU. The manual control is given in the app using The Relay is connected to one of the virtual pin, which needs to be declared in the program and also must be mentioned in the Blynk app while declaring the switch. A notification is send using Blynk.notify(message) command when tank is empty or full or even when sump is empty.


    The motor turns on whenever the water level in the tank reaches below a certain prescribed level after making sure that the water level in the sump is sufficiently above prescribed level and stops automatically when the tank gets filled up and also when water level in sump reaches below the specified water level. The Blynk app is used for monitoring the water level in tank and sump, it also gives manual turn on command, but is overridden whnever either tank is full or the water in the sump is too low. Notification is also sent to Blynk app when either of the mentioned condition like tank full, tank empty or sump empty occurs with the same message in the notification.


    From the above paper, we can conclude that water is a very scanty resource which must be used effectively and efficiently without wastage. Wired water level controllers have functionality limited to control only when person is home and also requires wiring, which hence gave opportunity for Wireless IoT based water level monitoring and controlling systems.


  1. Suraj S, Bharath V, Sridhar N K, Wireless Automatic Water Level Controller, Third international Conference on Electrical,Electronics ,communication, Computer Technologies and optimization Techniques (ICEECCOT), 14-15 December 2018

  2. Beza Negash Getu, Hussain A Attia, Automatic Water level sensor and control system, Proceedings of the IEEE AFRICON conference, pp. 667-671, 14th to 17th September 2015.

  3. Steven Sachio, Augustus Noertjahyana, Resmana Lim, IoT based water level control system, 3rd Technology Innovation Management and Engineering Science International Conference(TIMES-iCON), 2018.

  4. Dongyu Wang, Dixon Lo, Janak Bhimani, Kazunori Sugiura, AnyControl-IoT based home appliances monitoring and controlling, IEEE 39th Annual International Computers,

    Software and applications conference, 2015

  5. P Siva Nagendra Reddy, K Tharun Kumar Reddy, P Ajay Kumar Reddy, Dr G N Kodanda Ramaiah, S Nanda Kishor An IoT based Home Automation using Android Application, International Conference on Signal Processing, Communication, power and embedded system(SCOPES), 2016


Akshay Sharma A S, is a student of Vidyavardhaka College of Engineering, Mysuru, Karnataka. He was born on 6th of June, currently pursuing bachelor of engineering (B.E) Degree in Electronics and communication from Vishveshvaraya Technological University, Belagavi

,Karnataka, India. Power Electronics and Networking is his area of interest.

Leave a Reply

Your email address will not be published. Required fields are marked *