#include <IRremote.h>
#include <Servo.h>
#include <FastLED.h>
CRGB leds[0];
int recv_pin = 2;
int btn_value = 0;
int bright = 20;
Servo myservo;
IRrecv receiver(recv_pin);
void setup()
{
receiver.enableIRIn();
myservo.attach(10);
Serial.begin(9600);
FastLED.addLeds<NEOPIXEL, 3>(leds,1);
}
void loop()
{
if (receiver.decode())
{
translateIR();
receiver.resume();
}
}
void translateIR()
{
btn_value = receiver.decodedIRData.command;
if(btn_value == 224){
myservo.write(0);
Serial.println("Door Closed!!");
}
if(btn_value == 144){
myservo.write(180);
Serial.println("Door Opened!!");
}
if(btn_value == 48){
leds[1] = CRGB::HotPink;
FastLED.show();
}
if(btn_value == 24){
leds[1] = CRGB::CornflowerBlue;
FastLED.show();
}
if(btn_value == 122){
leds[1] = CRGB::Amethyst;
FastLED.show();
}
if(btn_value == 16){
for(int i=0; i<=20; i++){
leds[1] = CRGB::Crimson;
FastLED.show();
delay(50);
leds[1] = CRGB::Indigo;
FastLED.show();
delay(50);
leds[1] = CRGB::Navy;
FastLED.show();
delay(50);
}
}
if(btn_value == 2){
bright = bright+40;
FastLED.setBrightness(bright);
FastLED.show();
}
if(btn_value == 226){
Serial.println("Forward - Door Opens");
Serial.println("Backward - Door Closes");
Serial.println("1, 2, 3 - Changes LED Light");
Serial.println("4 - Alarm Blinking");
Serial.println("'+' - Increaes Brightness");
Serial.println("Power - Stops Application");
}
if(btn_value == 162){
Serial.println("Application Stopped!!!");
myservo.write(90);
FastLED.clear();
FastLED.show();
}
}