DIY Robotic Hand Controlled by a Glove and Arduino

FeaturedContest Winner
Picture of DIY Robotic Hand Controlled by a Glove and Arduino
This project idea came to me when I was sitting on a bed on a hotel room on vacation. I thought: "It'd be really neat to have a robotic hand that I can control with my own hand!" Upon returning home, I embarked upon a journey to design and create the project. I hope you enjoy!

The basic components of the hand and glove are the hand itself, the servos, the Arduino, the glove, and the flex sensors. The glove is mounted with flex sensors: variable resistors that change their value when bent. They're attached to one side of a voltage divider with resistors of a constant value on the other side. The Arduino reads the voltage change when the sensors are bent, and triggers the servos to move a proportional amount. The servos pull strings that act as tendons, allowing the fingers to move. Here's a video of it in action ( 

The hand itself comes from an open-source, 3D-printable download. It's part of a project called InMoov: (

This guide will show you all the steps required to build your own robotic hand and control glove!
Remove these adsRemove these ads by Signing Up

Step 1: Gather the Materials

Picture of Gather the Materials
In total, this project will cost about $100-150, depending on where you get some of the parts. Here's the parts list:

5x MG946R Servos (or equivalent - MG995 or MG996 should work too. I've had a bit of trouble with the range of motion, so servos that support more degrees of rotation would be better) - I got mine from, but for a less expensive option I'd go with eBay (they come directly from China, so shipping may take longer).

5x 4.5 inch flex sensors - I got mine here:
1x Arduino Uno or equivalent (they're also much cheaper on eBay)
5x 22k resistors
1x 6.0-7.2V battery (for the servos) - I used this:

1x small breadboard
1x battery connector - something like this:
Breadboard jumpers/hookup wire
1x small blank PCB - I used something like this, only square:

1x right hand glove (should be sturdy and fit well)
1x 8mm diameter 55mm long bolt
1x 8mm diameter 60mm long bolt
1x 8mm diameter 80mm long bolt
14x 3mm diameter about 20mm long screws
20x 4mm diameter screws (any length between 7mm and 30mm is fine)
Approx. 5 meters of string (should have a high-ish breaking strength) - I used this:

Hot glue
Super glue
Sandpaper (I used 431 grit) - a Dremel tool with a sanding head would also work
Needle and thread

A power drill
A soldering iron
Access to a 3D printer

...And you're ready to start!
1-40 of 156Next »
bigshf1 year ago
This is awesome! You really gave me motive enough to study the whole Arduino technology. Thanks a lot mate and .. Congratulations!
Raphango1 year ago
Pretty wow dude!

I have written only the hand.rtf programme , do i need to write all the programmes like(roboservobed.stl).?

anson.wing23 days ago

Great instructable, building this now! One question, is it possible to use a 7.2 power supply instead of a battery without any issue?

dschurman (author)  anson.wing23 days ago
It shouldn't be a problem as long as the supply can provide a decent amount of current - that's why the Arduino's built-in power supply doesn't work, it's capped at 250 mA or so.

Sounds good thanks! I ended up ordering and I'll cut the connector off. I hope it does the job!

dschurman (author)  anson.wing23 days ago

That should do it. Good luck!

MaxR81 month ago

Anyone have the program for bendsesors? i'm kind of a noob and its urgent haha ;)

dschurman (author)  MaxR81 month ago
The program for the whole hand is attached to the instructable under one of the steps. Is that what you need?
MaxR8 dschurman1 month ago
oh hehh.. thanks man really helpful article great job!
MaxR81 month ago

Program? Does anyone have it?

AyushM11 month ago

is the glove and the hand connect with each other or they are wirelessly controlled?

AyushM11 month ago

i want to know the measurement unit in which the 3d structure are to be print cm,mm,in???
plz reply asap

riz.rizwan.122 months ago

im using a flex sensor of 2.2 and the rotation degree is very low..can you tell me how to change the program so that the servo turns full 180...please help..its urgent

dschurman (author)  riz.rizwan.122 months ago
In the program, you have to change how the input values from the sensors are mapped to the degrees of servo rotation. Basically, narrow the range of sensor inputs that will give the full degrees of rotation
nomadillo2 months ago

How strong are the servos? I'm thinking of modifying the prosthetic hand to be placed into the palm of a stroke patient, with velcro straps on individual finger segments, servos etc in a wristband. The glove would be worn on the patients other working hand and he could manipulate his weak hand, index/index, grasp/grasp etc.

dschurman (author)  nomadillo2 months ago
I'd say the servos are definitely strong enough to provide a good grip. What you might consider doing is putting some silicon rubber on the fingertips and palm to provide better traction when holding things.

I built the circuit, got the servos, the battery, the arduino, and the breadboard. Everything is connected like it's supposed to but the servos aren't moving. I'm not sure if it's the arduino or the servos or the cables that have a problem. Pleasee helpp!

dschurman (author)  sabrina.c.morales2 months ago
You could test each part individually to find the problem. Look up a simple arduino servo circuit and use it to test all the servos. If none of them work, it's probably something to do with the arduino. If some of them work and some don't, some of the servos might be broken. If everything works fine, it is probably something to do with how you connected the circuit. Double and triple check all the connections, I don't usually ever get it right the first time either when building a circuit.

How much did the 3D printing cost you ?

moribee172 months ago

I'm having a problem with the servos. They're spinning in the opposite direction than they should be, so instead of pulling the strings tightly, they're loosening the strings. Is there anywhere in the code that I can reverse the servos' spinning direction?

GoldPhive3 months ago

where does the battery connect?

dschurman (author)  GoldPhive3 months ago
The battery connects to the rails in the breadboard that you attached the servos to
MattA4 made it!3 months ago

ok forget all i said, it works i got it going with 1 sensor and 1 servo just now which i got for a test :)

its so responsive, i wouldnt have thought it would be so responsive but it is

the cheapo servo i got does nonstop chattering and gets pretty warm if i leave it connected for too long but thats ok it, it only cost $3 from ebay

dschurman (author)  MattA43 months ago
I'm glad it's working! I was actually surprised at the responsiveness too, the sensors seem to work very well.
MattA43 months ago

when i go to upload i get this error

Found programmer: "B'j"; type =

Software Version = . ; Hardware Version = .

avrdude: error: buffered memory access not supported. Maybe it isn't a butterfly/AVR109 but a AVR910 device?

MattA43 months ago

ok so i have the parts and im trying to figure out how to wire the servers to the arduino

you have a rough diagram showing how the servos r connected to the arduino which looks like it goes to the analog inputs and then u have another diagram which clearly shows the flex sensors going to the analog inputs with a voltage divider

does the flex sensor go in series with the servo signal wire? i dont understand how they connect together

dschurman (author)  MattA43 months ago
The sensors are plugged in to the arduino's input pins, but the servos are plugged in to the output pins. The signal wire of each servo goes into a separate output pin, the ones with the small squiggles next to them. The output pins are the ones at the top when you hold the arduino with the logo/lettering facing the correct way.
MattA4 dschurman3 months ago

ur talking about the pwm outputs

thankyou much

sir one prob i dont know what is the range of my sensor its 2.2

and my servo rotet 20' whithout stop

dschurman (author)  trupesh.rupareliya4 months ago
Like the rotation range? I think most are somewhere around 180 degrees, but I'm not sure exactly

how much matirial use in 3d printing? plz and i can use 3 kg torque motor?

dschurman (author)  trupesh.rupareliya4 months ago

I'm not exactly sure how much material it was, but if you're printing the entire thing including all the forearm parts, it's a decent amount. And those motors should work.

thanks bro

Sorry for asking but I've looking for the arduino codes for the glove but I couldn't find it. Could you tell me where are they or send it to me? Thanks.

tuyi5 months ago

hey man I'm not getting this parts


can you help with it pls

dschurman (author)  tuyi5 months ago
They should be attached to step 2
But robpart4V2.stl is not there
I found one but this
Is not there
dschurman (author) 5 months ago
Oh, I think that was my mistake. It should be robpart4V3. You don't even need it though, because it's just a cover and if you want to save printing time it's not necessary for functionality.
1-40 of 156Next »