How to Control Servo With Play Station 2 Controller




About: Just an ordinary guy...working towards a B.Tech in computer science engineering.

I wanted an easy way to control my robots servo so i googled for a suitable solution but couldn't find one. so i decided to use my old ps2 controller for this purpose and it worked perfectly.

So here is a step by step guide for you to do the same..Hope you'll like it.. :)

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Thing You'll Need

1. Arduino UNO or any other arduino with pwm output x1

2. Breadboard x1

3. Hookup wires

4. Servo motors x1-4 (you can control upto four servo with this code)

5. Power source for Servos(arduino can't supply enough current,i used a variable voltage battery eliminator)

6. Play station 2 controller(I used wireless controller).

7. Soldering iron (For making a connector for ps2 controller,Skip this if you already have connector)

8. PC with Arduino IDE installed

9. Bill Porter's ps2x lib installed (Download it from here).

Step 2: Making the Connector

i'm not gonna explain this one in detail. Well i made my one with a broken ps2 multitap (luckily i found one laying around).So basically what i did here is that,i de-soldered the female connector from multitap and soldered some hookup wires and male headers with it

Step 3: The Circuit

Circuit here is pretty simple.just the connect the servo in the following manner :-

servo 1------------------> Arduino digital pin 9

servo 2------------------> Arduino digital pin 6

servo 3------------------> Arduino digital pin 5

servo 4------------------> Arduino digital pin 3

Now connect ps2 controller to arduino

Data-------------> Arduino digital pin 12

Clock------------> Arduino digital pin 13

Attention--------> Arduino digital pin 10

Command------> Arduino digital pin 11

Note- If you use external power source for the servos then don't forget to join GND of both arduino and power source.

Step 4: Arduino Code !!!

Now just upload this code to your arduino and you're ready to roll

Step 5: Troubleshooting

1. No controller Found -

check your wiring again or check this LINK for possible solutions

2. Servo jittering -

Try to feed servo with external power source.

Still have some issue???Feel free to comment and I'll try my best to solve it.

---------------->VOTE for my instructable in MIND FOR DESIGN contest if you like it<---------------------

Mind for Design

Participated in the
Mind for Design

2 People Made This Project!


  • Made with Math Contest

    Made with Math Contest
  • Multi-Discipline Contest

    Multi-Discipline Contest
  • Robotics Contest

    Robotics Contest

24 Discussions


Question 2 months ago

can it control 16 servos cause i want to make biped humanoid robot and please reply soon


9 months ago

I met a problem like this: when the RX led is lightted, PS2 controller is useless and can not control the servo, I don't know the reason and waitting for your help~~, thanks


4 years ago

didnt understand the multitap point. kindly explain it in detail

2 replies

Reply 4 years ago on Introduction

its very simple buddy, when I took out the female connector from the multitap I found 9 pins on the back side of it as you can see in the pictures then soldered wires on each of that pin along with male headers.That's it !!!


Reply 2 years ago



i am a new user to arduino......can you provide arduino code for controlling six servo motors. i will really appreciate for it.


2 years ago

I tried to make this but I keep getting no controller found. I am using the lynxmotion ps2 controller (possible v2) with its receiver (a little black rectangle). I didn't use the connector that you showed above because I don't really understand what you did there.

The "pairing" light on my controller and receiver goes from blinking to solid after a little while. I assume this means that they are pairing properly. I would appreciate any help you can offer.


3 years ago

Is it possible to control those 2 servos with a RC I salvaged from a totaled RC car? In other words, can this be radio controlled instead of wired with a remote?


3 years ago


Super your tutorial it made me much progress on my project.
I have a question, is it possible to control 6 servo motor.
4 with the joystick as currently and 2 by two buttons on the PS2 controller.

Can we vary the speed of the servo motor rather than the position because I need precision during movement.

I'm not very good at code all help is welcome: D, just give me the tracks if possible.
The project is to control a robotic arm with a clamp and a camera that can rotate left or right.

Thanking you in advance.

sushant panaskar

4 years ago

can you plz send me the entire code......


4 years ago on Introduction

Hello, what about PS3 controller?. It´s posible create a file code to control 4 servos to a Drone?! Awasome !

1 reply

well my code works only for ps2 controller, but yeah their are other instructables for ps3 controller as well ,you can give them a try. and with my code you can control up to 4 servo easily.


4 years ago on Introduction

I'd love to see if this could be expanded to control a houseboat with inboard screws and a gearbox to let them run independently from each other, to have it run like a zero-turning-radius mower or a tread hoe.

1 reply

Reply 4 years ago

pretty sure it could but that would be one ugly engraving.


4 years ago on Introduction

Thanks for sharing this *REALLY NICE IDEA* ! ! !

I wonder if it could be used to drive a Laser engraver CNC!

really nice & useful tipo to recicle old devices!!!

1 reply