Emulating a Keystroke Using a Staples Easy Button

Nov
11

A friend and client of mine owns a DJ business. He has photo booths that he brings to events as part of a Wedding or DJ package.

The booths are home made. I believe that he uses the program Photobooth on a Mac to take the pictures, and needed an easy way for people to step into the booth and press one button to take a picture. For this reason, I needed to make a Staples Easy Button emulate the spacebar character.

For this to be accomplished, I needed:
  • Staples Easy Button
  • Programmable microcontroller; I used a Teensy because it is cheap ($16) and gets the job done.
  • USB cable
  • Wire
  • Soldering iron and solder
  • Small Phillips Screwdriver
  • Drill and/or knife
  • Patience

I cannot take credit for most of this project. My primary source was MAKEzine. Before starting this project, I watched that video twice, taking notes the second time.

The first thing that I did was take apart the Easy Button and remove everything that I didn't need. This included the metal bracket, the speaker, and all of the wires. Next I cut two holes. One from the battery compartment to where the speaker was, and also a slot in the battery compartment so the Teensy fits.

The battery compartment.

Next I soldered short wires, about 3" in length, from the button to the Teensy. I used ground ("GND") and "B2" as my pins on the Teensy.

The electronics.

Next I programmed the Teensy using this source code:

void setup() {
   Serial.begin(9600);
   randomSeed(analogRead(2));
   pinMode(2, INPUT_PULLUP);
   delay(5000);
}
void loop() {
   if (LOW == digitalRead(2)) {
      Keyboard.print(" ");
      delay(500);
   }
}

After programming the Teensy, it is time to test it. Your computer should recognize it as a plug-and-play USB Keyboard, and every time you press the button, it should print a space in a text editor, like you were using your Keyboard's spacebar.

If it all works fine, place the Teensy into the Easy Button like this:

The Teensy in the battery compartment.

Re-assemble the Easy Button until you get this far:

Easy Button mostly assembled.

Try it again, and if it still works, finish assembling it.

The finished product looks like this:

Easy Button fully assembled.

...and functions like this:

Congratulations, you have now built an Easy Button that emulates whatever keystroke you want it to!