Introduction: Handgesture Controlled Robot With Robotic Arm

Picture of Handgesture Controlled Robot With Robotic Arm

With this robot, you control everything with your hand, even the robotic arm!

The hand gestures can be programmed differently.

Long range with Xbee communcation!

Step 1: Parts Needed

Step 2: Base Model

Picture of Base Model

I made a simple drawing in SolidWorks and then went to a local ironmongery to get the plate bended.


On the base plate under the plexiplate is were the two DC motor will be placed. Over that will the 12v battery holder and the H-bridge fit. And on the top level will the Arduino be mounted. In the middle of the plate will the robotic arm be placed.

The drawing model is included.

Step 3: Flex Sensors

Picture of Flex Sensors

Every flex sensor is soldered according to the first schematic, with a 22K Ohm resistor. There is a good tutorial for how to read from this and how it works here:

The first thing to do is to test each of the flexsensors and write down the values when its bent and unbent.

To be sure that the flexsensors dont breake at the end when its bent, I took an old plastic card I had from some random store, and made small rectagular parts of it and placed it at the end of the flexsensors. After the soldering, take some electric tape and wire around each cable to prevent short circut, and after that just put over some shrinking cables to make it nicer.

Step 4: Setting Up the Xbee

Picture of Setting Up the Xbee

Im not going to get into details how to set up the Xbee, but the first thing you need to do is configure the Xbee's and upload the latest firmware. How to do it, here is a tutorial:

After the configuration is done, here is a simple communiation tutorial:

Step 5: 1st Arduino: Connecting Power-supply,H-bridge,servos,DC-motors and Robot-arm

Picture of 1st Arduino: Connecting Power-supply,H-bridge,servos,DC-motors and Robot-arm

The power supply on the robot will have a 12v battery pack. This will both drive the Arduino and the two DC motors and the servos, a regulator is needed to bring down the 12 volts from the battery to 5v which is required for the servos. The H-bridge, SN754410NE is soldered according to the circut diagram on a regular PCB board. The switch is soldered and conntected to the battery.

The DC-motors can be mounted by taking some metal piece and bend them around the motors and then attach them to the base plate with some screws(picture).

I know the picture is quite messy so just to clear everything up, the connections goes as follows:

Arduino pins

Digital pin nr.5 -> signal to Servo 1

nr.6 -> signal to Servo 2

nr.7 -> h-bridge pin.2

nr.8 -> h-bridge pin.7

nr.9 -> h-brigde pin.10

nr.10 -> h-bridge pin.15

5V pin from arduino -> h-bridge pin.1, pin.9

IMPORTANT! Make sure to connect all ground from all things togheter so they share the same gorund (Arduino,H-brigde,Servos,Battery and regulator). This can be done by cut out a small PCB board and connect all ground cabels to that board.

SN754410NE pins

Pin 1 and pin 9 -> 5V arduino

Pin 2 -> Digital pin 7 on Arduino

Pin 3 -> DC Motor 1 +

Pin 4,5,12,13 -> Ground

Pin 6 -> DC Motor 1 -

Pin 7 -> Digital pin 8 on Arduino

Pin 8 -> 12 V battery +

Pin 10 -> Digital pin 9 on Arduino

Pin 11 -> DC Motor 2 +

Pin 14 -> DC Motor 2 -

Pin 15 -> Digital pin 10 on Arduino

The datasheet for SN754410NE can be found here:


Servo 1 signal line -> Digital pin 6 on Arduino

Servo 2 signal line -> Digital pin 7 on Arduino


Connect positive 12v to both Arduino and to the H-bridge pin nr.9 and to the regulator

Datasheet for the regulator can be found here:

Step 6: 2nd Arduino: Connecting Flex Sensors, Button, Led

Picture of 2nd Arduino: Connecting Flex Sensors, Button, Led

The second Arduino will be mounted on the hand. Simply mounted with some velcrotape, the battery pack is also mounted with velcro tape under the hand.

Everything is hooked up according to my schematic. A button is connected to the arduino to later control if we want to control the robot arm or the motors on the robot. The led will indicate which one we is controlling.

Led on = robot arm mode, Led off = motor mode

Step 7: Code

The coordinator is the one wich will recive all commands from the hand, therefore that code is called "Coordinator".

The router is the one which will send all commands to the coordinator, and therefore that code is namned "Router".

To switch between controlling the motors and the robot arm, the button on the hand is pressed once.

I have tried to comment the main parts in the code.

The commands for driving forward, backward ect. can be programmed differently according to your own choices. Total combinations with four flexsensors is 16, and we only need four. So there is plenty of combinations to choose between.

The commands I used:

Motor commands

Forward: All fingers closed

Backward: Only thumb bent

Left: Thumb and pinky bent

Right: Thumb middle finger and pinky bent.

Robot arm commands

Tilt down: All fingers closed

Tilt up: Only thumb bent

Gripper open: Thumb and pinky bent

Gripper close: Thumb middle finger and pinky bent.

Step 8: Demo

The purpose of pick up a beer was unfortunately not workable. The diameter was too big for the gripper :(


H1995 (author)2017-11-21

Please can you show me the connection of the wires with ardoino in the cart I can not understad the diagram

ashartariq5 (author)2017-10-11

In what mode did you used xbee-S2?

AT or API?

ashartariq5 (author)2017-09-30

Why use Xbee ?
Can we use any other communication protocol?
Can you suggest any?

tahmid483 (author)2017-07-27

Hey man the codes you have provided does not turn on my motors. Any suggestions. I checked everything the wires. pins.

عمرع4 (author)2016-09-27

could you write to me the tools you used ?

thank you very much for help:)

mysqo (author)عمرع42017-02-06

Every tool I used is listed above :)

pratik08shah (author)2017-02-06

could we use bluetooth instead of zigbee

mysqo (author)pratik08shah2017-02-06

Yes, that is definitely possible!

remaa (author)2016-08-28

hi sir, i have almost same robot car project with you but for wireless comunication i used nrf24l01. Where the rear wheels in the form of a dc motor is controlled with flex sensors and front wheels in the form of a servo motor controlled by the accelerometer sensor. Robot controller with a car connected with nrf24l01. if one of the sensors to control I can. but if it combines both to control I can not. Both sensors transmit data simultaneously . dc motors and servo motors confused receive data so that its movement is chaotic. How should I fix this? can you help me.? Can I send my program to you and you see.? Please. My email:

ShaanP (author)2016-07-05

Where did you get the plexiplate and what are the sizes you have it cut to?

jawaher905 (author)2016-02-16

hi, were are doing the same project but no values are coming in the Arduino

and the motor rotates but little bit then it stops.

mysqo (author)jawaher9052016-06-29


Sorry for the late reply. If you haven't figured it out yet, try to begin with establish a reliable connection between the arduino and the xbee without any motors connected to the arduino.

Fedal (author)2016-05-16

Hello can i buy this project ?

mysqo (author)Fedal2016-06-29

You mean you want to buy the the complete robot?

ShaanP (author)2016-06-24

How do I bit bang with the xbee?

mysqo (author)ShaanP2016-06-29

I don't even know what that is actually, sorry...

henlee6619 (author)2015-10-01

May i know what ur problem statement?

kami.shahanibaloch.1 (author)2015-08-10

i use joy stick instead of flex sensors doesnt work please help

afthabahmed (author)2015-08-06

please can any one tellthe cost of this project

afthabahmed (author)2015-08-06

can iknow the project cost

Ulquiorra Cifer (author)2015-08-03

Controlled by handgesture?!Amazing!But if your robot arm can be controlled in more ways,that would be greater.I hope I can get a robot arm that can be controlled by voice and by gesture.

JackL9 (author)Ulquiorra Cifer2015-08-05

Controled by gesture is a great achieve! Do you want to get a multi-controled robot arm? you might konw how to build one in here:

maker_studio (author)2015-08-05

cool project!

ChristopherH17 made it! (author)2015-08-03

Great project! Works very well, but the servos can get glitchy sometimes. The voltage regulator has to dissipate a lot of power and easily fries because of all the current it receives. I'd suggest using a fairly large heat sink on it, adding a few resistors beforehand to create a voltage drop, or even replacing it with a switching regulator. And you can easily program a hand gesture to switch between arm and robot mode instead of using a button

fatamee.fareed (author)2015-04-25

Hi friend, thank you for sharing this

i have 2 Xbee modules, 2 arduino mega boards, 2 Xbee sparkfun shields, and 1 Xbee explorer dongle. Can i manage configuring both Xbee modules using only 1 explorer dongle?!

ZamanB (author)2015-04-06


i tried making it its not working....


mysqo (author)ZamanB2015-04-06

can you explain more specific what's not working?

ZamanB (author)mysqo2015-04-11

will the car work with a 10 rpm 12v motor ?
cuz i tried putting a 12 v motor but both the servo n the 12v 10rpm dc motor are not working

mysqo (author)ZamanB2015-04-11

Which RPM the motors have dosent matter. Do you drive the motors with the H-bridge? And are the H-bridge powered with external 12V?
Regarding the servo, you must power this also with an external power source because arduino wont manage to deliver right amount of power to the servo.

ZamanB (author)mysqo2015-04-08

I don't know whether the Xbee is interacting between one another or its the problem of the motor.
I'm using a 12V DC motor of 10 RPM.
Does it really make a difference?

roborumble (author)2015-04-02

does it matter if the flex sensors are smaller in lenght for example 5.5cm? is there a difference between the sensors that you used which i think there are 11cm in length and some sensors that are 5.5cm? or the only differenceis justt the length?

the min and max parameters change according to your result in the flex sensor arduino program.
check this out:

This worked for me.

jweiss8 (author)2015-03-20

Cool it's like the power glove!

aniket5941 (author)2015-01-17

Hey can i use 2.2" flex sensor instead of 4.5".

mysqo (author)aniket59412015-02-26

Yes, sure you can! It does not depend on the actual size of the flex sensor. But what you have to do then is to change the paramters for the max and min bend values.

aniket5941 (author)mysqo2015-03-18

can you plz tell me new parameters for the max and min bend values for 2.2" sensor

vision_AVRRakesh (author)2015-02-22

I loved your project, my friend.
I want to clarify two things.
What is the difference between ZigBee interface board and the xbee dongle?
Is there any similarity between the dongle and the Xbee explorer?
Or are all the components the same?

mysqo (author)vision_AVRRakesh2015-02-26

No I think they are exactley the same.

vision_AVRRakesh (author)mysqo2015-03-08

do I need to remove the Atmega chip from the arduino while mounting the xbee shield in both cases?
if done so, should I connect the reset and ground on the arduino and mount the shields or not?

c1b3r915 (author)2014-11-27

Nice , Just in the future I would like that instructables site owners add the source code preview in the website , it would be awesome , Don't you think =P

mysqo (author)c1b3r9152015-02-26

I have the source code in the end of the instructable instead, I think it is there it belongs to be, and in a separate file.

AdaMstrange (author)2015-02-17

can I pick up simple objects like ball or little boxes?

mysqo (author)AdaMstrange2015-02-26

Yes, but it depends on how big the objects are. I mean the gripper is quite strong but the limitation is that the gripper cant open up more than 5 cm. (so unfortunately not beer carry compatible)

Raulwicke (author)2015-01-20

How workable would this project be with the idea of using a Raspberry Pi instead of Arduino boards?

mysqo (author)Raulwicke2015-02-26

It would absolutely be workable with a Rasperberry Pi instead!

psycho.maggot (author)2014-11-24

cool. it could be for making a wheel chair controlled by hand..

scigazer (author)2014-09-20

awesome! nice instructable .. :D btw, how much does all this project materials cost?? :/

navneetcsgowda (author)2014-08-29

misqu plz help me. i need yr help in another project. i am a 13y old kid who likes to make projects using arduino. mow i am stuck in a project. plz conyact me with .
whatsapp-+91 9164569398
if u r not there in both inform me. i ll make an account in which u r in.

Very cool!


About This Instructable




Bio: Dream like you'll live forever and live like you'll die tomorrow
More by mysqo:Handgesture controlled robot with robotic arm
Add instructable to: