#include"RTClib.h"
#include<LiquidCrystal_I2C.h>
#define I2C_ADDR 0x27
#define LCD_COLOUMNS 20
#define LCD_LINES 4
LiquidCrystal_I2C lcd(I2C_ADDR,LCD_COLOUMNS,LCD_LINES);
RTC_DS1307 rtc;
char daysOfTheWeek[7][12]={"sunday","monday","tuesday","wednesday","thursday","friday","saturday"};
void setup()
{
Serial.begin(115200);
lcd.init();
lcd.backlight();
lcd.setCursor(3,0);
lcd.print("WELCOME TO");
lcd.setCursor(2,1);
lcd.print("SMART AGRICULTURE");
lcd.setCursor(5,2);
lcd.print("IRRIGATION");
lcd.setCursor(7,3);
lcd.print("SYSTEM");
delay(4000);
lcd.clear();
if(!rtc.begin())
{
Serial.println("couldn't find RTC");
Serial.flush();
abort();
}
}
void loop()
{
DateTime now=rtc.now();
lcd.setCursor(3,0);
lcd .print("Time:");
lcd.print(now.hour(),DEC);
lcd.print(":");
lcd.print(now.minute(),DEC);
lcd.print(":");
lcd.print(now.second(),DEC);
delay(500);
if(Serial.available()>0)
{
data =Serial.readString();
Serial.println(data);
data.trim();
if(data=="relay1 on")
{
Serial .println("relay1 is on condition");
lcd.setCursor(0,1);
lcd .print(" relay1 on");
digitalWrite(relay1 , HIGH);}
if(data=="relay1 off")
{
Serial .println("relay1 is off condition");
digitalWrite(relay1,LOW);
}
lcd.setCursor(0,1);
lcd.print("RELAY1:");
lcd.setCursor(10,1);
lcd.print("RELAY2:");
lcd.setCursor(0,2);
lcd.print("RELAY3:");
lcd.setCursor(10,2);
lcd.print("RELAY4:");
delay(1000);
}