TechieYan Technologies

Flood Detection System

flood detection system using arduino project by TechieYan Technologies


Floods always occur unexpectedly and are unpredictable. As today’s technologies are growing up, it helps the lifestyle  of people become easier. This Flood Detection System technology helps to watch and give warnings to people facing floods. By using one of the newest microcontroller technologies which are Arduino Uno R3,  this technique  can be developed. Combining hardware and software, this technique needed some programming parts for interfacing. The water level sensor is employed  to send the signal to The microcontroller board for signal analysis into the output

In this project, a flood detector system is made. The flood detector system was built to sense the water level. This technique will be located at a strategic place with a suitable unit like a pole. The system is additionally built with a monitoring system that tells us the water level in the area. This provides the early measurement of water to the public without the need to go to the nearby areas that have a high probability of being affected by the flood. Besides monitoring and detector systems, a warning system is going to be built together that can inform citizens around the area.


Floods are natural disasters that can happen many times and are unpredictable. Many people died and there was a loss of economic property. This is confirmed by recent data until November 2016 declared a flood disaster often occurs in Indonesia with 713 incidents and the number of incidents with casualties dead and missing reached 140 people. Take the example of frequent floods in the Balendah region, Bandung District, West Java where two residents of Bandung regency were killed and three others were swept away by floods. Floods can happen at any time of the year when water overflows from a lake, river, or other body of water. Flooding may be extremely dangerous because when it occurs in a neighbourhood where people live, the water carries along items like homes, automobiles, furniture, and even people. It can remove large objects like trees, real estate, and more. This project involves building a flood detection system. The water level can be sensed via the flood detection system. With a suitable unit, such as a pole, this technique will be placed in a strategic location. A monitoring system that provides information on the local water level is also included into the system. The public can now access early water measurements without having to travel to local locations with a high likelihood of being flooded. Along with monitoring and detecting devices, a warning system that can alert nearby residents is also scheduled to be constructed.

Components Required

Hardware Requirements

  • Arduino Uno : Arduino Uno is a microcontroller from the Arduino Family. It was developed by Arduino. cc and is based on the Microchip ATmega328P microcontroller. Uno has 20 I/O pins, 6 are analog pins and 14 are digital pins.
Arduino for flood detection system

For more details,  pinout and datasheet, you can visit :

  • Water level sensorit is used to detect the level of substances that can flow.
  • Buzzer: An Audio Signalling Device. Buzzers can be mechanical, electromechanical, or piezoelectric. It produces an alarming sound when triggered. Used in various applications like Game buzzers, Alarm Buzzers, Trains, etc.
  • LED: LED stands for the light-emitting diode.LED lighting products produce light.

Software Requirements

  • Arduino Ide : Arduino IDE (Integrated development environment) is software that is used to dump the program into boards. Arduino- IDE’s primary use is to build electronics-related projects. Arduino is an open-source platform simple and easy-to-understand platform for coding.


Block diagram

The block diagram describes the relationship between the input devices and output devices. Here, in this case, the input device is a water level sensor that sends the information to Arduino where the output is transmitted to specific devices such as  a buzzer  and leads these devices to receive the information from the Arduino which is given by input devices.

flood detection system block diagram

Flow Chart

A flowchart is a diagram that shows a process of individual steps in their proper order, similarly, the following flowchart tells about the steps involved in the project and the sequential flow of the code also. So as it starts, first, it reads the sensor’s value if the water level sensor’s value is greater than the given condition then turns on the buzzer, and else it will be turned off.  

flood detection and alarm system flow chart

*website used to make Flow Chart and Block Diagram :

Pin Wiring


Buzzer has 2 pins GND pin and a Digital pin where the GND is connected to the GND of the Arduino Uno. The Digital pin is connected to the D12 of the Arduino Uno.

buzzer pin connections for Flood detector system


The LED has 2 pins positive and Negative where the positive pin is connected to the 5V with a resistor of the Arduino Uno. The Negative pin is connected to the GND of the Arduino Uno.

LED pin connections for flood detector and warning system

Water Level Sensor

Water level sensor has 3 pins GND pin, VCC pin, and a SIG pin where the GND is connected to the GND of the Arduino Uno. The VCC pin is connected to the D5 of the Arduino Uno. The SIG pin is connected to the A0 of the Arduino Uno.

water level sensor pin connections with arduino for flood detector project.

Circuit diagram

Note: make sure to take proper precautions while connecting the components.

circuit connection of flood detection and alarm system


The water level sensor measures the level of the water, if the water level is exceeded it gives an alert immediately. then LED and Buzzer will be in On condition. else it remains off. 


Hence, We developed a flood detection system. Our approach presents unsupervised floods. This systematic approach can be useful in coastal areas during rainy seasons.

Working Code

#define sensorPower 7                           //water level sensor pin connecetd to pin 7 of Arduino 
#define sensorPin A0                            //water level sensor pin connecetd to pin A0 of Arduino 
int val = 0;                                    // interger Val is for storing of water level sensor 

void setup() {
  pinMode(sensorPower, OUTPUT);                  // Set D7 as an OUTPUT
  digitalWrite(sensorPower, LOW);                // Set to LOW so that no power flows through the sensor

void loop() {
  int level = readSensor();                        //get the reading from the function below and print it
  Serial.print("Water level: ");

int readSensor() {                                  //This is a function used to get the reading
  digitalWrite(sensorPower, HIGH);                  // Turn the sensor ON
  delay(10);                                        // wait 10 milliseconds
  val = analogRead(sensorPin);                      // Read the analog value form sensor
  digitalWrite(sensorPower, LOW);                   // Turn the sensor OFF
  return val;                                       // send current reading

If You Face Any Issue Feel Free To Contact us Any Time.

+91 7075575787