To quote: Hello everyone, I am glad to introduce the long awaited PS3 Remappable controller. This project started with the express intention of granting Chuck Bittner his desire to remap the buttons on a standard controller.
With this controller, Chuck will be able to remap the buttons on any current and past game that he normally would have to pass on due to the ergonomics of the default button layout. But his petition is much more important than that, as it will allow stock controllers the same ability for all games in the future. So please visit his petition (petitiononline.com/cu5t0m/petition.html) and support the cause.
OK. Now onto the main event! I have spent better than 6 months of late nights (I dont have free time before 10PM) getting this modification to work just right. I have made the decision not only to make the first controller for Chuck, but I am also releasing the files neded for other modders to make thier own, or use it for other abled gamers.
In the past, my work has been raped/bunked/stolen as others work and this made me ponder if I should make this mod public or not. My compromise is this: I will release the hex files and the utility and the schematics, but the source code will remain my own. The mod will function as intended without giving anyone the hard work I put in to make a rapidfire and profit from me again.
If they want to market the remap as is, thats fine by me. This modification is difficult enough, it probably should be left in the hands of professional modders to perform. Which brings up the next point:
THE DIFFICULTY OF THIS MOD IS HIGHER THAN NORMAL. IT REQUIRES CUTTING TRACES AND SOLDERING TO VIAS. AS SUCH, PERFORMING THIS MOD IS AT YOUR OWN RISK AND ACIDMODS AND I TAKE NO RESPONSIBILITY FOR ANY DAMAGE THAT MAY OCCUR.
So, the reverse engineering of monitoring the button signals and then having the PIC replicate the signals correctly was a good adventure. First up (for the technically inclined) is that this mod uses the PIC18F14K50 and a modified bootloader to hold the firmware.
The bootlaoder was modified to use only one LED and keep the outputs in a safe condition for the PS3 controller during firmware updates. Then came the modding: The LED was installed into the PS3 button using a dual red/green SMD.
The tact button for enabling the bootloader and getting the controller into USB mode was installed on the top of the controller:
The USB port was fashioned from a 2.5mm plug and jack. The finished product was very sleek looking (too bad the tact looks ugly).
I know what your thinking: Why not use the USB port on the controller? I did not fully test the possibility, but there is a chance that wiring both USB ports together could result in either the PIC getting reallt messed up while your chargin the PS3, or you could lose the ability to charge your PS3 from now on. The PS3 requires a USB pre-amble to charge from the USB port.
You cannot simply use a 5V source with a USB cable end. The PS3 will shut itself off if it does not get the proper communication protocol when it needs to charge. So on to the wire tidying:
I really should have just etched a SMD PCB to get this all in, but I thought I was saving time by free-handing the entire circuit (I was wrong):
In the end, we now have the final mod for Chuck Bittner. A quick demo (video below).
Here is the main schematic. It shows the components leading to the points on the PS3 PCB:
Here are the PCB points on the V35X board: (pictures credit to RDC (really, who else?))
and the VX3.0
Once installed, the buttons are disconnected from the PS3 main inputs and the PIC then deciphers the remapping stored in EEPROM and sends out the new signals. This means you can map any button to any other button. You can make all the buttons be DPAD up if you want (but you never should). Another feature is the Toggle/Hold function. You can set the button to toggle its new mapping instead of direct remap.
By this I mean you tap the button to make the function turn on and stay on as if you were holding the button down indefinately, and another quick tap would turn the function off. This should help greatly with sight-aiming. One downfall of this mod is that the buttons are originally analog/pressure sensitive.
The PIC is programmed to create digital signals, so there is no intermediate values. Remember this for driving games. Another feature is that you can adjust the pressure needed for the PIC to see a button press. You can make the controller very sensitive, or require a good tap to register presses, its your choice.
The following buttons are the ones that can be remapped to each other: X, Circle, Trianlge, Square, R1, R2, L1, L2, DPAD up, DPAD down, DPAD right, DPAD left, right stick click (R3), and left stick click (L3). The analog sticks were left alone (sorry, no southpaw).
The user guide and zip file with all schematics and the PC utility can be downloaded (above).
This has been installed on my own V3.5X Dualshock that I am donating to Chuck. Modded Matt is in the process of testing one of the other versions.
In final mentioning, the bootloader has made it possible to fix any bugs that may be found in the future. It also means that if a remapping feature can be improved, I can create the firmware and it can be added without opening the controller. I will not be adding macros or rapidfire though. If I did that, this would simply not be public in any form or manner. Sorry, I have fed the Ebayers enough already.
And Chuck, I hope this controller helps in some small way, and is a good crutch until they finally make it so that the controller is remappable through the PS3 dashboard.