Easy Button Musical Interface

74,164

99

40

Posted

Introduction: Easy Button Musical Interface

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

Share

    Recommendations

    • Science of Cooking

      Science of Cooking
    • Pocket-Sized Contest

      Pocket-Sized Contest
    • Spotless Contest

      Spotless Contest
    user

    We have a be nice policy.
    Please be positive and constructive.

    Tips

    Questions

    40 Comments

    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?

    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.

    user

    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.