Picture of Secret Knock Detecting Door Lock
Protect your secret hideout from intruders with a lock that will only open when it hears the secret knock.

This started out as a bit of a joke project, but turned out to be surprisingly accurate at judging knocks. If the precision is turned all the way up it can even detect people apart, even if they give the same knock! (Though this does trigger a lot of false negatives, which is no fun if you're in a hurry.)

It's also programmable. Press the programming button and knock a new knock and it will now only open with your new knock. By default the knock is "Shave and a Haircut" but you can program it with anything, up to 20 knocks long. Use your favorite song, Morse code, whatever.

Maybe a video will explain it better:

Important Notes:
(I hate to even have to say this, but since someone's going to say it, I'll say it first:)
1) This is for entertainment purposes only. Really. This decreases the security of your door by adding another way to unlock it, and it makes your unlock code known to anyone who can hear. If you put this on your door, be sure to carry your key too. The batteries might die, the suction cups might fail or you might forget your knock. Don't complain to me if someone imitates your knock and steals all your stuff, you've been warned.

For obvious improvements to safety, security and whatever, see the final page of the Instructable.

2) This is not a project for a beginner! Read through it carefully and be sure you understand it before you start! I will not take time to answer questions that are already in the instructions or from people who have gotten in over their head.

(If you think this project is too complex you might go here and sign up for the kit mailing list. The kits will be much more simple than this.)

Sorry about that. Now that that's out of the way, lets get to work.
1-40 of 324Next »
VisionaryNutcases made it!8 months ago

My version is installed in a fridge and using an electromagnetic lock - keep those office thieves away!




Krizbleen made it!8 months ago

Guys - thank you for this tutorial! I used the code to program a secret sliding library door project and it works great. The secret knock is the part people like the best. People giggle when I show it to them. I owe you a beer!


Grathio (author)  Krizbleen8 months ago
Fantastic work! I love how well the bookshelf hides your secret room. Never would have guessed it was a pocket door.

Thanks for sharing!
KGuy1 year ago

Here we are! Finally done after months of procrastination! I added a buzzer and a third led (not in the picture). The code was changed very slightly but it works perfectly. A latch in the back hangs it on the door. I must thank you, however for the genius of this invention.

Eloisa CamelM KGuy10 months ago

hi sir, how did you do this one. where do i put the new code for the led and the piezo.. please, needed for a presentation, our prof. did not give us enough time to master this. and it serves as our final exam.. thank you in advance..

Grathio (author)  KGuy1 year ago

Beautiful work! Thanks for sharing!

Matienzo1 year ago

here is my little one in an iphone box

vinny034 years ago
I have modified the Arduino code to add the functionality of ''Users''. What it does is that it let you program a secretCode for four users. For example: If you push the button X times, after 4 seconds the green LED will blink X times and then you enter program mode (simply do your secret code). I also added the functionality to take a picture when your sequence is bad with LabVIEW and a WebCam camera. Then the picture is saved in my folder and pictures are incrementing with numbers.
Circuit sur porte.JPGMontage.JPG
Grathio (author)  vinny034 years ago
Looks great, and really nice added features! I had done a version with his & hers knocks, but this goes well beyond that!

Fantastic job!
bserrato4 years ago
I saw your project some time back and I thought it was great. I decided to take it and improve on it, the result was a system that locks and unlocks. Also if a person inputs an incorrect knock, the system will send a signal via bluetooth to a computer terminal to snap a picture and save it.


Check out the vid. Hope you like it.
Grathio (author)  bserrato4 years ago
That really made my week! It looks fantastic and works great. And the bluetooth camera is a great idea of added security.
josiasfilho5 years ago
Hi Steve!
As you know, I already started to do mine, with a few modifications. I uploaded a new video with a new option:

As soon as I finish my project I'll post the code online
Did you finish yet?  Can't wait to see the code.
Grathio (author)  josiasfilho5 years ago
Fantastic work with the servo and the unlock option.  (And an off switch!)

It looks like your setup is really sensitive.  Really nicely done! Your achievement patch is on the way!
TheBestJohn5 years ago
I have been playing around with this code for the past hour or so and found out how you can hard code in your own rhythm if need be.... at the part that looks like this
// If we're recording a new knock, save the info and get out of here.
  if (digitalRead(programSwitch)==HIGH){
      for (i=0;i<maximumKnocks;i++){ // normalize the times
        secretCode[i]= map(knockReadings[i],0, maxKnockInterval, 0, 100);

add this little guy
and open up your serial monitor....
make sure you un-commented the serial begin up at the setup and then it should spit some numbers back at you... put these numbers into the array and enjoy.
Whoot finally got my relays for my motor and heres a neat little Idea for your visual feedback....

Grathio (author)  TheBestJohn5 years ago
Oh, and for your awesome work you have been added as an official Master of Secret Knocks.  Your patch is on its way!
Grathio (author)  TheBestJohn5 years ago
 This is awesome!  Thanks for sharing your code and video.  Having the door unlatch too makes it that much more mysterious.  And I like the feedback through the peephole.

Great work!

And if I ever have any questions about taping something to something else I'll be asking you. :)
4B-24N20 hours ago
i would use it in the school locker
4B-24N2 days ago
how to open it inside ?
4B-24N3 days ago

how to control inside?

xezark7 days ago
keyless15 days ago
2illickans28 days ago
KiwoongW1 month ago

I really want to see a code and parts list . Can you give me a code and parts list?
Thank you

KiwoongW1 month ago
WilliamL221 month ago
FadiJ1 month ago
Great job
Pedro PauloL2 months ago

First of all, congratulations for this nice project.

Grathio, i'm a Brazilian student and i'm going to develop a similar object using Arduino at school, but i have one doubt. How can i use a digital knock sensor instead an analog piezo sensor? Is it very difficult to convert your code (using analog entries) to a code with digital entries(like ky-031)?


mouse232 months ago

Here's an adjunct idea for those more paranoid. As long as an arduino is employed, one can add an keypad for entering a secret code. But the code is not correct if it is not punched in on the right cadence.

For the lock clamp...why not get a large piece of PVC (large enough to encompass the lock), and then fill the innards with some sort of hardening putty. Press your lock knob into the putty enough to make a perfect indent, then let the putty harden. Then mount the motor to this somehow. Or you could use putty to make a mold of your knob, and make it from something stronger, like cast aluminum.

bobelon2 months ago

Geeeze, Just when I was about to give up on instructables because of the endless dumbass projects using duct tape and making fudge this brilliant piece of irreverent mind expansion comes along - faith restored - thanks!


Nice, you should enter it in the home automation contest!

can we use arduino uno for knock detecting door lock system?

Yes, any Arduino should be able to handle this. Are you asking if the Arduino can detect if the lock is engaged/on?

Harrylorence2 months ago
Your schematics is the clearst i have ever seen...u rock..ur r an awesome inventor...love u
PierrotT made it!3 months ago

Hi, thank you for this instructables !

I have change the motor with an Servo, and an Arduino Nano in a little box.

I will use it for a Geocache ;)

2015-05-28 17.17.28.jpg2015-05-28 17.18.00.jpg
1-40 of 324Next »