Hacking a Powerglove

49,488

118

28

Intro: Hacking a Powerglove

First of all lets get this out of the way... It's so bad 

This is going to be showing how to hack the Nintendo Powerglove. By hack I mean tap into the flex sensors and use the buttons and d pad and add anything you want. In my case I added an accelerometer.  

I got mine from Ebay for around $40. These gloves have 4 flex sensors similar to these: http://www.sparkfun.com/products/8606
Now these are $12 a piece, it's way cheaper to buy a Powerglove for 4 sensors and get a bunch of other awesome things then buy 4 of these.

Step 1: Materials

Materials:
Screwdriver
Wire
microcontroller (i used Arduino)
USB cable
4 - 10k resistors 

Optional:
ABS sheets
Nuts and bolts
Accelerometer or whatever sensor 
Xbee with shield
9v Battery

I also have an Ardumoto shield with a vibrating motor for a feedback system

Step 2: Take It Apart

This is kind of tricky if you don't know where the screws are. Don't loose them either! 

Just fallow the pictures:

Step 3: Flex Sensors

Now its time to tap into the flex sensors. Flex sensors are variable resistors which mean the more you flex the more the resistance. You can then read that and map that value to anything you want. There are two wires coming from each sensors so we have 8 wires.

This website shows a good wiring diagram and explanation for it all: http://www.makingthings.com/teleo/teleo/cookbook/bendsensor.htm

We want to open up the palm to expose the board. Once we have that find where the sensors attach to the board. There will be 4 diodes by there. We are going to desolder the diodes and replace those with the 10k resistors. We will be attaching the positive to one of the two wires of each sensor. We well then attach ground to the resistors and attach wires from the second sensor wire. Pictures will help explain this a lot better.

Step 4: Attach Arduino (optional)

I made a custom extension coming off the glove to hold the arduino. I did this with an ABS sheet and a heat gun. Pretty much heat it up and form it around your arm to get the shape. Then drill holes and attach to the glove with some nuts and bolts. I also made a custom 9v battery holder out of this stuff too.

Step 5: Wire Management

I tried to make this look as nice as I could. What I did was run the wires from the palm board to the forearm board then out of that to the arduino. This worked the best for me and it was easy.

 

Step 6: Buttons [Extra]

I haven't tapped into the buttons yet but its just like any other button. Two wires and an on or off signal. There are plenty of tutorials out there for buttons with arduino. D-pad is the same way, Just four buttons.

Step 7: Code

All the code is is just analog read. From here you can map it to whatever to control servos or whatever you want

int Finger1 = 2;
int Finger2 = 3;
int Finger3 = 4;
int Finger4 = 5;
int Rotation =  0;

void setup()
{
  Serial.begin(9600);
}

void loop()
{   
   int FingerV1 = analogRead(Finger1);
   int FingerV2 = analogRead(Finger2);
   int FingerV3 = analogRead(Finger3);
   int FingerV4 = analogRead(Finger4);
   int RotationV1 = analogRead(Rotation);
  
   if (FingerV1 < 30) FingerV1 = 30;
   else if (FingerV1 > 80) FingerV1 = 80;
  
   if (FingerV2 < 45) FingerV2 = 45;
   else if (FingerV2 > 69) FingerV2 = 69;
  
   if (FingerV3 < 22) FingerV3 = 22;
   else if (FingerV3 > 87) FingerV3 = 87;
  
   if (FingerV4 < 12) FingerV4 = 12;
   else if (FingerV4 > 62) FingerV4 = 62;
  
   if (RotationV1 < 300) RotationV1 = 300;
   else if (RotationV1 > 600) RotationV1 = 600;
 
   int middle = map(FingerV1,30, 80, 0, 255);//middle
   int thumb = map(FingerV2,69, 45, 0, 100);//thumb
   int ring = map(FingerV3,87, 22, 0, 255);//ring
   int pointer = map(FingerV4,12, 62, 0, 255);//pointer
   int rotation = map(RotationV1,300, 600, 0, 255);//Rotation
  
   Serial.println(middle);
   Serial.println(thumb);
   Serial.println(ring);
   Serial.println(pointer);
   Serial.println(rotation);
  
   delay(10);
}

Share

    Recommendations

    • Metalworking Contest

      Metalworking Contest
    • Furniture Contest 2018

      Furniture Contest 2018
    • Tiny Home Contest

      Tiny Home Contest

    28 Discussions

    0
    None
    njkl44agis68

    Reply 6 years ago on Introduction

    Well its really up to you! i use it to control a 3d printed robotic hand that i made, when i move my hand the hand mimics my movements.

    0
    None
    ahudak1njkl44

    Reply 1 year ago

    Do you have an updated version of this or the entire project on a website?

    0
    None
    Spaceman Spiffnjkl44

    Reply 6 years ago on Introduction

    That's cool! You should post that to this instructable. I'm sure we'd all like to see it in action.

    0
    None
    ahudak1

    5 years ago on Step 7

    Im doing the same project for my robotics class basically. Out of curiosity, why does the code not include the pinky finger or is it replaced with the "Rotation" int?

    2 replies
    0
    None
    TheQuadroonahudak1

    Reply 1 year ago

    Little late, but the pinky has no read because there is no sensor.

    0
    None
    akb515ahudak1

    Reply 2 years ago

    In the Nintendo Powerglove, there are only 4 flex fingers for the fingers, all the fingers except for the pinky, so there are no values for that finger

    0
    None
    agis68Spaceman Spiff

    Reply 6 years ago on Introduction

    you need a lot of reading and practicing....try to get the get starting with arduino book.....and also be in touche with the mama page http://www.arduino.cc/

    after that Internet has a huge collection of projects and also we are always here!...
    Start by doing small thing....make a led flash.....You need to learn also C or C++

    0
    None
    Spaceman Spiffagis68

    Reply 6 years ago on Introduction

    Yeah, that was a great book, I also recommend checking out these sites and blogs.  I'm currently reading "getting started with the internet of things."  I'm learning a ton about communicating with the internet which has been a great help on one of my current arduino projects.  I gotta be honest I'm not the best coder, but arduino has helped.

    0
    None
    MissMegumi

    6 years ago on Introduction

    NOW you're playing with Power! (Sorry, couldn't resist.) ^_^

    0
    None
    oodinaka

    6 years ago on Introduction

    It's lovely and more improving but what is gallantry? what will be the positive force of it.

    0
    None
    jhefren

    6 years ago on Introduction

    Hello everyone
    This glove turns out to be obsolete it is better to replace it by an ipod, galaxy s or sony xperia. its much better

    1 reply
    0
    None
    agittinsjhefren

    Reply 6 years ago on Introduction

    Hehe.. the glove was obsoleted decades ago - that's one thing that makes it so cool! As for the other devices you mentioned, no doubt the accelerometers make it easy for overall hand position/movement but how would you sense finger positions? I think it's the hand-gesture/finger posture sensing (as well as outright retro-street-cred) that makes this stand out.