Knock Knocking to Unlock

Fall 2016 ||| Skills: rapid prototyping (cough, learning on the fly), physical computing, research, AfterEffects CC ||| URL: coming soon

Note: This page is in progress

The Knockinglock is a novel authentication method and interactive system built to relieve the user of any extraneous cognitive burden. I am currently working on making a more robust working demo for presentation at the 2017 TEI (tangible embedded interactions) Design Conference in Japan. The research paper, co-authored with Gautam Bose, under the advisement of Austin Lee and Peter Scupelli, will be published and available then.

Our submission was a combination of individual projects. We focused on the knocking to unlock feature from my individual design and the adaptability of Gautam's custom door opener to existing systems. Above is a 30 second sneak peek I made from a compilation of our projects for the conference application.

My initial prototype video is below.

Rapid prototyping was done with LittleBits and IFTTT through the cloudBit to access the internet and recieve data from the IOS location API.

The problem space:

An intuitive system for smart security devices grew around removing the cognitive load and anxiety off of the user. In the studio, security is especially stressful because one is not only responsible for protecting their own possessions, but everyone else's as well as the professor's. Shared spaces have an interesting dichotomy between security and the need for easy fluidity of ownership. With a traditional key based system, students often get locked out, and the risk of compromising security is as easy as losing one key. If just one copy was lost, all keys would then have to be replaced and the lock changed. A smart locking system would be adaptable.

The proposed solution:

When a person gets to a door and wants to get in, what do they do? They knock. In our system, the user’s specific knock pattern authenticates their identity, and opens the door for them. The system empowers people’s intuitive actions and responses to affect the world around them in a new way. We leverage IOT, and physical computing to make more technology feel like less. From there, the system of a knock based entrance creates affordances in social interaction for shared spaces wherein ownership fluidity and accessibility needs are balanced with security.

My first iteration was to re-engineer how my tabaret cabinet locked. Process sketches below

I didn't need the key in place at all. I took the cabinet apart, removed the old locking mechanism and replaced it with the servo motor

Below is some early experimentation

First iteration had the motor turning the key from the outside of the tabaret. The motor attached to the key like above would've been hidden under a cover. In this case, I made a unicorn head cover for comic relief (as seen in my sketches above)

Even with a cover, it wasn't a clean, secure solution so I looked into installing the motor inside the cabinet cover

An IFTTT applet was made for rapid testing. Texting #in and #out unlocked and locked the cabinet accordingly. IFTTT was also used later on to trigger servo motor movement according to sound input through one of the LittleBit sensors.

The unfortunate limitation of IFTTT is that nested conditionals aren't feasible and the IOS location API is slow to update and lags behind. The knocking to unlock feature was meant to be available only when the authorized user location is in the immediate area.

The iteration we are preparing for presentation in Japan this spring will be built with piezzo electric contact sensors, and servo motors running on the a Processing built program on a Rasberry PI.Details are available in our paper.

Moving forward, these are some of the major challenges we hope to solve in our working demo design

Knock Pattern input system:

  • How do we account for changes in tempo?
  • How will people input patterns?
  • If it's through web or mobile app, how does the system get familiar with the unique properties of the material the knocks will occur on?
  • How secure would these other platforms be?
  • How will multiple password knocks be managed?

Rhythm recognition:

  • What does it mean to match a knock pattern? In timing, tempo, or proportional relationships between knocks?
  • How exactly does the knock have to match the password pattern before it is too much of a hassle to use?
  • What are the possible ways the sound waves might be interpreted incorrectly for knock recognition?
  • Under what conditions will the "knock" to unlock feature be available to operate and how secure would it be?

Physical Opening System:

  • How might each opening contraption be easily customized to unique doors/entrances?
  • How will the sensors be calibrated to different material?
  • Should the system be adaptabe to existing infrastructures?
  • How will it be powered? No one wants more wires, least of all on their doors and cabinets

Social Structure:

  • How will "ownership fluidity" work with the knock system in a shared public space?
  • How might people share the password?
  • How will security be maintained when a large group is using the system?
  • How might the system create affordances for crowd sourced control be used?
  • What are the possible impacts?

Try inputting a rhythm yourself to see how consistent your knocks are!

You'll notice that if you tried a more complicated rhythm with long wait periods between knocks, there was less consistency in timing between each time you input anything.

It is not enough for there to be a threshold for a timing error, so the program recognizes rhythm independent of tempo by focusing of on proportional relationships of the intervals between knocks.

Once the pattern has been entered multiple times, the program exports a JSON file containing the average intervals between knocks, the average ratio of each interval compared to the following interval, and the standard deviation of such ratios.

The algorithms to assess such relationships are under development. Testing of sound input consistency through piezo sensors and door materials has to be done.

New customizeable model is in progress

Social Implications

For the mobile platform we hope to build, there is the possibility of having different settings to temporarily allow someone to use a certain pattern at the door while the usual authorized user has their phone in a different location. A group notification system for all authorized users — if the lock was for a shared space — would allow for a certain degree of crowd sourced control.

Further aside, the action of knocking itself has social implications. Knocking to enter is like identifying yourself and asking permission to enter. Announcing one’s intention to enter is completely counterintuitive for any trespasser and an implicit security measure. Other possible ramifications is negating the need for a stranger detector at your door; there’s easy recognition of either identity, or identity of who gave the user permission to enter. For shared public yet private spaces, the system has opportunities for fluid ownership; after all, sharing a knocking pattern (much like one would a secret handshake) is easier than giving out and keeping track of a key.


Current concerns for the design centers around security. The location based activation of the knock feature is dependent on the user’s mobile devices location data. That being said, we found IOS location updates through IFTTT were slow to update in a timely manner. Other possible passive security measures could be achieved through various near field communications methods. The idea of semi-passive RFID tags on authorized users was brought up, but having a tag brings back the cognitive burden of having to keep a physical “key” like item to gain entrance.