PS1 Controller Joysticks with Arduino




Idea: To take one of my old Playstation 1 controllers and extract the dual thumbstick setup so that it can be easily used in a microcontroller project (in my case: with the Arduino) without extra libraries or drivers that you would need if you want to use the entire controller.
PS1 Controller Joysticks with Arduino




Please let me know what you think or if you have questions/criticism for me! I’m always looking to learn new things.Required materials:
~ Playstation 1 controller
~ Soldering Iron
~ Solder
~ Knife
~ Wire strippers/cutters
~ Electrical Tape
~ Small Phillips head screwdriver
~ Two mid-value resistors (for pushbutton cicuits)
~ Third Hand (not absolutely necessary but makes soldering small things much much easier)
~ 22 gauge wire

Video Demo:

<br />Demo code (copy and paste the following text into the Arduino IDE):

const byte leftClick = 2; //assign the pins for the buttons
const byte rightClick = 3;
const byte leftVert = A2;
//assign the pins for the pots
const byte leftHor = A3;
const byte rightVert = A0;
const byte rightHor = A1;

int delayTime = 50; //so the serial output is more readable

void setup(){

pinMode(leftClick, INPUT); //set button pins to input
pinMode(rightClick, INPUT);

Serial.begin(9600); //lets arduino send text to computer
}

void loop(){
//output formatted as leftHorizontal, leftVertical, leftButton, rightButton, rightHorizontal, rightVertical
Serial.print(analogRead(leftHor));
Serial.print(“, “);
Serial.print(analogRead(leftVert));

Serial.print(” “);
Serial.print(digitalRead(leftClick));
Serial.print(” “);
Serial.print(digitalRead(rightClick));
Serial.print(” “);

Serial.print(analogRead(rightHor));
Serial.print(“, “);
Serial.println(analogRead(rightVert));

delay(delayTime);
}

Step 1: [Figuratively] Rip it Apart

The controller is really easy to take apart. First unscrew the 7 Phillips head screws on the outside of the controller. When you open it up, you’ll see one more screw on the right of a clear plastic piece (the plastic piece just reflects a small LED that’s mounted on the main PCB) which is necessary to screw everything back together (if you’re not planning on using the controller case again, you can just toss it). Unscrew the last screw and cut the white wire ribbon holding the thumbsticks to the main PCB (cut it so that you have a lot of wire ribbon on your end–it makes the soldering much easier).
PS1 Controller Joysticks with Arduino
I could have desoldered the joysticks and buttons and used them individually, but I wanted them together as a whole since it’s a good way to have really compact dual joysticks for a future project (most likely a wireless robot).

Some things to note: there are two different sized rumble motors you can salvage as well as the L1 and R1 shoulder buttons which are in their own casing. I took the motors but tossed the shoulder buttons because I don’t plan on ever using them, but someone might find a use.
I haven’t tried finding the specs for the motors yet, but I assume it must be around 5v. If anyone knows, let me know.

 

For more detail: PS1 Controller Joysticks with Arduino




Clip to Evernote

Leave a Comment

(Spamcheck Enabled)

Read previous post:
Arduino Binary Die using arduino

After buying a Nanode (an Arduino-compatible board with ethernet built-in) last weekend, we've been trying to work it out by...

Close
Scroll to top