Many computer video games involve a lot of rapid mouse clicking. But there are limits to how fast your finger can click and how long you can keep it up before your hand starts to ache. So I modified a mouse to add a rapid fire button to it. That way you can rapidly activate the clicking function by simply holding down one button.
To do this, I connected a 555 timer circuit to the terminals of the left mouse button. When the rapid fire button is pressed, the timer circuit sends a series of pulses to the controller that simulate the button being clicked. This circuit lets you click up to 800 times per minute. A similar circuit could even be used for console video game controllers.
Step 1: Materials
Here are the materials and tools that you will need for this project.
555 Timer IC
10 µF Capacitor
4.7 kohm Resistor
Small Momentary Switch (not pictured)
Heat Shrink Tubing (optional)
Rotary Cutting Tool (optional)
Step 2: The Timer Circuit
The circuit used in this project is based around the 555 timer IC. Power for this circuit is supplied by the 5V line from the computer that also powers the mouse. This is connected to pins 4 and 8 of the IC. The output of this circuit is a series of pulses that alternate between HIGH (5 volts) to LOW (0 volts). This is what will activate and deactivate the click function of the mouse. A small diode is added to the output to prevent the circuit from shorting out if the rapid fire button and the left mouse button where ever pressed at the same time. This circuit is connected to the mouse through a small momentary switch that acts as the rapid fire button.
The frequency of these pulses is determined by the value of the capacitor that is connected to pins 1 and 2 and the value of the resistor that is connected to pins 2 and 3. I used a 10 µF capacitor and a 4.7 kohm resistor. This produces a frequency of about 15 Hz (about 900 pulses per minute). By decreasing the value of the resistor and or the capacitor, it will increase the output frequency. By increasing these values, it will reduce the output frequency. If you would like to calculate the exact frequency you can use the following formula.
Frequency = 0.72 / (R x C)
"R" is in units of ohms and "C" is in units of Farads.
I first prototyped this circuit on a breadboard for testing and then I soldered it together onto a small printed circuit board.
Step 3: Prototype and Test the Timer Circuit on a Breadboard
First I prototyped the circuit on a breadboard to test it. I powered it with a 5 volt USB power supply. I also used a variety of meters to monitor the output. Once you are satisfied that the timer circuit is working properly, you can connect it to the mouse.
Step 4: Identify the Positive and Negative Terminals on the Mouse
Before you can connect the timer circuit to the mouse, you need to identify the positive and negative terminals on the mouse. The easiest way to locate these is to follow the connections from the USB connector. There should be quite a few terminals that are connected to each one. I have illustrated this by highlighting each set in the pictures above. If necessary you can use a multimeter to check which terminals are connected to each other.
Step 5: Connect the Breadboard Circuit to the Mouse
Now you can wire the breadboard circuit to the mouse by connecting the positive terminals of each one together and connecting the negative terminals of each one together. You also need to connect the output wire of the breadboard circuit to the terminal of the left mouse button that is not connected to positive. I made all these connections with alligator clips. Be careful to ensure that you only make contact with the terminals that you intend to connect with.
Once everything is connected, test it by plugging the mouse into a computer and pressing the rapid fire button. If everything is hooked up properly the computer should register a series of clicks from the mouse.
Step 6: Solder the Circuit Together
If the breadboard circuit works, then you are ready to solder it together on a printed circuit board. Because there is very little space inside a mouse, you want to make the circuit board as small as possible. There are several ways that you can do this. First you need to use the smallest components that are available. Lay the components flat on the board. You can also conserve space by putting multiple leads in each hole. You can even use the extra length of a lead as a jumper wire to connect to other pins.
The switch is the only part that isn't mounted to the board. It will be mounted to the outside of the mouse and connected to the board with a couple of small wires.
Once all the parts are mounted to the board, you should cut off any extra part of the board that sticks out past the components.
Step 7: Connect the Timer Circuit to the Mouse
Once your circuit board is soldered together, you can connect it to the mouse. The easiest thing to do is to just solder wires from the circuit board to the same terminals on the mouse that you connected the alligator clips to easier.
Step 8: Mount the Circuit Inside the Housing of the Mouse
Take a close look at the inside of the mouse's housing. Try to find a spot that has enough room for the circuit board. You may need to cut away some of the internal plastic parts to make it fit. If the circuit board of the mouse has any exposed metal near where the timer circuit will be mounted, you may want to wrap the timer circuit in tape to help avoid any possibility of a short.
To mount the switch, find a location on the outside of the mouse that would be easy to reach when using the mouse. I chose to locate the button on the left side of the mouse where my thumb rests. Fortunately there was already a hole in the side of the mouse at this point where I could run the wires. However, in most cases you will need to drill a hole for the wires.
Step 9: Use Your Rapid Fire Button
Now just plug the mouse into your computer and you are ready to kill zombies, aliens or whatever the target of your game is. To test it out I found a flash game that counts how fast you can click. You can check it out here: http://www.kongregate.com/games/wolfups/how-fast-can-you-click. Normally I was able to click at a rate of about 400 clicks per minute. But using the rapid fire button, I was able to get over 800 clicks per minute.
Step 10: Modify the Design to Work With Console Controllers
This circuit can easily be modified to work with a console video game controller. The only thing that you need to do is reverse the orientation of the diode. The buttons on a mouse normally connect to the positive supply voltage (5V) to activate each function. However a console controller typically connects to ground when the buttons are pressed. The output of the timer circuit is already a series of pulses that alternate between 5V and ground. So all you have to do is reverse the diode and the output of the timer circuit will connect the controller to ground.
CriarteN made it!