#include <LiquidCrystal_I2C.h>
#include<string.h>
LiquidCrystal_I2C lcd(0x27,20,4);
int bulb=4;
int fan=3;
void setup()
{
  lcd.init();
  lcd.backlight();
  pinMode(bulb,OUTPUT);
  pinMode(fan,OUTPUT);
  Serial.begin(9600);
  while(!Serial);
  lcd.print(" Home Automation ");
  lcd.setCursor(0,1); 
  lcd.print("    Using PC     ");
  delay(3000);
  lcd.clear();
  lcd.print("Keywords For ");
  lcd.setCursor(0,1);
  lcd.print("Controlling");
  delay(1000);
  lcd.clear();
  lcd.print("1. BULB ON");
  lcd.setCursor(0,1);
  lcd.print("0. BULB OFF");
  delay(1000);
  lcd.clear();
  lcd.print("2. FAN ON");
  lcd.setCursor(0,1);
  lcd.print("3. FAN OFF");
  delay(1000);
  lcd.clear();
}
void loop()
{
  if(Serial.available())
  {
    char ch=Serial.read();
    
    if(ch =='1' || ch =='1')
    {
      digitalWrite(bulb,HIGH);
      Serial.println("The bulb is ON");
     lcd.print("Bulb Turned On");
     delay(3000);
     lcd.clear();
    }
    
    if(ch =='0' || ch =='0')
    {
      digitalWrite(bulb,LOW);
      Serial.println("The bulb is OFF");
      lcd.print("Bulb Turned OFF");
     delay(1000);
     lcd.clear();
    }
    
    if(ch =='2' || ch =='2')
    {
      digitalWrite(fan,HIGH);
      Serial.println("The fan is ON");
     lcd.print("fan Turned On");
     delay(1000);
     lcd.clear();
    }
    
    if(ch =='3' || ch =='3')
    {
      digitalWrite(fan,LOW);
      Serial.println("The fan is OFF");
      lcd.print("fan Turned OFF");
     delay(1000);
     lcd.clear();
    }}
    lcd.setCursor(0,0);
    lcd.print("PUT YOUR CHOICE");
    lcd.setCursor(0,1);
    lcd.print("  0,1,2 and 3  ");
    delay(1000);
    lcd.clear();
}