posted an update

include

include

include

include

include "pitches.h"

define SS_PIN 10

define RST_PIN 9

define SERVO_PIN 3

define R_LED 7

define L_LED 6

define Buzzer 8

LiquidCrystal lcd(A0, A1, A2, A3, A4,A5); Servo DoorLock; MFRC522 rfid(SS_PIN, RST_PIN );

int My_RFID_Tag[5] = {194 ,82 ,19 ,27};

boolean My_Card = false;

int melody[] = { NOTE_C4, NOTE_G3, NOTE_G3, NOTE_A3, NOTE_G3, 0, NOTE_B3, NOTE_C4 };

int noteDurations[] = { 4, 8, 8, 4, 4, 4, 4, 4 };

void setup() { pinMode(R_LED,OUTPUT); pinMode(L_LED,OUTPUT); pinMode(4,OUTPUT); pinMode(2,OUTPUT); pinMode(Buzzer,OUTPUT);

DoorLock.attach(SERVO_PIN);

Serial.begin(9600);

lcd.begin(16,2);

SPI.begin(); rfid.PCD_Init(); } int count=0,ST=0; void loop() {

My_Card = true; DoorLock.write(0); lcd.clear(); lcd.print("HELLO");

if( rfid.PICC_IsNewCardPresent() ) { if( rfid.PICC_ReadCardSerial() ) {
lcd.clear();
lcd.print("UNIQUE ID is:- "); delay(500);
lcd.setCursor(0,1);

      for( int i = 0; i < 5; i++ )
      {
          Serial.print( rfid.uid.uidByte[i], HEX);
          Serial.print(" ");              
          lcd.print( rfid.uid.uidByte[i],HEX);
          lcd.print(" ");                            
      }  
      delay(500);

      for(int i = 0; i < 5; i++)
      {  
          if( My_RFID_Tag[i] != rfid.uid.uidByte[i] )
          {
            My_Card = false;
            break;                
          }           
      }
      Serial.println(); 
      delay(1000); 

      if(My_Card)
      {
        Serial.println("\nWelcome To Your Room");
        lcd.clear();
        lcd.print("Welcome to Your");
        lcd.setCursor(0,1);
        lcd.print("Room");
        delay(2000); 
        digitalWrite(R_LED,HIGH);
        digitalWrite(2,HIGH);
        DoorLock.write(180);            
        delay(200);
        ST=ST+1;                  

        int i = 0;
        while(i < 2)
        {
          for (int thisNote = 0; thisNote < 12; thisNote++) 
          {          

            int noteDuration = 1000 / noteDurations[thisNote];
            tone(8, melody[thisNote], noteDuration);                        

            int pauseBetweenNotes = noteDuration * 1.30;
            delay(pauseBetweenNotes);              

            noTone(8);
          }
          i =  i + 1;
          delay(500);              
        }
        delay(1000);            

        DoorLock.write(180);            
        delay(200);
        lcd.clear();                                    
        lcd.print("Door is Open");
        lcd.setCursor(0,1);
        lcd.print("Now!");
        delay(2000);
        lcd.clear();

        for(int i = 10; i > 0; i--)
        {
          lcd.print("Door will close");
          lcd.setCursor(0,1);
          lcd.print("in ");
          lcd.print(i);
          lcd.print(" Sec.HurryUp!");
          delay(1000);
          lcd.clear();
        }

        DoorLock.write(0);

        delay(200);
        lcd.clear();
        lcd.print("Door is Close");
        lcd.setCursor(0,1);
        lcd.print("Now!");
        delay(2000);                    
      }

      else
      {
        Serial.println("\nGet Out of Here !");
        lcd.clear();
        lcd.print("Card isNOT FOUND!");
        lcd.setCursor(0,1);
        lcd.print("Get Out of Here!");

        for(int i = 0; i < 7; i++)
        {
          digitalWrite(Buzzer, HIGH);
          delay(500);
          digitalWrite(Buzzer, LOW);
          delay(500);              
        }
        delay(1000);            
      }
      if(digitalRead(4)==1){
        count=count+1;
        if(ST==4)
        {DoorLock.write(0);            
        delay(200);
        lcd.print("no space");
        lcd.clear();}
        if(count>4){
        count=count-1;
        if(count=0)
        {digitalWrite(R_LED,LOW);
        digitalWrite(2,LOW);}
        delay(200);}                         
  }      

} rfid.PICC_HaltA(); }}

Log in or sign up for Devpost to join the conversation.