Homekit Secure KeyPad

By admin 8 comments

First KeyPad to allow You secure access to Your homekit accessories and scenes.

Now You can use PIN codes for automation running like comming home or door opening.

Thanks to OTP, you can provide access to a cleaner or postman:)



This is homekit enabled device that creates 2 Sensors to automate scenes.

For example if good PIN is entered run automation that open homekit-lock or disarm alarm or both 😊

You can create another for wrong pin entered for example “Push” notification or make snap from camera mounted on front door.

You don’t need to use Your phone APP to secure run automation from outside of Your Home. It can be mounted on froont door for example

Why it’s Secure

Because everybody can have access to it or even still it, I focus to protect code and PIN’s. So similar to password database all pins are HASH with SHA256 function and salted with random seed.

Even if someone get Your device it’s very vary hard to  recover PIN’s.

What for:

          To store 8 PIN’s (max 10 digits each) for all Your family

          To store one OTP (One Time Passcode)

          To get OTP easy direct from You phone (need Eve APP)

          For easy management with webPanel

           For FUN or to create electro-lock (with my other firmware coming soon) for fridge and FOOD supervised access management  😊

Now it’s working with Matrix Keyboard 4×4 becouse i only have that one, already order 4×3 as shown in the gallery so i’ll update firmware soon.

Now 4×4 keyPad working only with first 3 columns.

How it works:

After successful flashing and home pairing open EVE application and allow access to webPanel.

Go to http://[KEYPAD_IP]:88/panel 

 And add Your secret keys.

On key pad enter PIN and click “#” (3-col 4-row), system will check if You enter correct PIN and trigger right sensor.


If You want to get OTP code got to EVE app and run option “Get OTP”. Code will be displayed in EVE App on OTP characteristic.

OTP after first use will be deleted from memory.



On wemso D1 mini or nodeMCU use:

C1 = D3
C2 = D2
C3 = D1
C4 = D0

R1 = D5
R2 = D6
R3 = D7
R4 = D8

On other boards like Arduino:

C1 = GPIO0
C2 = GPIO4
C3 = GPIO5
C4 = GPIO16

R1 = GPIO14
R2 = GPIO12
R3 = GPIO13
R4 = GPIO15

Notify of
Oldest Most Voted
Inline Feedbacks
View all comments
2 months ago

Hi, I really like this! Can one use multiple Keypad devices in one HomeKit system? I just flashed a second ESP and it works ok in WiFi, I just cannot pair it to the HomeKit system.

Reply to  admin
2 months ago

Using the same HomeKit code (11111111), it allows me to register the 2nd device if I disable the 1st but afterwards both don’t work…
If I don’t disable the 1st I cannot register the 2nd because it says its already registered… somehow the 2 devices are not seen as different ones by HomeKit.
If I unplug one the other works.

Last edited 2 months ago by Oliver
Reply to  admin
2 months ago

I just saw the 2 devices also have the same serial number…

Reply to  admin
1 month ago

The file has zero bytes…

Reply to  admin
25 days ago

Hi, can you pls re-upload? The file is empty!