Introduction: PS3 Controller Vibration LEDs (+ Button Misfire Fix)
If your PS3 is starting to push 4-5 years of use, your controllers are apt to start misbehaving; buttons start mysteriously pushing themselves or pushing each other, and sometimes will stubbornly refuse to register a press at all. My particular controller here was in bad shape: sometimes the R2 trigger would go off on its own, the select button chronically refused to cooperate, and clicking the left stick in would send the entire controller into fits to where it had to be shut off and turned back on before it would work "properly" again. Not good!
But never fear, as there is a quick and easy fix for this: usually it's just a matter of dirty contact points or a pad that's lost its spring (more details below). A little cleaning and a strip of electrical tape, and it'll be good as new. But I figured while I was poking around in there, why not install some lights?
This instructable will show how to fix a misfiring controller and/or how to install a couple LEDs which are tied to the vibration function. The LEDs stay unlit for the most part and only light when the vibration motors are engaged. It's a fun little mod that doesn't require a lot of equipment, technical knowhow, or time.
Step 1: Materials and Tools
- 30 AWG wire (2 colors)
- (4) 3mm LEDs*
- (2) resistors*
- (2) clear/opaque thumb stick pieces**
- PS3 dual shock controller
*The color of the LEDs is up to you, but just know that different LED colors might need different voltages to operate, causing the resistor values you need to change. My particular LEDs are 3mm red and have a forward voltage of 1.7V, meaning my resistors are 82 ohms. More about this in the relevant step below.
**I picked up the clear/opaque parts from an ebay or amazon store. I just buy the really cheap ones from China. I've modded an entire controller with these clear buttons and they work just fine.
- soldering iron
- exacto-knife (or a small-bit drill or dremel tool)
- small phillips head screwdriver
Optional tools: (things that aren't necessary but might make things easier)
- helping hands
- hot melt glue gun
Step 2: Disassemble Controller
The back of the controller has 5 screws you'll need to get at. Once you have them out, there's a little trick to getting the back cover off without popping off the trigger buttons (L2/R2). First, press down on the bottom center of the controller, just below the PS button; there's a small latch there which you need to disengage. Then keep the top of the controller closed but open up the bottom, like a hinge. The goal here is to get that small latch up and over the battery. Once you do that, keep opening the controller from the bottom until you can slide the R2 and L2 buttons through the holes in the back shell. Don't worry: if you pop these buttons off, they're easily reattachable.
Once you get the back cover off, pull the battery aside (no need to disengage it) and get at the last screw holding in the PCB.
The last thing holding in the electronics are four little clips down by the vibration motors. These are VERY EASY to disengage and should not require any force at all. (my first mod, I had a doozy with these and then kicked myself when I finally figured out how easy it was). If you look closely, you'll see that there are little "nubs" on the white plastic component which can be squeezed to disengage the while plastic from the black latches. Do this for both sides and the PCB and plastic housing should now be loose.
The PCB is connected to the white plastic housing via the vibration motors. There's no need to desolder them and separate the unit into two pieces. I recommend lifting by the white plastic and keeping the whole thing face down (sticks pointing down). You should be able to take the entire thing out and get at the buttons and shell beneath.
Step 3: Drill the Holes
I've found that two LEDs work best to light each stick - one placed horizontally and one vertically on the outer rim of each stick housing. Because I don't own a drill or dremel, I had to drill the holes for each LED by hand. I placed the point of an exacto-blade against the plastic and twisted it until it bit, then continued rotating the blade and gradually enlarging the hole. I actually prefer this method as I can control exactly how much of the plastic gets eaten away and I can make the LEDs fit really snugly in the holes. This is useful, since on this mod I drilled the holes so well that I felt the LEDs didn't need hot glue to stay put. That said, a drill or dremel would be far more efficient.
Your holes should be just big enough for the head of the LED to fit inside. In the end, you want your LEDs to sit near flush with their hole. Don't let them stick out too far or they'll interfere with button movement.
Step 4: (optional) Fix Your Button Misfires!
There is a very easy fix to deal with misbehaving buttons. First, take a look at the circuitry "film" on the front of the white plastic housing. Make sure it's clean and that the contact points (where the buttons hit the sheet) are clean; carbon can build up here and prevent a good contact.
This film makes contact with the circuit board at the pins behind the little black pad (see images). As controllers age, this pad looses its elasticity and doesn't push the pins as snugly against the PCB as it needs to. To give it a little boost, take a piece of tape (I used red electrical tape), fold it in half, and place it behind the pad. This will push the pins a bit more securely against the board. This little fix can easily give a few extra years to a controller that seems like it's on its way out.
Step 5: Wire Your LEDs
Cut the legs short on your LEDs, but make sure you cut one leg longer to remember which is your positive contact and which is negative. (if you forget, most LEDs tops have a "flat" side on the base which indicates the "negative" or "ground" side with the short leg, which usually gets a black wire)
I found it best to cut two different lengths of wires: a shorter length for the horizontal LED and a longer for the vertical (since it needs to snake its way around the buttons and meet the other wire on the side).
I didn't have any helping hands, so I found the best way to form a solid connection was to twist the wire as shown around each LED.
Once you get each individual LED wired, place the LEDs in the controller shell and figure out where you're going to run the wires. It's the vertical LEDs you need to worry about as their wires have the potential to interfere with button movement. You can see that I've snaked the wires on the right side of the controller around the bottom of the D-pad. On the left side, I snaked the vertical LED wires diagonally through the X/O/T/S button housings. It may be best to use some hot melt glue at this point to make sure your wires and LEDs stay secure and out of the way. Just make sure the glue doesn't interfere with any button movement.
Once you have your LEDs placed, on each side you'll want to twist the two positive ends together and the two negative ends together. The wires should be coming out on either side of the controller: we'll be snaking them around the horizontal edge of the white plastic housing and PCB. Don't solder them quite yet though, because...
Step 6: Calculate Resistor Value
You need to select a resistor value. I couldn't find any specs on the vibration motors, so I did some "brain surgery" and powered the controller while it was taken apart, measuring the voltage on the motors while they were firing. I got a max reading of around 3V.
My particular 3mm red LEDs have a forward voltage of 1.7V. Your mileage may vary. Make sure you know how many volts your LEDs require.
3V - 1.7V = 1.3V that we need to account for with a resistor. (LEDs are each wired in parallel, so the calculation only needs to account for a single LED)
Now you need to figure out how much current you want to flow through. I've found that anything between 10-20 mA lights LEDs bright enough for me, and the lower your current the longer your lights will last (and the longer your battery will last).
Ohm's Law tells us Voltage = Current x Resistance. So
1.3V = .010R
R = 130
1.3V = .020R
R = 65
So we need a resistance value between 65 and 130. I chose something in the middle (82 ohms) which should give me a current of about 16mA. The higher your resistance, the lower the current and the dimmer the LEDs (and vice versa).
Once you figure out your resistance value, cut the legs short on each resistor (you'll need a resistor for each pair of LEDs, one for the left pair and one for the right pair) and then solder the resistor to either of the twisted together positive or negative leads. It doesn't matter which end you attach it to.
Step 7: Swap in New Thumbsticks, Solder LEDs to Motors, Reassemble
You'll want to carefully pull the white plastic housing away from the PCB so that you can swap out the thumbsticks. The old black thumbsticks should pull off without too much fuss and the new ones just need a little push to go on. Don't worry about really forcing them down; you can push them in super-securely once the controller is reassembled.
Double check to make sure your wires aren't obstructing any button movement. Before you put the white plastic housing + PCB back in, make sure you put back the white D-pad and button pads. (I forgot this once... duh).
Finally, put your plastic housing with PCB back into the controller shell, making sure the wire ends escape around it cleanly. Screw the board back in (don't forget this screw!) and do a quick check that the button action feels right. If it doesn't, take it back apart and reposition the wires.
Wire the paired LED ends to the points on the PCB where the vibration motor wires are placed. You can see from the photos that my soldering is really sloppy here, but it does the job just fine. Just make sure that in the end, the LED wires lie as flat as possible, but not touch any other contact points on the controller. If you wired the LEDs properly, black should go to black and red to red on each side. (the right side is pictured here)
Then reassemble the controller, put in a game where you can easily trigger a controller vibration, and test your new LEDs out!