

The Water Level Sensor is a device designed to detect and measure the level of water in a tank, reservoir, or other liquid-containing systems. It is commonly used in automation systems to control water pumps, trigger alarms, or monitor water levels in real-time. This sensor is an essential component in applications such as water management systems, irrigation systems, and home automation projects.








The Water Level Sensor typically consists of a series of conductive traces that detect water levels based on conductivity. Below are the key technical details:
| Parameter | Value |
|---|---|
| Operating Voltage | 3.3V - 5V |
| Operating Current | < 20mA |
| Output Type | Analog and Digital |
| Detection Range | 0 - 100% water level (relative) |
| Dimensions | ~65mm x 20mm |
| Interface | 3-pin (VCC, GND, Signal) |
| Pin Name | Description |
|---|---|
| VCC | Power supply pin. Connect to 3.3V or 5V. |
| GND | Ground pin. Connect to the ground of the circuit. |
| Signal | Output pin. Provides an analog voltage proportional to the water level or a |
| digital HIGH/LOW signal depending on the water level and threshold settings. |
Connect the Sensor:
VCC pin to a 3.3V or 5V power source.GND pin to the ground of your circuit.Signal pin to an analog input pin (e.g., A0) or a digital input pin on your microcontroller.Read the Output:
Signal pin using an analog input pin on your microcontroller. The voltage will vary based on the water level.Signal pin will output HIGH (1) when water is detected and LOW (0) when no water is detected.Set Thresholds (if applicable):
Below is an example of how to use the Water Level Sensor with an Arduino UNO:
// Define the pin connections
const int signalPin = A0; // Analog pin connected to the Signal pin of the sensor
const int ledPin = 13; // LED pin to indicate water level
void setup() {
pinMode(ledPin, OUTPUT); // Set LED pin as output
Serial.begin(9600); // Initialize serial communication
}
void loop() {
int waterLevel = analogRead(signalPin); // Read analog value from the sensor
// Print the water level to the Serial Monitor
Serial.print("Water Level: ");
Serial.println(waterLevel);
// Turn on the LED if water level exceeds a threshold
if (waterLevel > 500) { // Adjust threshold as needed
digitalWrite(ledPin, HIGH); // Turn on LED
} else {
digitalWrite(ledPin, LOW); // Turn off LED
}
delay(500); // Wait for 500ms before the next reading
}
No Output from the Sensor:
Signal pin is connected to the correct input pin on the microcontroller.Inconsistent Readings:
Digital Output Not Triggering:
Sensor Corrosion:
Q: Can this sensor detect liquids other than water?
A: The sensor is designed for water detection and may not work reliably with non-conductive liquids like oil or distilled water.
Q: How do I clean the sensor?
A: Gently wipe the sensor with a soft, damp cloth. Avoid using abrasive materials or harsh chemicals.
Q: Can I use this sensor with a 3.3V microcontroller?
A: Yes, the sensor operates within a voltage range of 3.3V to 5V, making it compatible with 3.3V microcontrollers like the ESP32.
Q: What is the maximum depth the sensor can be submerged?
A: The sensor should not be submerged beyond the conductive traces to avoid damage. Check the manufacturer's guidelines for specific depth limits.