#include <IRremote.h>
#include <LiquidCrystal_I2C.h>
#define relay1 17
#define relay2 19
#define relay3 18
#define relay4 5
#define recv 4
IRrecv recv_pin(recv);
LiquidCrystal_I2C lcd(0x27, 20, 4);
void setup() {
pinMode(relay1, OUTPUT);
pinMode(relay2, OUTPUT);
pinMode(relay3, OUTPUT);
pinMode(relay4, OUTPUT);
lcd.init();
lcd.backlight();
//write code to enable the IR receiver here
recv_pin.enableIRIn();
recv_pin.blink13(true);
}
void loop() {
lcd.setCursor(0, 0);
lcd.print("Status:");
if(recv_pin.decode()){
//write code to store the decoded IR receiver data in response variable
//int response=recv_pin.decodedIRData.command;
String response = String(recv_pin.decodedIRData.command);
if(response=="48") { // NUM 1 BUTTON
digitalWrite(relay1, HIGH);
lcd.setCursor(0, 2);
lcd.print("LED1 ON");
}
else if(response=="24"){ //NUM 2 BUTTON
digitalWrite(relay2, HIGH);
lcd.setCursor(0, 2);
lcd.print("LED2 ON");
}
else if(response=="122"){ // NUM 3 BUTTON
digitalWrite(relay3, HIGH);
lcd.setCursor(0, 2);
lcd.print("LED3 ON");
}
else if(response=="16"){ // NUM 4 BUTTON
digitalWrite(relay4, HIGH);
lcd.setCursor(0, 2);
lcd.print("LED4 ON");
}
else if(response=="162"){ //POWER OFF BUTTON
digitalWrite(relay1, LOW);
digitalWrite(relay2, LOW);
digitalWrite(relay3, LOW);
digitalWrite(relay4, LOW);
lcd.setCursor(0, 2);
lcd.print("LEDS OF");
}
recv_pin.resume();
}
}