Many of you have probably seen the Awesome button done by Matt Richardson of Make Magazine. If not here is his video which was very well done and was the inspiration of my project.
I liked the idea of having a button to press for a certain function on the computer, however i wasnt such a fan of having a $5 button, and a $16 microcontroller operating only one function.
So my project differes in a few ways.
I added a RGB LED on top of the button, I also added a rotary encoder on the side of the button.
The idea being this:
the encoder switches the function the button preforms, and the LED gives you feedback telling you what mode it is in now so you know what function will be preformed by pressing the easy button.
Step 1: Supplies
You will need:
Teensy 2.0(http://www.pjrc.com/teensy/) $16
Staples easy button ~$5 (if you can find a older one get that, becuase the new one has a different circuit board thats difficult to access the button on)
RGB LED (http://www.sparkfun.com/products/9264)
5mm LED holder
Rotary encoder/knob(I got a bag of 10 encoders for $10 off ebay, and the knob i am using is from a guitar)
Wire ~18 gauge
Dremel or other rotary tool to cut though plastic(youll be coping alot lol)
Drill w/ assorted drill bits.
USB mini cable
Step 2: Take it apart
First things first, take the easy button totally apart. Just like in the Make video we are going to need to take it all apart.
Once you have it in pieces there are some more things you can remove
Cut both the wires to the speaker and the battery compartment, Also remove the springs in the battery compartment
Remove the weighted bars, also go ahead and remove the capacitor on the button circuit board, we wont need it either.
At this point you should have a pile of things that wont be going back into the button(speaker,batterys,battery spring, wire, capacitor)
Step 3: Circuit Board
Staples earlier this year changed the circuit board in the teensy which made it alot tougher to hack. The change removed the thru hole resistors and replaced them with surface mount resistors. This means there is no longer a 'easy' place to solder to to have access to the button.
But not all hope is lost. if you look though my pictures you will see you need to drill a hole in the PCB and then solder to it. Becareful that when your scraping away the coating you only scrape whats in between those two narrow lines.
Step 4: LED
The RGB LED i used had a common ground, each of the RGB leads has its own resistor on it,
Blue- 100 Ohm
You can see in the picture each lead is covered with heatshink this will prevent any shorting.
The LED is then connected to the Teensy
RED goes to Pin 15
Green goes to Pin 14
Blue goes to Pin 12
Step 5: Drilling holes
This was the scariest part for me, because once you've done it you've done it.
There will need to be 3 holes, one for the USB cable, one for the LED and one for the encoder.
I drilled the LED one dead center above the A and S in EASY. Make sure you start with a small hole and slowly work up to fit the LED holder.
The other two holes are a bit more tricky, You need to look at your encoder's size and figure out where to put it, mine is where those metal bars are originally. This step will vary depending on what encoder you have and where you want to place it.
Step 6: Encoder
My encoder had 5 leads on it.
2 are for the momentary switch if you press the knob in
3 are for the encoder part
On the encoder side there is
A Ground B
On the Switch side there is
As you can see from the picture i wired both grounds together to save on the number of lines going back to the teensy.
The encoder gets connected to the teensy:
A - Pin 6
B - Pin 7
Button - Pin 5
Step 7: Teensy and USB cable and the casing
You are going to need to cut away almost all of the battery compartment as well as the two screw pillars right next to the battery compartment in order to get everything to fit, even with these changes though its quite strong.
As you can see in the picture there's not much room in here at all. You will need to cut the USB cable thread it though, and then resolder it. At this point you should have everything attached now the fun part...putting it all together. It took me about 30min to figure a way to get everything in there and having the button still operate. One tip is the screws you took out from the inside, they dont get put back in. The only screws i used were the 4 on the bottom, the rest is so tight though theres no need for them.
Make sure you have the reset button accessible from the battery door so that you can program the button after its together.
Step 8: Code
Ok now your almost done!!
Once you have everything together time to plug in the button, you should still have access to the reset button on the teensy.
I am not going to go into the software side of how to program the teensy here, but i did in my other instructable https://www.instructables.com/id/PC-B-Gone-V1
Attached is some simple code i wrote for this button(same code as shown in the demo video i made) There are many more functions you can easily add. I have posted version two which also includes a python script to run on your computer to use one of the functions as a email checker.
I hope you have gotten some ideas from my project and look forward to seeing what you make.
Feel free to post any questions you might have, i check this site daily so i should be able to get back to you pretty quickly.