Control cyborg technology and revolutionize your PowerPoint presentations - build a wearable mouse!
So you converted some video glasses to a heads-up display glass. You built a wearable Raspberry Pi, pcDuino, or BeagleBone Black. Now, how do you control your cybernetic augmentations? You make a wearable mouse, of course!
The Point Shooter turns your hand into a mouse. Draw your gun gesture to activate, aim your hand to move the cursor, and pull the trigger to click. BANG!
The Point Shooter doesn't need drivers, is easy to build, and uses about $40 worth of common hardware-hacker staples you might already have. It's seriously badass and surprisingly usable.
Step 1: Equip Yourself!
Parts and Supplies:
- 1 Teensy 3.0
- 1 Wii Nunchuk
- 1 strip Swiss machined headers (female)
- 1 strip Swiss machined pins (male)
- 1 phenolic Veroboard, at least 4"x6"
- 1 Altoids Tiny Tin, any flavor
- 2 4.7kΩ resistors
- 2 ordinary tactile switches (pushbuttons)
- 1 12mm tactile switch.
- 2 Velcro cable ties, plus more to fit
- 2" of 0.5"-diameter heatshrink
- 2" of 1.5"-diameter heatshrink
- 10ft 26 AWG wire. Stranded is better, but solid works fine.
- 1 Micro-USB cable, 5' or longer
- Hot glue gun with sticks
- Soldering iron with solder
- Optional: Primer, paint
- You could try a knockoff Wii Nunchuk, but size is important here and it may not fit.
- You can substitute an ordinary button for the 12mm button, but your mouse will be harder to use.
- Don't substitute standard headers for the Swiss machined ones. The board won't fit in the case!
- If you can't find 1.5" heatshrink, electrical tape will work but the finished project will be sloppier. Harbor Freight sells it as part of a set.
- Tri-wing screwdriver
- Flush-cut pliers
- Dremel with drills, cutoff wheel, flapwheel, sanding drum
- Heat gun
- Needle file set
If the Altoids tin still contains Altoids, this would be a perfect time to eat them.
Step 2: Hack the Nunchuk
The motion sensor is a Wii Nunchuk. We're going to rip out its guts and slice the board in half, which happens to be just the right size to cram into the Altoids tin.
Open up the Wii Nunchuk. Those screws are tri-wing, not Phillips, and need a special screwdriver. You can bodge it with a slim precision flathead and a lot of patience.
Remove the board. Cut the Nunchuk's PCB just above the mounting holes. A Dremel works best, but you can also deeply score the board with a utility knife and break it against a table. Toss the joystick half in your parts bin.
Cut the cable as close to the metal crimp as possible, leaving about 2" of wires. Cut off the white wire, strip the ends of the rest, and tin them. I had to extend the wires because I cut them shorter than 2". Oops!
You'll end up with an adorable little circuit board. Test-fit it in the Altoids tin, filing down the edges if necessary.
Step 3: Build the Board
With the Nunchuk board ready, we can assemble the electronics! The board is quite simple and laid out on the diagram. Note that in the diagram, the Veroboard is translucent - in real life, you put components on the no-copper side.
Cut or grind down the corners of the Veroboard until it fits loosely into the Altoids tin. Turn the board over and cut all the strips down the middle.
Solder the female headers and resistors first. The headers are 14 pins long, and the resistors are 4.7kΩ.
Snap off two strips of 14 male headers and insert them into the female headers. These male pins have a conical side and a flat side - make sure you insert the conical side into the female headers.
Drop the Teensy onto the headers upside-down, so the reset button points towards the board. Solder it in place. Trim off the protruding headers as close as possible, then remove the Teensy.
Solder in the Nunchuk as shown and make sure it fits in the blank part of the PCB.
Cut five foot-long fine-gauge wires and solder in as shown. Strip the ends of the wires.
Step 4: Burn and Test Code
The Teensy will be extremely difficult to program after we close it up, so now's the time to burn that code and test it all out.
Download the attached code and upload it. You will need the i2c_t3 library.
The Teensy 3.0 requires a special Arduino add-on and programming method. Visit the Getting Started with Teensy page for step-by-step instructions.
When the code's up, touch the Pin 5 wire to a GND wire and tilt the Nunchuk board. Your mouse cursor should move. Touching the Pin 6 wire to GND should cause a click, and touching the Pin 7 wire to GND should cause a right-click.
If something's not working right, check your board against the schematic, look for shorts, and make sure you cut all the traces all the way through.
Step 5: Protect That Circuit
Awesome, circuit works, now to make it stand up to the punishment of everyday wear. I know you're cool enough to wear this bad boy every day - come out of the cyborg closet!
Stick the Nunchuk to the Veroboard with a drop of hot glue. Make sure the square accelerometer is pointing upwards, and that the Nunchuk PCB is as level with the Veroboard as possible.
Tack down the wires with hot glue, making sure to keep the Nunchuk wires within the bounds of the Veroboard. The wires should point away from the USB port.
Test-fit the entire assembly into the Altoids tin. Sand things down and nudge 'em around until it fits. There should be a lot of space on all sides.
Cut the 1.5" heatshrink to the length of the circuit assembly. Slide it over the board stack and shrink it down.
Step 6: Build the Case
Let's move this shrink-wrapped stack of magic into its new home.
Mark out the ring button hole on the Altoids tin. The hinge should be at its left. Drill it out, use the Dremel and a grinding attachment to remove pointy bits, and file off sharp edges.
Cut out the USB hole, ensuring the hinge is on its right. Cut out the palm button hole opposite the hinges.
If you want to prime and paint your tin, now is the time to do so.
Flip the tin over and sand the indicated areas all the way to the metal. Use the flapwheel to remove paint, and a coarse sanding drum to leave a rough surface.
Fire up your hot glue gun and stick a Velcro strip to the tin. The hook side should be glued to the tin, and the loop side should face away from it. It doesn't need to be pretty, since this part is concealed under the tin. DO NOT APPLY HOT GLUE TO SOMETHING YOU ARE CURRENTLY WEARING. YOU'LL GET A NASTY BURN AND FEEL STUPID.
Test-fit the tin to the back of your hand. You may need to extend the Velcro by gluing another strip end-to-end.
Put the electronics package inside the tin. Guide the Pin 6, Pin 7, and one GND wire through the ring button hole. Guide the other GND and the Pin 5 wire out of the palm button hole.
If you want a glove instead of rings, sand the entire bottom surface of the tin. Instead of gluing on a Velcro strap, glue the entire tin to the back of a stretch glove.
Step 7: Add Buttons
The final step is buttons. The Point Shooter has three buttons - one on the palm activates the mouse, and two on a ring cause clicks.
Strap the Point Shooter back on.
Loosely guide the palm button wires over the back of your hand and up your palm. Cut them as shown, right when they touch your middle finger. Strip the ends.
Make a fist and loosely guide the ring button wires across the back of your hand and over your knuckle. Cut them as shown, right when they go over the first joint of your pointer finger. Strip the ends.
Take the Point Shooter back off.
Cut two pieces of Veroboard 9 holes by 5 holes. The strips should be parallel with the long side.
Snap the big tactile switch into one Veroboard as shown and solder it in place, then solder in the palm button wires. Reinforce the point where the wires touch the Veroboard with hot glue.
Snap in the tactile switches to the other Veroboard as shown and solder in place. Solder the GND wire to the center, the Pin 6 wire so it connects to the closest button, and the Pin 7 wire so it connects to the other button. Reinforce the point where they touch the Veroboard with hot glue.
Put the Point Shooter back on and find a position for the palm button. When you make a pointing gesture, you should intuitively click the button. Mark that location, take off the Point Shooter, and secure the button in place with hot glue. Tack down the wires with another drop.
Slip a piece of 1/2" heatshrink over the Velcro so it covers the palm button board. Shrink it down and cut a hole for the button.
Slip another piece of 1/2" heatshrink over the ring button board. Shrink it down and cut holes for the buttons. Hot-glue it to a piece of Velcro, leaving about a 1/2" tab.
Put the Point Shooter back on, wrap the ring around your index finger, and trim off the excess. The buttons should rest on the side of your finger and be easy to click with your thumb.
Congratulations! Your Point Shooter is complete! You are now a cyborg!
If you're using a glove, simply glue the buttons to the appropriate places on the glove. Again, do not apply hot glue to something you're wearing.
Step 8: Ascend to Transhumanity
Congratulations, intrepid hacker! Your Point Shooter Cyborg Mouse is complete, and you have augmented your body to interact with computers anywhere and any time. Strap on your wearable Raspberry Pi, fire up a belt-mounted battery, don your heads-up glass, and jack in. You are now an augmented transhuman. Bravo.
If you don't have a wearable computer, the Point Shooter will still work with a regular computer. It's just not as cool. Grab a really long USB cable and don't walk away from your desk.
Normally, your Point Shooter is on standby. Make a gun gesture (point... shooter... get it?) to hold the palm button and enable cursor movement.
To move right, tilt your hand clockwise with respect to your pointer finger. Tilt counterclockwise to move left. Point upwards to move up, point downwards to move down.
When you first hold the button, your current hand position becomes the zero point, and the further you tilt from there, the faster the cursor moves. Release the button and click again to re-zero the Point Shooter. This is great for more precise movement.
"Drop the hammer" and hit a ring button with your thumb for a left- or right-click. Bang bang! You don't need to hold the palm button to click.
The Wii Nunchuk's accelerometer has a known problem where its measurements go crazy when it's flipped over. You may have better results starting with your hand held sideways, gangsta style. You'll look cooler, too.
Go forth and spread ubiquitous open-source hardware throughout the world!
Somewhere on Earth, Ray Kurzweil is giving you a thumbs-up.