#include #include LiquidCrystal_I2C lcd(0x27,16,2); int sensor_pin = 2; //Sensor Pin int relay_pin = 8; //Relay Pin int relay_pin1 = 9; void setup() { Serial.begin(9600); lcd.init(); lcd.backlight(); lcd.setBacklight(HIGH); pinMode(sensor_pin, INPUT); pinMode(relay_pin, OUTPUT); pinMode(relay_pin1, OUTPUT); } void loop() { int sensor_data = analogRead(sensor_pin); Serial.print("Sensor_data:"); Serial.print(sensor_data); Serial.print("\t | "); if(sensor_data > 950) { Serial.println("No moisture, Soil is dry"); digitalWrite(relay_pin, LOW); digitalWrite(relay_pin1, LOW); lcd.clear(); // clear display lcd.setCursor(0,0); lcd.print("Soil Dry "); lcd.setCursor(0,1); lcd.print("Motor ON buzon "); } else if(sensor_data >= 400 && sensor_data <= 950) { Serial.println("There is some moisture, Soil is medium"); digitalWrite(relay_pin, HIGH); digitalWrite(relay_pin1, LOW); lcd.clear(); // clear display lcd.setCursor(0,0); lcd.print("Soil Medium"); lcd.setCursor(0,1); lcd.print("Motor OFF"); } else if(sensor_data < 400) { Serial.println("Soil is wet"); digitalWrite(relay_pin, HIGH); digitalWrite(relay_pin1, HIGH); lcd.clear(); // clear display lcd.setCursor(0,0); lcd.print("Soil Wet "); lcd.setCursor(0,1); lcd.print("Motor OFF buzof"); } delay(100); }