NOTE: Any modifications to your PSP can permanently damage the device, causing unrecoverable errors (fried motherboard means no PSP).
NOTE: All modifications to the PS2 controller are deemed irreversable. Once done, it will not work for your PS2 anymore.
WARNING: I (nor any of the Cemetech crew) am/are not responsible for any damages done to your device(s) using this guide. Please take care in your decision to proceed with this mod!

Alright, this is a hardware modification to intercept PSP button presses, and inject PS2 button presses. To make it simple, when you press a button on the PSP, a circuit is made. The psp translates the completed circuit as a button press, and reacts appropriately in software. What we're gonna do, is find a point on the completed circuit on both the PSP motherboard, and the PS2 board, and link em. That way, when you press a button on the PS2 remote, it imitates the PSP button press, and the console recieves the command. Vice versa, if you press the PSP button, it still sends the command, since the PS2 remote doesn't cut or handle these commands.

Theres few documentations on the subject, and most of them are for 1 board. This tutorial (will be) based on the PSP TA-085 board.

Problem is, I have to translate the pinouts first. That I'm gonna need some assitance with.

First off, lets get you up to date with what I found out so far:
The official mod can be found here: http://www.acidmods.com/forum/index.php?topic=17761.0

An alternative mod can be found here:
http://www.acidmods.com/forum/index.php/topic,36297.msg273859.html#msg273859

Guide based on ?Joystick? and L2/R2 modification:
http://www.acidmods.com/forum/index.php?topic=15108.0

A full diagram of the PSP slim I'm using and it's components, look here:
http://www.dcemu.co.uk/vbulletin/threads/74258-PSP-Slim-amp-Lite-Disassembly-Tutorial

And my MB diagram is here: (HD 3456x2584, take care)
http://img852.imageshack.us/i/gedc0988.jpg/

Now that you're caught up, I need to get some help in figuring out exactly which pins translate to which pins. Here's what we have on the pins to date:

PSP: Location -> PS2
===========
Cross: Button Pin 1 -> Cross
Square: Button Pin 3 -> Square
Triangle: Button Pin 4 -> Triangle
Circle: Button Pin 5 -> Circle
-
Digi Up: Digi Pin 3 -> Digi Up
Digi Dn: Digi Pin 5 -> Digi Dn
Digi Le: Digi Pin 4 -> Digi Le
Digi Ri: Digi Pin 2 -> Digi Ri
-
LTrig: Digi Pin 1 -> LTrig
> L2Trig: undefined (read up on a combo switch)
RTrig: Button Pin 2 -> RTrig
> R2Trig: undefined (same as L2)
Start: Micro Pin 9 -> Start
Select: Micro Pin 10 -> Select
Home: Micro Pin 1 -> Analog (switch)
-
Left Joy (work in progress)
[1] 0v input -> PS2 GND (must cut PS2 source)
[2] Xv output -> X+ && X- (circuit)
[3] 2.5v input -> PS2 POS (must cut PS2 source)
[4] Yv output -> Y+ && Y- (circuit)
Right Joy (deciding on best use)
> Up: undecided (Triangle?)
> Dn: undecided (Cross?)
> Le: undecided (Square?)
> Ri: undecided (Circle?)

============

I've pre-labeled the cable locations, and provided high def zooms of the selected areas. But I have no idea how to locate the circuits besides poppin out an ohms meter and running the psp (while open) and press button by button >.>

[Customising Controls]
If you've been worried that one game maps the buttons (cross, triangle, square, circle), ex: Metal Gear Solid, while others use the DigiPad, ex: Phantasy Star Portable, then fear not. PSP developers have managed to create apps such as RemaPSP to translate any button presses, to any button emulations you want. So you can press the Cross, and the game thinks you pressed the digipad up. Awesome right? Another app is called JoySens, which can modify deadzones.

[Home]
It came to my attention that it would be cool to use the Analog switch on the PS2 controller to work like the Xbox 360 button, and open the Home menu. That would be a simple matter :3 but 1 more wire =.=

[L2, R2] (modded PSP only)
Reading up on the guide, it seems it might be wise to make a plugin for a modded psp to toggle the use of SCRN and SOUND buttons (micro bar) as L2 and R2. Though emulating PS1 games allow you to manually define any button as L2 and R2, It wouldn't have any effect on regular games (since screen and sound have no effect on the game-play).

[Left Joystick]
With Kerm's explanations, the 4 pins are as follows
[1] 0v input
[2] Xv output (based on tension)
[3] 2.5v input
[4] Yv output (based on tension)
So cutting my PS2 board and setting up the proper connections 'should' resolve the necessity of a microcontroller. Basing my analysis on this, I might be able to do the same for the buttons >.< Note that this is just theoretical, and the outcomes could be dissapointing (such as a lack of functionality altogether).
Looks to me like your motherboard diagram is fine, but that's not what we need. We need to see the button boards and their attached ribbon cables to figure it out. I know the answers about the slide joystick, thanks to my own hacking, but for the other part, the disassembly tutorial doesn't provide enough info.
I'll get you some updated photos in a bit then ^.^ cables, and the fail attempt at a button board >.>
Komak57 wrote:
I'll get you some updated photos in a bit then ^.^ cables, and the fail attempt at a button board >.>
Regarding the slide joystick, one thing you should be aware of is that it's resistive (analog), so that pushing it hard is different from slightly nudging it, and thus it's two axes that return an analog output, not four digital outputs for up/down/left/right.
yep, i know... The range is -255 to 255. And supposedly, the buttons have the resistive nature, but its almost strictly on/off because of the button press method... So injecting the right joystick should be pretty efficient still. <- as seen in input programming demos
That's correct. As mentioned on IRC, the analog stuff is why you need a microcontroller. Here's the pinout for the resistive joystick, by the way:

http://www.sparkfun.com/products/9426

In your motherboard detail at lower-left, from top to bottom, you have Gnd, Y-axis, +2.5V, X-axis (in other words, 4, 3, 2, 1).
That joystick would work if i was making my own controller, but seeing as i wanna use a PS2 controler with only wire solderings (remove the need to buy adapters and devices) in order to play the PSP. Though there is a mod that joo joo (founder of the PS2 controller mod) that embedded one of these as a right joystick onto the controller, but theres like... no room to make it as tidy as i'd like
You can do it with only wire soldering inside the PSP, using the pairs we discussed on IRC.
There MUST be modifications on the PS2 controller simply because the data transmission through the cable is incompatible...

unless you made a lil black box translate it like here:
http://forums.qj.net/psp-general/165075-release-control-your-psp-ps2-controller.html
which of course would require buying things >.< trying to keep this as free as possible besides solder and time. All the buttons are mapped out, and easy to wire, the Joystick is pretty much the last wiring i gotta figure out how to do... and i need it to do ranged movement >.> not 100% or 0%

Also still looking into the connector method, micro USB seems customizable, but unconventional... I was looking into a broken DC controller i had and the Dreamcast VMU card... that looked tantalizing for a connector :3. Then i found my old Monster Scanner game thingie (whatever the hell it is). It scanned bar codes, and either caught monsters, or fought em. Well, it connected to another device similarly to the VMU, but with a clip method and small metal buttons. These buttons would touch each other and transmit the data. Lookes like a really convenient method. With that, i could put the pins anywhere on the psp and it wouldn't really cause a problem. (but finding some pins similar would be complicated, and 19 something pins over the shell might be excessive.
or, you could just use the parts inside, soldering the joystick wires directly to the nub's pins, bypassing data conversions (and any resulting lag)

Buttons work the same way inside the PS2 and PSP, but the data transfer to the CPU is different, if the PSP has anything other than plain old I/O for its buttons, I'd be a little surprised.

Sounds like a fun project, however you do it!
That's basically what he's doing, unless I misunderstand you. Komak, regarding a connector, keep in mind that you'll need quite a few pins, at least (1+[number of buttons on controller]).
Aah, ok I misunderstood the post then Razz sorry.

Sounds worthwhile. I heard the nub on the PSP sucks. Maybe you could throw an external battery in there too! With all the unnecessary parts removed, like the rumble paks, there's quite a bit of space.
Yeah, could be fun. I think my biggest concern if I was doing this myself would be messing something up about my PSP in the process.
From the data i've gatherred, the problem is with the joysticks alone... All the buttons can be directly hooked up. The joysticks are different wiring methods... example here:


PS2 power voltage circuit appears to connect to RIGHT and DOWN.

This may be inaccurate (mostly on the PS2 controller) but its fairly basic... The PSP controller gets a better connection the farther you push it in a direction, with 2 circuits. 1 for vertical tension, 1 for horizontal. While the PS2 on the other hand, has a pad in the middle (i presume, since the outcome is the same) and moving the joystick in a direction increases the tension in the direction... move 50% down/left you get 50% -X, 50% -Y. There's also a power variance... The PSP runs on 0-2.5v, the PS2 runs on what seems to be 0-5v
the power variance shouldn't be an issue, since the joystick is just a potentiometer. Worst case scenario, the joystick has a shorter range than the nub because of a higher resistor value, which you wanted anyways.

I'm trying for the life of me to figure out the PSP's circuit Razz It's quite different. I suppose you could throw an avrtiny in there to convert the analog signals between them, but there's prob. a better way.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement