Introduction: Desk Panic Button

Picture of 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.

Step 1: Go Get Stuff

Picture of Go Get Stuff

You will need:

(x1) Arduino Uno (Radioshack #276-128)
(x1) GPRS shield (Radioshack  #276-246)
(x1) SIM card (Radioshack #17-8167)
(x1) CR1220 coin battery (Radioshack #23-793)
(x1) Momentary button switch (Radioshack #275-646)
(x2) 1/8" mono jacks (Radioshack #274-251)
(x1) 1/8" male to male mono cable (Radioshack #42-2420)
(x1) M-type power jack (Radioshack #274-1582)
(x1) M-type power plug (Radioshack #274-1569)
(x1) 1" x 2" x 3" project enclosure (Radioshack #270-1801)
(x1) 2" x 2.5" x 5" project enclosure (Radioshack #270-1803)
(x1) 9V power supply (Radioshack #273-355)
(x1) 6" x 6" x 1/8" acrylic sheet
(x1) 1" x 4-40 nut and bolt
(x2) 1" x 6-32 wood screw

Step 2: Prep the Shield

Picture of Prep the Shield

Plug the CR1220 battery into the socket on the GPRS shield, and insert the SIM card.

Step 3: Insert

Picture of Insert

Insert the GPRS shield into the Arduino.

Step 4: Drill

Picture of 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.

Step 5: Pushbutton

Picture of Pushbutton

Insert the pushbutton into the 1/2" hole and fasten it in place with its mounting nut.

Step 6: Jack

Picture of Jack

Insert the 1/8" jack and fasten it into place with its mounting nut.

Step 7: Drill

Picture of 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.

Step 8: Attach

Picture of 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.

Step 9: Solder

Picture of 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.

Step 10: Connect Wires

Picture of 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.

Step 11: Power Plug

Picture of 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.

Step 12: Program

Picture of Program
Program the Arduino with the following code:

Step 13: Wire It Up

Picture of 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.

Step 14: Attach the Antenna

Picture of Attach the Antenna

Thread the antenna onto the GPRS shield through the hole in the project box.

Step 15: Case Closed

Picture of Case Closed

Close the case on the project box with screws.

Step 16: Cut

Picture of 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".

Step 17: Drill

Picture of Drill

Drill a 1/8" hole in the center of the 3" x 2" side of the smaller project box.

Step 18: Attach

Picture of 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.

Step 19: Mount

Picture of Mount

Place the open edge of the smaller project box around the 1/8" acrylic bracket.

Fasten it in place with 1" bolt.

Step 20: Power

Picture of 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.

Step 21: Use

Picture of 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.


Blue_Prairie (author)2015-11-09

Great tutorial but how frusterating that I'm half way through the list and it seems NONE of the parts list links works and worse yet - the part numbers don't work! Could you possibly re-verify and fix the parts list if you still have working links or part numbers we can even manually put into the Radioshack search bar and get the result? Thanks!

Yonatan24 (author)Blue_Prairie2016-09-05

I'm not sure Radioshack exists now. I'm pretty sure they closed...

Doktor Jones (author)2016-05-17

Here's an updated parts list, using Amazon links:

Arduino Uno

GPRS Shield

Prepaid SIM card
* (AT&T)
* (T-Mobile)

CR1220 battery

Push button switch

5pk 1/8" mono jacks

1/8" mono male-male cable

7.5v power supply
* puts less load on the voltage regulator!

5.5x2.1 power socket

5.5x2.1 power plug

Small project box
* or if you want a smaller one with mounting ears:

Large project box
* or if you want a larger one for more wiggle room:


I haven't built this using the Amazon parts listed above, but I checked various specs (e.g. power jack size) and it should all play nice together :)

Awesome, thanks Doktor!!

Blue_Prairie (author)2015-11-09

Sorry didn't realize this must be years old instructable before I made my last comment. This is unbuildable with the parts list provided so don't waste your time. Radio Shack doesn't even carry half the listed items (just search for each one) at all and the one or two parts they do are not the same part number (I think the Uno may be the only part on the list that I actually even found by searching RadioShack site).

Nice Instructable, but definitely need the parts list updated!

Please see the parts list I posted above :)

Please see the parts list I posted above :)

tmv22 (author)2015-11-01

somebody please build this using just the amazon Dash button, please!

nativeboi91 (author)2015-10-20

Lmao. Good one! xD

eddevine (author)2013-10-08

What SIM card are you using? The ones I've seen require an expensive plan with a provider

adam.verner.790 (author)eddevine2015-09-13

just use the pre-paid one

OhYeahThatGuy81 (author)2015-03-17

Saved by the ring tone!

parisusa (author)2013-09-15

I'd like a panic button attached to a trap door in my floor which opens - dropping unsuspecting bores into a pit of snakes - :)

sf49ers (author)parisusa2014-04-03


Ploopy (author)2014-02-01


elabz (author)2013-08-07

It's an interesting idea but, boy, that's a lot of extra equipment to do what your phone system is already capable of doing.

Is that an Avaya 5410 (5610) phone I see on your desk? Depending on what it's hooked up to, the system may be easily programmed to ringdown to your own extension when you go off hook on an analog phone.

You pretty much only need a pair of wires going back to the phone system (likely already have it), an analog port on it and insides of an old analog phone (like a "Princess" phone, a $2 flea market item). Well, that and buddying up to your phone system admin, of course. S/he'll need to setup a ringdown feature (?D) for that analog extension. So, you press the button closing the hook contacts of the analog phone and the system calls you up on your digital/IP extension automatically. The actual electronics content of a "Princess" phone is about the size of a credit card, can easily conceal it under the desk. 

DanNixon (author)elabz2013-08-26

If they have it setup with the IP Office software or TAPI driver then you could do it with a simple batch script.

elabz (author)DanNixon2013-08-26

Hey Dan, sure, that will work, too. They'll have to setup a physical button as a trigger - I thought the physical button was a requirement. Come to think of it - that's pretty easy, too. I have a green AMD button they used to supply with their processors a few years back, I'm sure thousands of people have it collecting dust in a drawer somewhere. It emulates a keyboard with only one key. I forgot which key but it's easy to lookup online. I'm not much of a Windows guy but there should be something of a hotkey software on Win that looks for that button press and runs the batch script you're talking about. Totally doable.

randofo (author)elabz2013-08-07

Interesting to know. I doubt our phone systems are currently set up for that and I think the IT folks are not going to be keen on me messing with it, but, you never know... will look into it.

Crafthead3020 (author)2013-08-18


syweezy (author)2013-08-17

I love this!

coda876 (author)2013-08-10


dchev (author)2013-08-06

How did your dad do this back in the day without arduino? Seems like there's got to be a simpler way

A P3RS0N (author)dchev2013-08-06

99.999999% of the time, premade under-desk panic button systems (very common in banks, shady-area businesses, jewelers, etc.) have a single wire that connects to a commercial alarm system, which in turn contacts the alarm company (who knows what business it is, where they are, etc.), who in turn call emergency services.

I don't think they're generally connected directly to phone lines. If they were, it could present a problem if the phone line is in use when the panic button is pressed.

Veda88 (author)A P3RS0N2013-08-07

This is not meant to call the police, this is meant to call your own phone so that you can say, "I have to take this". To get rid of someone talking to you.

Foaly the Centaur (author)Veda882013-08-09

Right, but he was explaining how it was done back in the day without programming, not how to make this device. That is how almost all panic buttons function. Like those LifeAlert commercials you see on TV, except wired into the desk/wall.

GorillazMiko (author)2013-08-07


thesamhill (author)2013-08-07

An alternate idea is to use Google Voice, AutoHotKey, and an unused keyboard key. Link your office phone to Voice. Write an AHK script to open Google Voice and send "c" to open the quick call popup. Then send keystrokes, tabs, and enters to get it to call a robot-answered number.

It doesn't matter what the number is, because Google Voice will call your number first then try to connect to the other number once you answer.

If you really want to be fancy you could fix a programmable mouse under your desk to be more like the original panic button.

KROKKENOSTER (author)2013-08-07

Years ago when I was working for SA Railways we installed something similar in the ticket office but with a foot switch as when the villains hold them up the clerk just step on the switch with his hands on top of the desk

iceng (author)2013-08-06
Of course you have already found the way to disguise the "Button" from
prying eyes like :
  • A hall sensor and tiny NIB glued to a sheet of paper on that desk w delay.
  • A sub dermal trigger.
  • A two or three step head tilt motive.
  • A vocal clue or lip smack.
  • A chair position sequence repeated backwards.
  • A piezo response to a desk drumming finger pattern.
HeliPilot1 (author)2013-08-06

Love the idea, although a flip saftey for the switch might be a need. Say something like this:

bricabracwizard (author)2013-08-06

Because you've published this, now all your co-workers will know none of the calls you receive while they are at your desk are not genuine.....?

monty324 (author)2013-08-06

Randofo, like all of your projects I love it and I want to build it. Voted

MidnightMaker (author)2013-08-06

Great idea!

rasterweb (author)2013-08-06

Interesting! I'd consider building an alternate version that uses the Twilio API to place a voice call to my phone. That would remove the need for the GPRS shield and SIM card, as I could just use an Ethernet shield with an Arduino to ping a private URL to trigger it. Alternately, a Raspberry Pi could be put into service, which has built in Ethernet (or you could use a WiFi dongle.)

sunjum (author)2013-08-06

Hey , what kind of camera did you use? the pictures look amazing

randofo (author)sunjum2013-08-06

I used a Pentax K-7. Not a popular brand these days, but I have been very happy with it.

garrader (author)2013-08-06

Don't limit yourself to a desk, why not put it in your pocket for any situation!

sunjum (author)2013-08-06

Hey , what kind of camera did you use? the pictures look amazing

omalachowski (author)2013-08-06

Hey, this is an amazing instructible, but wouldn't it be much simpler and cheaper just to trigger the bell directly on the phone with a 9v? This would bypass all the cell phone stuff and most of the expense, since all you need is some wire, a button and a battery.

I guess your way is the NASA way and this would be the cosmonaut way. Try the pencil.

Zclip (author)2013-08-06

I wonder how difficult it would be for me to make a usb version that would shut down my system and save off all open projects in sequentially numbered files (Ex. "Panic-01.*, Panic-02.*) If I have no experience in the black arts of programming, and can barely remember how to write a .BAT file

Closer (author)2013-08-06

If you have a landline on your desk now, you could use a splitter and tie in a second disposable phone that has an auto dialer. Pressing the button would activate a few simple relays that would pick up the line and autodial whatever number had been programmed. No coding or processors needed.

Darkmon (author)2013-08-06

Awsome. Always wanted a panic button that shoots spears or lasers, but there ya go! What ya got is what ya got. Great instructable!

Darkmon (author)2013-08-06

Awsome. Always wanted a panic button that shoots spears or lasers, but there ya go! What ya got is what ya got. Great instructable!

iglesia777 (author)2013-08-06

Great idea. I wonder if it would be cheaper/easier to just have your phone play whatever audio track is the same as your ringtone? Or just make it vibrate. Could probably do that with just the arduino and an app (ie no GPRS shield, sim card).

iglesia777 (author)iglesia7772013-08-06

Forgot to mention the need of an ethernet shield too. So not a ton cheaper.

dwream (author)2013-08-06

Years ago, when I was very young, I offered my Mother a primitive version of this device: I offered to install a button connected to her doorbell next to her kitchen telephone to help her end boring telephone conversations. I realized how effective this was when I phoned her and she answered with, "Sorry, dear, I can't talk. I just heard the doorbell ring!"

HollyMann (author)2013-08-05

This is AWESOME!!!! I'm living in a rough neighborhood myself now and it would be cool to have a 911 button!!! :) Love it!!!! And your photos are incredibly clear!

randofo (author)HollyMann2013-08-05

This actually would probably not be ideal for an actual 911 button. For that you would probably want an actual phone line. One of these days I'm going to make something that connects to a phone line and does strange things...

Yes. Photos. I spend a lot of time on photos...

About This Instructable




Bio: My name is Randy and I founded the Instructables Design Studio. I'm also the author of the books 'Simple Bots,' and '62 Projects to ... More »
More by randofo:Large Motor ProjectsRemove a Wheelchair Motor BrakeBuild a Robot
Add instructable to: