// Create "two" new keypads, one is a entry pad and the other is a programming pad.
Keypad entryPad( makeKeymap(PadKeys), rowPins, colPins, sizeof(rowPins), sizeof(colPins) );
Keypad setPad( makeKeymap(PadKeys), rowPins, colPins, sizeof(rowPins), sizeof(colPins) );
But, you only have one piece of hardware. Why are there two instances that refer to the same hardware?
const byte ledPin = 11;// Programming LED, flashes when in program mode
const byte ledPin1 = 13; //Green LED, correct code + key press
const byte ledPin2 = 12; //red LED, Error
Three LEDs - nothing, 1, and 2. I don't get it.
Password password = Password( "5555" ); //Default password 1
Password password2 = Password( "4321" ); //Default password 2
Two passwords - nothing and 2. I don't get it.
char Password2[5]; //Array used to set password #2
Variable names that differ only in case are a really bad idea.
setPad.addEventListener(keypadEvent_set); // Add an event listener for programming mode
entryPad.addEventListener(keypadEvent_entry); // Add an event listener for entry mode
When a key is pressed on the hardware, which callback do you want called?