#include <Arduino.h>
const int waterLevelPin = 34; // Potentiometer connected to GPIO34
const int relayPin = 25; // Relay module connected to GPIO25
const int threshold = 50; // Water level threshold percentage to trigger the relay
void setup() {
Serial.begin(115200); // Initialize serial communication at 115200 baud rate
pinMode(waterLevelPin, INPUT); // Set GPIO34 as input for the potentiometer
pinMode(relayPin, OUTPUT); // Set GPIO25 as output for the relay module
digitalWrite(relayPin, LOW); // Initialize the relay as OFF
}
void loop() {
int waterLevelValue = analogRead(waterLevelPin); // Read the analog value from the potentiometer
int waterLevelPercentage = map(waterLevelValue, 0, 4095, 0, 100); // Map the value to a percentage (0-100%)
Serial.print("Water Level: "); // Print the water level percentage to the Serial Monitor
Serial.print(waterLevelPercentage);
Serial.println("%");
// Control the relay based on the water level
if (waterLevelPercentage > threshold) {
digitalWrite(relayPin, HIGH); // Turn ON the relay if water level exceeds the threshold
Serial.println("Relay ON");
} else {
digitalWrite(relayPin, LOW); // Turn OFF the relay if water level is below the threshold
Serial.println("Relay OFF");
}
delay(1000); // Add a delay before the next reading
}