Desk Panic Button
When I was a kid my father had a panic button under his desk that was wired to call 911. While I thought this was pretty cool at the time, it later occurred to me that he had this because the neighborhood that his business was located in was a bit rough, and -- perhaps -- we were in perpetual danger. Nonetheless, I always thought the idea of having a panic button was pretty darn neat. Perhaps this notion stuck with me for so long of a time because I was never allowed to press it as a kid. It was 'off limits,' and thus a very appealing idea.
Now that I am an adult and have a desk of my own, I resolved that I too needed a panic button. However, I feel like one that calls 911 has limited use in my line of work, and my opportunity for panic was probably less severe. So, I decided that I needed to tone it down a bit. The under desk panic button that I have created dials my own phone when it's pressed.
Of course, you may be wondering why on Earth I would want to call my own phone. Think of this way -- an annoying coworker walks over to your desk with the intention of locking you into a long dull impromptu meeting. You have nowhere to run; nowhere to hide. There is only one way to get out of this -- you need something more important to do. Perhaps now you can see how a device that places a call to yourself may come in extremely useful. If you still can't see it, picture this; Your phone rings. You explain that you need to take this important call. In fact, this is going to take a while. You will need to continue this conversation later. Crisis averted thanks to the Desk Panic Button.
Go Get Stuff
You will need:
(x1) Arduino Uno
(x1) GPRS shield
(x1) SIM card
(x1) CR1220 coin battery
(x1) Momentary button switch
(x2) 1/8" mono jacks
(x1) 1/8" male to male mono cable
(x1) Power jack
(x1) Power plug
(x1) 1" x 2" x 3" project enclosure
(x1) 2" x 2.5" x 5" project enclosure
(x1) 9V power supply
(x1) 12" x 12" x 1/8" acrylic sheet
(x2) 1" x 6-32 wood screw
(x1) 1" x 4-40 nut and bolt
(Please note that some of the links on this page contain Amazon affiliate links. This does not change the price of any of the items for sale. However, I earn a small commission if you click on any of those links and buy anything. I reinvest this money into materials and tools for future projects. If you would like an alternate suggestion for a supplier of any of the parts, please let me know.)
Prep the Shield
Plug the CR1220 battery into the socket on the GPRS shield, and insert the SIM card.
Insert
Insert the GPRS shield into the Arduino.
Drill
Drill a 1/4" hole centered and the 1" x 2" side of the smaller project box.
Drilll a 1/2" hole centered on the other 1" x 2" side.
Pushbutton
Insert the pushbutton into the 1/2" hole and fasten it in place with its mounting nut.
Jack
Insert the 1/8" jack and fasten it into place with its mounting nut.
Drill
Put the Arduino and GPRS shield into the large 2" x 2.5" x 5" project enclosure. Make a mark on the outside of the project enclosure approximately where the antenna jack is on the opposite wall. Drill through this mark with a 1/2" drill bit.
On the opposite side of the project box, drill a 1/4" hole on the center face for the 1/8" jack.
Drill another 1/4" hole right around the corner on the 5" x 2" face of the enclosure for the power jack.
Attach
Insert a 1/8" jack into the 1/4" hole that has been drilled center in the 2" x 2.5" face of the larger project enclosure. Fasten it firmly in place with its mounting nut.
Insert the M-type power jack into the other 1/4" hole and fasten it in place with a mounting nut.
Solder
Solder a red wire from one of the solder lugs on the pushbutton switch to the signal terminal on the 1/8" jack.
Solder a black wire from the other solder lug of the pushbutton switch to the ground terminal on the 1/8" jack.
Connect Wires
Solder a 6" black wire to the ground terminal on the M-type power socket, and a 6" red wire to the signal terminal.
Solder a 6" black wire to the ground terminal on the 1/8" jack.
Solder a 10K resistor and a 6" red wire to the signal terminal on the 1/8" jack.
Finally, solder a 6" green wire to the other side of the 10K resistor.
Power Plug
Take apart the M-type plug and slide the casing onto the red and black wire.
Solder the red wire to the plug's tip terminal, and the black wire to the plug's barrel terminal.
Screw the casing back onto the plug.
Program
Program the Arduino with the following code:
<pre> /* Desk Panic Button by Randy Sarafan For more information please visit: https://www.instructables.com/id/Desk-Panic-Button/ Code in the Public Domain */ //includes necessary libraries #include <SoftwareSerial.h> #include <String.h> //establish virtual serial port for shield SoftwareSerial mySerial(7,8); // the number of the pushbutton pin const int buttonPin = 2; // the state of the button: int buttonState = 0; //setup serial and pin states void setup() { mySerial.begin(19200); // the GPRS baud rate Serial.begin(19200); // the GPRS baud rate pinMode(buttonPin, INPUT); //engage the shield powerUpOrDown(); delay(500); } void loop() { //checks to see if there is cause for panic panic(); //looks to see if the GPRS shield is communicating if (mySerial.available()) Serial.write(mySerial.read()); } ///DialVoiceCall ///this function is to dial a voice call void panic(){ //get the current state of the panic button buttonState = digitalRead(buttonPin); //checks to see if the panic button is pressed if (buttonState == HIGH){ //calls phone number //replace with your own phone number //if in the US, keep the 1 in the front //otherwise replace the 1 with your country code Serial.println("HELLO"); mySerial.print("ATD14155551212;\r"); delay(1000); } } void ShowSerialData() { while(mySerial.available()!=0) Serial.write(mySerial.read()); } void powerUpOrDown() { pinMode(9, OUTPUT); digitalWrite(9,LOW); delay(1000); digitalWrite(9,HIGH); delay(2000); digitalWrite(9,LOW); delay(3000); }
Wire It Up
Insert the M-type plug into the power input on the Arduino.
Connect the green wire wire to the 5V socket on the GPRS shield.
Connect the black wire to the ground socket on the GPRS shield.
Connect the red wire to pin 2on the GPRS shield.
Attach the Antenna
Thread the antenna onto the GPRS shield through the hole in the project box.
Case Closed
Close the case on the project box with screws.
Cut
Cut a piece of 1/8" acrylic using the attached template.
The solid black area around the center hole should be etched down 1/16".
Drill
Drill a 1/8" hole in the center of the 3" x 2" side of the smaller project box.
Attach
Place the mounting bracket just shy of the edge of the desk and use the two outer holes to make marks for drilling.
Drill these marks using a 3/32" drill bit.
Place the 4-40 nut into the etched portion of the center hole and then firmly mount the acrylic bracket to the desk with 6-32 wood screws.
Mount
Place the open edge of the smaller project box around the 1/8" acrylic bracket.
Fasten it in place with 1" bolt.
Power
Plug the 9V power adapter into the power jack installed in the larger project enclosure. Place this unit somewhere inconspicuous.
The whole system should now be active.
Use
Wait until an unwanted conversation presents itself, and then DON'T PANIC!
Discretely press the button, and politely excuse yourself when the phone rings.
Did you find this useful, fun, or entertaining?
Follow @madeineuphoria to see my latest projects.