This project modifies a $5 Staple's Easy Button and an inexpensive USB keyboard so that they can be used as an input device for live musical performances (or anything else that requires a button or footswitch). It alllows cheap buttons to be created that each send a keyboard character as input to a program. In addition, the proceeds of easy button sales go to the Boys and Girls Club of America.

The project is standing on the shoulders of two other hacks. First, this project hacked an easy button into a switch for a garage door. Second, Dave Merrill, who I am involved with in the EMI (Experimental Musical Instruments Workshop) at MIT (see inventmusic.org), had taken apart a keyboard to create footpedal for the ctrl, shift, and alt keys for use when his arm was in a cast. His project details are here.

The motivation behind this project was a performance called Mandala at SIGGRAPH 2006 ( video clip ) as part of their electronically mediated performances series. Six musicians sat around a circle projected onto the floor that gave instructions to each individual about what and how to play. A computer program generated these instructions and therefore lead the improvisation of the group. Foot switches were needed so that the musicians could communicate with the program (e.g., when the sheet music should be scrolled, voting for song changes, etc.). The Mandala program was written in Flash but future projects will use Pure Data (PD), Java, and other languages. All that is needed is the ability to programmatically read input from a keyboard.

About one and a half days was required to complete this for someone who had never soldered before (thanks to Ben Vigoda, the main instigator for the Mandala Project, for lessons and helping me figure out the details of the electronics).

Step 1: Hack the Easy Button

The first step is to open the Easy Button and exchange the connections that make the "That Was Easy" sound for two wires that send the on/off switch to the keyboard interface. Opening the Easy button amd soldering the wires is explained in the first reference hack in detail.

First, the existing connections are desoldered from the location shown in the photo and as explained the the links above. Then two wires are soldered at the described positions which was connected to a 1/4" mono jack.

Step 2: Map the USB Keyboard

As shown in Dave Merrill's Key-Ped project, a cheap USB keyboard can be taken apart to serve as the input to the PC. This hack takes advantage of the fact that two keyboards can be used at the same time for input (so far this was true in Windows XP and OS X). When dissasembled, the keyboard has two main parts: a membrane of circuits that form a matrix mapping to keys, and a circuit board that scans the membrane switches for activity.

I found the numbers 0 to 9 and traced them to where they were connected to the circuit board. Each number/character is mapped to two inputs on the circuit board, so when that combination is switched, the keyboard sends the corresponding character to the PC.

Step 3: Create USB Connection Box

A standard project box (can be purchased at Radio Shack) was used to hold the keyboard's circuit board and 1/4" jacks. The Easy Buttons will be plugged into this box using a guitar or other 1/4" mono cable. I drilled holes in the project box for each jack and fastened the jacks in place. After soldering is completed, the circuit board will be put in the box as well and a hole is drilled on the side of the box for its USB cable.

Wires need to be soldered onto the 1/4" jacks. The other end of these wires will be soldered to the locations on the circuit board that we mapped in the previous step.

Step 4: Solder the Circuit Board

Using the mapping from Step 2, solder the wires from each 1'4" jack to a number's mapped locations on the USB keyboard's circuit board. This soldering took a delicate touch to avoid potential shorts, plus the soldered points were then covered (sloppily) with electrical tape to prevent shorts when everything is put into the box.

Step 5: Use the Button!

Once everything is soldered together, the input device is ready to use. Plug the USB connection to your computer, write a program that accepts input from a keyboard, and that's it!

See a video of a performance here

just wondering what happened to the red wires from the jacks, do you join them with the black ones into one wire when soldered onto the PCB?
So awesome.
I did the same thing with the same keyboard! I scanned the layers and used photoshop to track the buttons. I was trying to map it to send it to an older keyboard, but it never worked out because the keys were mapped completely different :/ . Nice project btw.
wow... very good idea...!! i wan make it
I think your idea is clever and very useful for musicans.
There is an easy program called AutoHotKey where you can program certain key to do some kind of macros. this can be used to do things in your own programs.
what do you connect the + wires to?
is there a way to solder the wires knowing confidently you wont burn the pcb? i think i fried mine
Seems to me that it would be easier/cheaper to use a USB keypad instead of keyboard.... fewer buttons to deal with and get confused... sure they are only numbers but if you can map your software to a letter you can to a number too. There are some cheap usb keypads at Monoprice.com I'm ordering one right now so that I don't have to rip apart a keyboard. Great idea.
Mapping the keyboard can be done easily with a digital camera and a paint program. Just take a picture of both pieces with a contrasting background. Open it in a pain program of some kind, I use Graphic Converter on my mac. Use the fill tool to fill in the trace for the particular key you want to map. Because they don't cross each other it will fill in just that one all the way back to the circuit board. Use a different fill color for any other keys you want to follow back.
This is genius! I've used this USB keyboard hack to build a controller for Serato Scratch. However, I need a lot of buttons and was thinking how much of a headache it's gonna be to trace back all the keys. Thanks :)
what software did you use
i using guitar rig 3. it doesnt let me use my mouse as a continuouse controller but iv heard people say you can use a joystick--dont feel like goin and spendin all dat cash on a joy stick and then just rip it apart.thats why i wana connect the potentiometer to keyboard . but i dunno if and how it will work????!!!
any 1?
could you add an expresion peda/knob control by replacing the easy button with a potentiometer?
Man, is there any substitute for the easy button? Theres no staples in Puerto Rico...
yeah just go here and look in the buttons section <a rel="nofollow" href="http://www.goldmine-elec-products.com">http://www.goldmine-elec-products.com</a> <br/>
Any project box with a simple momentary normally open switch. I would recommend chassis mount 1/4 inch jacks too to prevent future damage to the loose connector. You know how hectic it can get when playing with a group of people.
What software can accept this kind of input. This would be wonderful for those wacky morning DJ's who love those farting, burping and whatever else sound effects. This kind of reminds me of frasier whenever he goes off the air, you see him hit the button on the desk to cut the show...
Why is it necessary to desolder the capacitor and resistor? Is it just to get better access to a good solder - just wondering if there is any benefit to leaving them in?
I have a 15W Fender Amp with distortion.<br/>I was wondering how i could go about making the easy button into a foot switch so that i wouldn't have to keep on bending over and pressing the button every time i needed distortion on or off in a song.<br/>This is a picture of my amp. <a rel="nofollow" href="http://www.1ant.co.uk/ad-pics/amp.JPG">http://www.1ant.co.uk/ad-pics/amp.JPG</a> <br/>as you can see, there is a switch on the far left side that says &quot;drive select&quot; above it.<br/>Any help would be appreciated.<br/>If this does end up working i will post pictures.<br/>-Thanks<br/>
I could make this in garrysmod.
This is a very cool project! I'm not sure how I would use it but I am going to keep it in my mind just in case. I did think that it would add another level of cool by using a Bluetooth keyboard's guts for this project. Then you could eliminate the USB wire and add a battery pack. But you would gain 30 feet or so without having to worry about your computer placement.
Is there a way to change the "That was easy!" phrase to something you record yourself? It would be pretty cool if you could replace the chip with a USB jump drive and change the message from time to time by plugging it into your PC and downloading a cool phrase-of-the-day.
This is what you want: <a rel="nofollow" href="http://www.impulsedesign.com/easy_button.pdf">http://www.impulsedesign.com/easy_button.pdf</a><br/>
Pretty damn close. Thank you. How did you find this?
I saw it on www.hackaday.com some time ago
I found this one too.<br/><br/><a rel="nofollow" href="http://www.jeffcaylor.com/?p=206">http://www.jeffcaylor.com/?p=206</a><br/>
i-hacked.com has it also... i think that it is how you spell it...
You can bend them too, like this.. <a rel="nofollow" href="http://fredowsley.com/circuit-bending/staples-easy-button/">Easy Bent Button</a><br/>
thats awesome!
I saw a mod for a "bent" easy button. It sounded pretty good.
Are the easy buttons replaceable with N.O. momentary switches? I like this project, but I'd rather have a stomp box with a few switches in it than a bunch of big staples buttons.
You could use any switch - and the easy buttons are momentary switches (not sure what N.O. means) The constraint is how the PC is reading keyboard input, e.g, the delay before reading a key press as repeated, which is usually configurable.
NO = normally open which can be a state of a momentary switch. Yes they are N.O. otherwise they'd eat batteries.<br/>
very cool, I did something similar with a dance mat and virtual drum<br/><a href="https://www.instructables.com/id/EIJMKZV2EAEP2877XF/?ALLSTEPS">https://www.instructables.com/id/EIJMKZV2EAEP2877XF/?ALLSTEPS</a><br/>
I just bought one of those mat's (free with $6 shipping from a link on slickdeals.net) and wasn't sure if they'd be hackable
completely hackable. They come in a few flavours, try and get the ones with a PC interface, they'll output joystick HAT controls. Otherwise you'll have to go the route we went and break them in to a keyboard interface. I have a diagram on my instructable with the mapping. Basically a set of switches. Furthermore you can spraypaint over the mat and assign your own interface symbols - doesnt have to be just arrows. Would love to hear about where you go with that - keep me posted - thanks
one of the cooler easy button mods ive seen

About This Instructable




More by jro:Easy Button Musical Interface 
Add instructable to: