#include <Keypad.h>
const byte ROWS = 4;
const byte COLS = 4;
char keys[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte rowPins[ROWS]={14,27,26,25};
byte colPins[COLS]={33,32,23,22};
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
String correctPin="A0620#";
String enteredPin="";
int relay = 21;
void setup() {
Serial.begin(115200);
pinMode(relay,OUTPUT);
}
void loop() {
char key = keypad.getKey();
if(key){
Serial.print("Key Pressed: ");
Serial.print(key);
if((key >= '0' && key <= '9')||
(key >= 'A' && key <= 'D')||
key == '*'|| key == '#'){
enteredPin += key;
}
if(enteredPin.length()==6){
if(enteredPin==correctPin){
Serial.println("ACCESS GRANTED");
digitalWrite(relay,HIGH);
}
else{
Serial.println("ACCESS DENIED");
digitalWrite(relay,LOW);
}
enteredPin = "";
}
}
}