#include <Keypad.h>
#define row_num 4
#define col_num 4
String password= "654321";
String input="";
char keys[row_num][col_num]={
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};

byte row_pins[row_num]={19,18,5,17};
byte col_pins[col_num] ={16,4,2,15};
Keypad keypad=Keypad(makeKeymap(keys),row_pins,col_pins,row_num,col_num);



void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  Serial.print("enter password");

}

void loop() {
  // put your main code here, to run repeatedly:
  delay(10); // this speeds up the simulation
  char key=keypad.getKey();
  if(key=='#'){
    if(input.compareTo(password)==0){
      Serial.print("access granted");
      while(true);
    }
    else{
      Serial.print("access denied");
    }
    input="";

  }
  else if(key=='*'){
    input="";
    Serial.print("password clear");
  }
  else{
    input.concat(key);
    Serial.print(key);
  }


}
esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK
keypad1:R1
keypad1:R2
keypad1:R3
keypad1:R4
keypad1:C1
keypad1:C2
keypad1:C3
keypad1:C4