Hidden Wall Outlet Safe (w/Arduino Lock)
by ASCAS in Circuits > Arduino
62994 Views, 698 Favorites, 0 Comments
Hidden Wall Outlet Safe (w/Arduino Lock)
Stash your valuables where no one will ever suspect. Wall outlets are perfect for stashing valuables since you have tons of them at home. You must be crazy enough to search every household outlet for a secret stash. Probably, no one would even think of searching outlets! :)) BTW, it requires a digital key, such as an Arduino, to open the hidden outlet safe.
The Super Secret Key (a.k.a Suicide Key)
The vault features a key that no one would be crazy enough to insert. That's by plugging a 3 wired prong directly to the outlet! Talk about High Voltage suicide! The lock can only be opened by connecting an Arduino to the servo's pins (located in the outlet). Don't forget, we are using a dummy outlet so it's completely safe since it's not connected to the power-lines.
How Do You Open It:
Plug your DIY 3 pin cable from your vault to your Arduino (a.k.a Suicide Key) then connect your Arduino board to your PC (via USB). Upload the codes then press "CTRL + Shift + M" to access Serial Monitor. Enter "O" to open vault and "C" to close the vault's electronic latch. You can also open this by making a 555 PWM generator.
Influences & Inspiration:
This is probably another déjà vu experience to all Breaking Bad fans. You guys probably remember the scene when Walt hid the ricin capsule behind an electrical outlet during the "Live Free or Die" episode.
Tips & Reminders:
My 2nd version gave me a hard time since all of our wall outlets are embedded in solid concrete. Drywalls are easier to work with since it's easier to cut/ puncture. If you need a larger vault, multi-standard outlets and European outlets are bigger in size. This makes them much more ideal for stashing more stuff in one place.
Watch This Top Secret Vault In Action! [Take that Walter White! :D]
Tools & Materials
Parts & Materials:
- Cheap AC Wall Outlet (w/ Safety Covers)
- Arduino UNO (w/ USB Cable)
- Mini Servo (Tower Pro SG90)
- 3 Pin Long Female Header
- Small Hinge (w/screws)
- Super Glue
- Wires
Tools & Equipment:
- Soldering Iron
- Hot Glue Gun
- Cordless Drill
- Rotary Tool
- Metal File
- Multitool
Disassembling - Saving Some Space
The safety mechanism needs to stay still. Use superglue if necessary.
Removing Protruding Objects
Installing the Hinge
Making Way for the Hinge
Epoxy the Servo (Lock Mechanism)
Hot glue the servo's 3 pin plug on the wall outlet's safety mechanism.
Grinding the Terminal Box
Be sure to grind it in a slightly slanted manner. This helps the servo's arm to have a better grip on the terminal block.
Establish a Connection With Your Servo
2nd.) Follow your servo's datasheet and connect the wires to the proper Arduino pin.
3rd.) Yellow Wire - To Digital Pin #9
4th.) Brown Wire - Ground Pin
5th.) Red Wire - 5v Pin
Watch the video for more detailed instructions :D
The Arduino Codes
1st.) Download the codes below then upload the sketch/ codes to your Arduino
2nd.) Press "CTRL + Shift + M" to open the serial monitor
3rd.) Enter "O" top open latch - "C" to close latch
Suggestions, Tips & Tricks:
1st.) Use tact buttons + digital pins, instead of using the PC's serial monitor.
2nd.) Add a auto-lock delay for the servo to close automatically after opening.
_________________________________________________________________
The Raw Codes (if you are too lazy to download the sketch):
//Coded By: Angelo S. Casimiro (a.k.a ASCAS)
//Copyright Rule Applies - Attribution Non-commercial Share Alike (by-nc-sa)
//Instructions:
//Press "CTRL + Shift + M" to access serial monitor
//Enter: 'O' To Open Lock - 'C' To Close (not case sensitive)
#include
Servo myservo;
char gar;
//------------------Setup---------------------
void setup() {
myservo.attach(9); // Connect Servo To Pin #9
Serial.begin(9600);
Serial.print("Enter: 'O' To Open Lock - 'C' To Close \n");
}
//------------------Loop---------------------
void loop() {if(Serial.available()){gar = Serial.read();Serial.println(gar);Serial.println("\nEnter: 'O' To Open Lock - 'C' To Close ");delay(1000);}
if (gar == 'c' || gar == 'C' || gar == 'close'){ //If "C" is entered, close the latch
myservo.write(0);
/*myservo.write(150);delay(5000); //Command servo to auto-lock after 5 secs.
[Remove this comment tag for Servo Auto Lock Code - Suggested by: marhar]
*/
}
else if (gar == 'o' || gar == 'O' || gar == 'open'){ //If "O" is entered, close the latch
myservo.write(150);
}
}