Tuesday, December 16, 2025

Water Level Detection & Alert System Using Arduino

Comment errors or corrections found for this circuit, and get the chance to win big!

One of the major problems faced by most countries is the issue of water scarcity in the world. The scarcity is mainly due to the wastage water. There is a need to control the water wastage to save the environment and water resources. A water level monitoring system is one of the techniques to address the control of water wastage. It observes the level of water and provides the information to the registered users through wireless. In view of this, the Bluetooth module-based Water Level Monitoring system is an innovative idea that will inform the users about the level of liquid and will prevent it from overflowing.

The water level monitoring system is an automatic process to detect and indicate the level of water in the reservoirs, overhead tank or any other storage containers, etc. All the householders are storing the water in overhead tanks by using the motor pumps. When the water is stored in the tank, no one can identify the level of water and also, no one can know when the water tank will be filled. So, there is an overflow of water in the tank, which results in wastage of energy and water. To resolve this type of problem by using the implementation of water level monitors and control systems using wireless technology, which will transmit the information to the smart phone and indicate the level of water in the overhead tanks. And also to design a contactless water level indicator and controller using an ultrasonic sensor with DRY PUMP RUN PROTECTION.

If you have been living in Bangalore for a few years, then you are no stranger to floods. Every year during the monsoon, the underground parking of my apartment fills up with water to a point where it is impossible to even start my bike’s engine. What’s worse is that when the water dries out, I have to take my bike to a mechanic for repairs due to water damage. This year, I wouldn’t take any of it. So I decided to build a water level monitoring system which would alert me if the parking got flooded.

- Advertisement -

Circuit Diagram

Water sensor, water level sensor is an easy-to-use, cost-effective, high-level/drop recognition sensor. Operating voltage: Dc3-5v, operating current: Less than 20ma, sensor type: Analogue The MCP3008 10-bit Analogue-to-Digital Converter (ADC) combines high performance and low power consumption in a small package, making it ideal for embedded control applications. 

  • 10-bit resolution
  • Eight single-ended channels
  • SPI interface
  • ±1 LSB DNL
  • ±1 LSB INL
  • 200 kbps sample rate at 5V
  • -40 to +85°C temperature range
  • AEC-Q100 Grade 3

One unique benefit of SPI is the fact that data can be transferred without interruption. Any number of bits can be sent or received in a continuous stream. With I2C and UART, data is sent in packets, limited to a specific number of bits. Start and stop conditions define the beginning and end of each packet, so the data is interrupted during transmission.

- Advertisement -
  • MOSI (Master Output/Slave Input) – Line for the master to send data to the slave.
  • MISO (Master Input/Slave Output) – Line for the slave to send data to the master.
  • MOSI (Master Output/Slave Input) – Line for the master to send data to the slave.
  • MISO (Master Input/Slave Output) – Line for the slave to send data to the master.
  • SCLK (Clock) – Line for the clock signal.
  • SS/CS (Slave Select/Chip Select) – Line for the master to select which slave to send data to. 

Code

The code uses the MCP300 for ADC converter, has needed to be installed using the library manager, then the data from the sensor is converted into the level of water in the loop function. Upload the code by selecting the board and port. The code can be configured for pump on of or light or buzzer-based alert by adding the threshold for the level. The current code is basic; it prints the level in the serial monitor.

Download Source Code

Testing

Power the device, place the sensor in the open serial monitor on Arduino IDE and check out of the sensor based on the water level it give output in the serial monitor.


SHARE YOUR THOUGHTS & COMMENTS

EFY Prime

Unique DIY Projects

Truly Innovative Electronics

Electronics News

Latest DIY Videos

Electronics Components

Electronics Jobs

Calculators For Electronics

×