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 (http://m.youtube.com/watch?v=qMtHEOxHDGo): 

The hand itself comes from an open-source, 3D-printable download. It's part of a project called InMoov: http://inmoov.blogspot.com (http://www.inmoov.fr)

This guide will show you all the steps required to build your own robotic hand and control glove!

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 hobbyking.com, 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: http://microcontrollershop.com/product_info.php?products_id=3802
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: http://www.all-battery.com/Tenergy7.2V3000mAhRCCarNiMHBatteryPackwithCharger-91103.aspx

1x small breadboard
1x battery connector - something like this: http://www.radioshack.com/product/index.jsp?productId=2103292
Breadboard jumpers/hookup wire
1x small blank PCB - I used something like this, only square: http://www.radioshack.com/product/index.jsp?productId=12516741

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: http://www.amazon.com/gp/product/B004YWKPCS/ref=oh_details_o01_s00_i00?ie=UTF8&psc=1

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 197Next »
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!
amey_pandit12 days ago

Can a MG945R servo motor work for this project? I am not able to find out the
max degree of rotation for this motor. Can anyone plz help?


dschurman (author)  amey_pandit12 days ago
Any servo with the same dimensions as the ones I used should work. I'd assume yours are okay, because mine really didn't have a large range of rotation and worked anyway.

Thanks dschurman.

zero /z13 days ago

wow this is awesome and very chip!

hajakian18 days ago
Hello dude,
I have an injury at my hand, can this project help me to increase the strength of my hand ??
Big respect
dschurman (author)  hajakian18 days ago
I'm personally not sure, but it seems feasible. If you were going for strength, I'd invest in stronger servo motors and maybe thin steel cables instead of string.
What kind of code does the Arduino use, I'm interested in working with them but need to learn the coding but Im not sure what it is I think its called C++
arduino code is all in C++
Could you please help me.
I've completed the project and inserted the program provided. BUT i Cant get some of the fingers to move in the right direction. When i flex my finger, the mechanical finger relaxes. How do i correct this problem
dschurman (author)  Shalom_peace1 month ago
Have you checked the polarity of all your connections?
c_han1 month ago

Hey, thanks for the awesome step-by-step tutorial! I have nearly finished the project, but when I plug in my batteries to the breadboard, my digital servos keep chattering. I have been looking up solutions online, but I haven't been able to come to a conclusion to what exactly is causing the chattering to occur.

Also, what is the best way to connect the batteries to the breadboard via jumper wires? I need 2 pairs of hands because there is no secure way for me to put my hand in the glove as well as keeping the jumper wires on the leads of the battery. Thanks!

dschurman (author)  c_han1 month ago
The chattering might be caused by slight variations in the analog input from the sensors, i.e. a tiny variation causes the servo to move a tiny bit. Maybe a way to fix this is increase the input step threshold for movement? What I mean by this is make the servos require a stronger input signal from the sensors to move. Normally, the sensor input ranges from 0 to 1023 (I think, or something like that), so a variation of just one "step," like from 600 to 601, would cause the servo to move slightly. By making the servo move every three steps, or something, you might be able to reduce the chattering.

Also, I just found a battery connector that was similar to the battery's leads at radioshack and used that. Not perfect, but works without you having to hold it in place. Hope this helps.
Gcappelli1 month ago
This was awesome. I finally completed it and it really gave me knowledge of the arduino system thanks. And congrats
dschurman (author)  Gcappelli1 month ago
Great! I'm happy to hear that, and good luck on future projects!
Dkdude982 months ago

On the flex sensor, which one is the analog and which one is the ground? In your schematic, it seems like the flex sensor is a mirrored version of mine.

dschurman (author)  Dkdude981 month ago
On the sensor itself? I'm pretty sure it doesn't matter, since the sensors are just variable resistors
Gcappelli1 month ago
Is it specific where the wires have to be connected on the breadboard or does it only matter if they are positive and negative
dschurman (author)  Gcappelli1 month ago
Just make sure the positive and negative are right, yes.
Dkdude982 months ago
How do you connect the battery connector to the battery? It seems like if you did connect it, it would create a short.
dschurman (author)  Dkdude982 months ago
The battery connecter I had wasn't exactly the right size, so I pretty much just used two wires and always made sure the polarity was right
Gcappelli2 months ago
Where does the battery go?
dschurman (author)  Gcappelli2 months ago
The battery connects to two of the rails on the edge of the breadboard
Harrylorence2 months ago
Hi..your project is wonderful...have to say.
And i cant see how the wiring between the fingers and the servos is made ..where does all these wire go and attach to the finger? To the end of each finger?please explain sir
dschurman (author)  Harrylorence2 months ago
In steps 3 and 6, there are diagrams of the wiring. What do you mean to the end of each finger?
Gcappelli2 months ago
Where does the breadboard attach to the arduino
dschurman (author)  Gcappelli2 months ago
The code is attached to step 6. Connect the orange servo wires to pins 3, 5, 6, 9, and 10, and connect the breadboard's ground to the ground of the arduino.
Gcappelli2 months ago
Question. Can anyone give me the code for this project for the arduino so that I can copy and paste it onto my arduino and then run it. That would by helpful, thanks
dschurman (author)  Gcappelli2 months ago
A file containing the code is attached to one of the steps. It's called "hand.rtf"
Thanks I only need to know now the exact locations where to put the wires that are coming from the servos onto the arduino. Which in step 6 are the orange wires
Gcappelli2 months ago
What are the exact locations of where to put the wires that are coming from the servos onto the arduino, which in step 6 are the orange ones
Gcappelli2 months ago
It also says that the program for the arduino is attached but I don't see it
HarigovindM2 months ago


First of all let me thank you for such a great set of instructions.

I had a few doubts that I am sure you could help me with,

1. You have made use of 5 flex sensors to control each finger. Will I be able to get the same control that you got for the fingers if i use one of the flex sensors in the upper part of my palm to control the entire wrist area ie five fingers and my palm(wrist) using 6 flex sensors in total.

2. Will I need a powerful stepper motor like the one you have used (15Kg cm) or will a smaller one with less torque (1.8Kg Cm) will do the same function. In one of the comments (BOCA Bearing) I found he had used a 1.8Kg Cm but did not get as much flexibility like the one you had used. But the smaller torque motor is very light weight compared to the one you had used.

Do give me your opinion on the above two queries.

dschurman (author)  HarigovindM2 months ago
1. If you use an additional flex sensor but still keep the 5 for the individual fingers, I don't think you'd lose any control.

2. You might be lacking a little torque, but if you don't mind giving up some flexibility, go for it. I haven't personally tested low torque motors, so I can't say from experience, but what BOCA said seems reasonable. Just make sure the dimensions are the same so they'll fit in the servo bed (or you could make your own)
JaviB1 made it!2 months ago

Hi! thank you for this guide!. That help me a lot i made with STM32NUCLEOF401RE and a pair of xbee to control it. :D

Archivo 29-5-15 17 37 34.jpegArchivo 11-6-15 10 23 49.jpeg
zapya2 months ago

we are undertaking a electrical prosthetic palm for our project. Could you kindly send us the circuit details , specifications to the mail id abhijeettandur@gmail.com

bocabearing made it!2 months ago


I completed this project but with two XBees. I found another instructable that used a similar method with the glove but wirelessly. That other instructable can be found at:


I had some trouble using the code from the other instructable so I decided to use this code along with the how data is being transmitted through XBees from the other instructable's code.

You can see how the project was carried out as well as videos of my project at the following link:



7dp3332 months ago

Hey, so when I connect the battery to the breadboard the wires start melting/overheating. Do I need to use stronger wires or something? I've double checked and there aren't any +/- crossovers.

1-40 of 197Next »