Secret Knock Safe

Summer 2017
Microcontroller, LED Matrix, Sensors
Digital Circuits Cumulative Project

We built, coded, and tested a digital safe that can be unlocked with a secret knock.

Project Requirements

The theme for our class was "Security". With our project, we had to include timers, interrupts, and hardware/sensors.

Even though we used Arduino for this project, we were required to create our own custom Timer code to be used for interrupts and timing.

Components Used

  • 1 x Arduino Uno
  • 64 x LEDs
  • 1 x Piezoelectric sensor
  • 1 x Ultrasonic sensor
  • 8 x 420R resistors
  • 1 x Pushbutton (for debugging)
  • 1 x Servo motor


Piezoelectric sensor: We used this sensor to identify knocks by way of vibration. We taped the piezo element to the underside of the knocking surface. We calibrated the sensor by looking at the output from knocking and setting a "knocking threshold".

Ultrasonic sensors: We used the ultrasonic sensor to determine when a person was in front of our safe. It determined distance by taking half of the speed of sound from an identified object. If the user stepped away from the safe at any time, it would shut off.

LED Matrix

We used an LED Matrix to indicate success or failure of a knock attempt. If the user entered the incorrect knock sequence, the safe flashed red and locked for 5 seconds before another attempt was allowed. If the user entered the correct knock sequence, the LEDs flashed blue and the safe opened.