Page 1 of 3

DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 17th, 2022, 7:34 am
by prochazkaml
Alright. The PlayStation parallel port situation at this point is in a terrible place. People are in the best case buying similar connectors and chopping them up to fit in the console (which is probably the most sensible, however I'm not paying >$30 on DigiKey for a single connector + shipping from the US to Europe just to then figure out that it might not work at all), or just ripping them straight out of retro flash carts (please, please, PLEASE DO NOT DO THAT).

I've also read that Cybdyn Systems are manufacturing this connector for their PSIO, but they aren't sharing. (But then again, if they did, the shipping would probably cost at least 1 kidney, so that wouldn't be any good either.)

Anyway, I spent a bit of time studying the rear of a PlayStation and wondering to myself if I could manufacture such connector by myself at home. How hard could it be, right? It's just plastic shell with some pins inside!

The Prusa can take care of the plastic part, and I have a box of snipped off LED/resistor/capacitor legs from different projects, so sparing 68 of them to populate the connector is no big deal for me.

So, the materials are at my disposal, the hard part is going to be putting them together to form a functional PlayStation parallel port compatible plug.

I have already created a simple 3D model to see if it could be possible, and so far the future seems bright.

Image

Here it is snugly sitting in the parallel port :)

Image

I've already gone through 7 prototype prints :D

--------------------------------------

The overall game plan is to:

1) Design a 3D printable plastic part that fits in the PlayStation's parallel port capable of somewhat holding the contacts in place
2) Make a simple jig for creating the required contacts (bend it so that it creates a small "tooth" to "bite" into the PlayStation's connector a little bit)
3) Actually create all of the 68 contacts (I might actually not do all of them, I'll probably just stick to the basic power, ROM control, address and data lines) and populate the printed plastic part with them
4) Test continuity between the plug's contacts' ends and the PlayStation motherboard
5) Find an EEPROM/Flash chip at home that can run on ~3.5 V (or hook up a level shifter and a voltage regulator to a 5 V one)
6) Burn some code to the chip (? finally test out my RomBoot project on real hardware)
7) Get the whole setup to boot
8) Profit :D

So, uh, yeah, that's where I'm at right now. I'll continue on this journey tomorrow by improving the 3D model and fitting the old resistor legs inside.

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 18th, 2022, 4:06 am
by prochazkaml
Hey! Made some progress on the project, as promised.

Yesterday's post was written in quite a hurry, so it may not be as comprehensible as I would like it to be. Sorry about that, hopefully this post will fix that.

My intention for this project is to make a fully-working PlayStation parallel port connector to make the console to boot from an external ROM, since there is no easy/cheap way to obtain such connector otherwise. That's why I decided to make my own by combining some scrap materials I have at home with the power of 3D printing.

In the previous post, I have only attached some (crappy) pictures of my design, but I haven't shown it in detail yet. To fix that, here are some beautiful screenshots of OpenSCAD, in which I made the model:

Image

This is how it looks from the top. The "fins" are for the pins to exit out of both sides, since there will be an additional piece on the top which will be attached to the sides of this model (there are tabs on either sides, as you can see on the following picture) to keep the pins from falling out.

Image

This is the mating part of the connector. It fits into the PlayStation beautifully, and it's keyed, so it is only possible to insert in a single way. And you can also see the tabs on each side for the aforementioned second part of the whole assembly. The inside part of the connector contains guides for the pins so that they stay in place.

It's hard to show a 3D model in detail with just pictures, that is why I put it up on GitHub (which has a built-in 3D model viewer, just click on the "psx-pio.stl" file) as well as its OpenSCAD source code, if you want to give it a try or just want to mess around with it: https://github.com/prochazkaml/PSX-PIO-Connector

Anyway, now that the main part of the entire assembly is finalized (or at least I hope it is), it's time to discuss the actual metal contacts of the connector, which is possibly the most important part of the whole thing. I have settled on small snipped-off LED/resistor/capacitor legs that I have collected over the years:

Image

Yeah. I have way more than the 68 needed for the connector. (And as I have mentioned in the previous post, I will not actually need all of them for hooking up a simple ROM, which needs 32: VCC, GND, /CE, /RD, /WR, D0..7 and A0..A18 for a 512k ROM.)

I tried a simple test fit of one of the legs into the connector's body, and it fits prefectly, staying in place even when being moved around. The second part of the connector assembly will add even more rigidity, so I don't really think that the strength will be an issue here.

Here's a short video of me doing just that. I know that the part when I show you the inside of the connector is extremely blurry, appearing almost invisible inside, but trust me, it's in there.

So, that's it for today. Next challenge for tomorrow: make a simple jig for shaping the legs, since straight legs inside the connector won't make any contact, so they have to be slighty bent. And while I'm at it, I'll try to model the second piece of the connector. It will probably require some spring-like mechanism to hold onto the tabs on the side.

See you till then, and thanks to all following my little project! :D

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 19th, 2022, 8:33 am
by prochazkaml
Hello everyone yet again! :)

First of all, I have slightly modified the model of the connector's base – I made the pin holes a bit larger, since inserting them was impossible in certain holes due to printer inconsistency (printing 0.6 mm wide holes is a hard, trust me – now they are ~0.7 mm in diameter, and the pins now fit much better).

Speaking of the pins, the jig for making them is finally complete!

The model and its OpenSCAD source code are available in the same GitHub repo as all of the other part(s) of the project. It consists of a top and a bottom part. You insert your spare component leg inside the bottom part, and you squish it from the side with the top part. You know that it's done when the whole jig forms a nice and even cuboid. It's crude, but it works and prints in only 8 minutes. Click here to see a video of the jig in action.

So I made 2 pins (for VCC and GND), and it was quite difficult fitting them in (they have to be inserted from the part where the connector mates with the console, since they have a "tooth" on their ends), but in the end I got them in there and they do indeed make continuity with the rest of the console after a bit of fiddling. In this video (please excuse the giant mess), I prove that there is voltage coming out of my connector! Exciting stuff! :dance

However, getting these particular pins (for power) to work was probably the easiest part, since they are larger than the rest of the pins inside the PlayStation's connector:

Image

I can imagine that hooking up the rest (the control, address and data bus) is going to be an absolute nightmare. Oh well.

I still haven't made the second piece of the connector assembly, I might do that tomorrow – no promises though, I am still deciding on the mechanism which will connect both pieces together and hold them in place. However, I will definitely be making more pins, since I need like 32 of them (well, now just 30 with the VCC and GND done).

Oh, and I have to finally start with my school homework, but that can wait. As always, see you tomorrow! :D

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 19th, 2022, 5:34 pm
by Administrator
Very nice research and prototype work! Just contact Cybdyn Systems though. They'll sell you some.

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 20th, 2022, 1:55 am
by prochazkaml
Shadow wrote: February 19th, 2022, 5:34 pm Very nice research and prototype work! Just contact Cybdyn Systems though. They'll sell you some.
Thanks! :)

I have now contacted Cybdyn Systems through their JIRA Service Desk (because you can't just send them an e-mail...), we'll see if they respond. Sadly, I won't post an update to the project today, since the school homework deadline is dangerously approaching. I might post one tomorrow, depends on if I finish the homework early or not (there's a good chance that I will, though).

However, I am considering redesigning the bottom part of the connector – especially the "tabs" on both sides, turns out that was a terrible idea that would never work. I might just join the two parts with screws or small rubber bands, not sure on which one I'll choose yet (I am leaning towards using screws, since that might actually be easier, more precise and also look more professional).

So, that's all I have for today. Sorry about the disappointing post, but I promise that the next one is going to finally contain some progress (bottom part redesign, top part design, joining both parts together, making more pins etc.). Maybe Cybdyn Systems will answer me at that point? :D

But even if they do, I will probably still continue making my own connector (mainly because I don't think that shipping from Australia to Europe is going to be feasible for a single connector).

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 20th, 2022, 8:04 am
by prochazkaml
So, the fine folks over at Cybdyn Systems have actually responded to my request:

Image

Uh-oh. Well, that immediately tells me that the total price will be in the human organ territory, and since I am a broke student (who would really like to keep his kidneys intact, thank you very much), that probably won't work. Especially when I am only interested in making personal prototypes (probably just one :lol:), and I am definitely not planning to sell hardware anytime soon.

(By the way, nice profile picture, Matt!)

I followed up with what is the absolute minimum order possible. I'll post an update tomorrow, bye for now! :D

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 20th, 2022, 10:35 pm
by danhans42
The connectors are available on aliexpress/digikey etc and require very little modification. Just the angled sides need squaring off and are around 1 USD each on aliexpress or around 6usd on digikey

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 20th, 2022, 11:12 pm
by danhans42
Apologies there were more than I noted but still cheap.

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 21st, 2022, 1:29 am
by prochazkaml
First of all, thank you to everyone for giving me advice.

About the Cybdyn Systems deal: they offered to sell me 4 connectors for $30 AUD, so around $21.53 USD ? $5.38 USD per connector. Actually very reasonable, considering that these are purpose-made connectors.

However, I did not go through with it, because overseas shipping is unpractical at best (around $23 USD from DigiKey, $20 AUD (~$14 USD) from Cybdyn) for such low-volume applications. Sure, if I ever decide to make hardware on a larger scale, I'd probably buy these connectors in bulk, making the shipping cost negligible. The Cybdyn connectors are cheaper at $5.38 per piece (when purchasing 4), while DigiKey ones are $7.46 per piece or $6.58 per piece when ordering over 10 pieces (VAT included, converted from CZK). However, on DigiKey, if your order is >$60 excluding VAT, then shipping is free.

So I made this spreadsheet comparing the two, and in most cases, Cybdyn seems to win out on price (and remember, the price they offered to me was for the lowest volume, so it might go even lower for higher volumes):

Image

That said, ordering from Cybdyn seemed like a weird back-alley deal, sending personal information over chat and accepting only credit/debit cards. So in the end, I'm not really sure.

However, as this is a small personal project, I am not that interested in purchasing those connectors in such large scale at this time. That is why I started making my own connector in the first place ;)

Speaking of that, I made some progress, as promised yesterday!

The 3D models for the design of the complete connector assembly is finished, and is available in the same GitHub repo.

The bottom part as well as the jig for making the required pins have already been described in detail in previous posts, but now, I have finished the design by finally making the top part. It wasn't as hard as I though, and I even embossed it with the PlayStation logo (please don't sue me):

Image

You just screw the two parts together (screw head on the bottom part, nut on the top part) and you have a neat little connector assembly:

Image

For a full video showing the connector in its entirety, as well as its insertion into the console, click here.

Now, all I have to do is to make more pins and populate the connector! :D

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 24th, 2022, 10:38 am
by MottZilla
This is a pretty cool idea. 3D printing your own connector is a nice alternative if you can't source something suitable. Do you plan to design a PCB to use with it?

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 24th, 2022, 6:23 pm
by prochazkaml
MottZilla wrote: February 24th, 2022, 10:38 am This is a pretty cool idea. 3D printing your own connector is a nice alternative if you can't source something suitable. Do you plan to design a PCB to use with it?
Thank you! :D

Currently, I intend to solder directly to the connector just to prove that it works. However, there is nothing stopping me from editing the designs a bit to make a PCB-mount version of the connector. The top piece would then be unnecessary for this purpose, since the pins would be held in place by the board itself, and I would have to adjust the angle of the screws, so that the connector could screw directly into the PCB.

Image

But since I don't even have a concrete pinout for the connector at the moment (it's just a mess of old component legs scattered around, as you can see above), I can't start designing the PCB right away. However, after I prove that this connector works, the next step would be to edit it (as described above) and make a simple ROM cart with it (soldered directly to a PCB, of course).

The thing is, I am currently facing some issues with the connector – I can't insert it into the console properly. At least one pin is either misaligned or just too thick to fit inside the console's connector. So that's what I am fighting with at the moment. Once I manage to insert it into the console (without any of the pins bending/breaking inside) and the console doesn't explode when I turn it on, I will try to wire a ROM to it. And if that works, I will start working on the PCB. At least that's the plan ;)

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 25th, 2022, 3:41 am
by MottZilla
Be very careful not to short anything out! Seems like a very possible hazard with exposed metal everywhere. I hope you manage to get a ROM wired up successfully.

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 25th, 2022, 5:23 am
by prochazkaml
MottZilla wrote: February 25th, 2022, 3:41 am Be very careful not to short anything out! Seems like a very possible hazard with exposed metal everywhere. I hope you manage to get a ROM wired up successfully.
Don't worry, I haven't plugged it in yet (I can't, in fact, it does not fit). Of course, when I do (and before I turn on the console), I will make sure that none of the pins are touching (I will make a continuity test between the ends of the connector and the motherboard, just to be extra sure that nothing is shorted and that all pins are working).

However, all of the pins I am using are protected by resistors on the motherboard, so in case of a short, nothing should really go wrong:

Image

Note: on the picture, pin 4 (CS0) does not seem to have a resistor, but it actually has one, it's just in a different part of the schematic, directly next to the CPU.

I will of course make sure such thing does not happen, but this makes me confident that even if I screw up, the console will likely still be fine.

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 26th, 2022, 5:55 pm
by MottZilla
Well hopefully you don't have any resistors burn up. =)

Looking forward to seeing an update when you get a ROM booting.

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 28th, 2022, 4:31 am
by prochazkaml
Ladies and gentlemen,

She's in.

Image

Image

Tomorrow (or even today, if I make it), I'll take the console apart and test the continuity (and detect potential shorts) between the pins to make sure it's making full contact. I've hooked up the power lines, chip select, read enable, the first 8 bits of the data bus and the first 18 bits of the address bus (up to 256 kB ROM possible, which is more than enough for me), which should be enough to get a ROM to successfully boot.
MottZilla wrote: February 26th, 2022, 5:55 pm Well hopefully you don't have any resistors burn up. =)

Looking forward to seeing an update when you get a ROM booting.
Don't worry, I'll be careful. And yes, I'm looking forward to that moment as well! :D

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 28th, 2022, 5:53 am
by prochazkaml
Well that's definitely not good.

Image

There are 3 pins that did this: one in the front (in the red circle), one in the middle and one all the way in the back of the connector (I figured this out by looking at the mating part of the connector – I saw 3 pins pushed in).

There is perhaps a reason why people are not doing this! :D

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 28th, 2022, 6:34 am
by prochazkaml
Alright, so I did the first continuity check and only 4 out of the total 30 pins were bad (one data pin and 3 address pins), which is by no means perfect (the connector won't work properly when a single pin is bad), but it's way better than I was expecting. Upon looking inside my connector, yeah, these pins in particular definitely look sketchy (or are just straight out flat inside).

The good news is that upon inserting the connector into the console, none of the pins are being bent inside the motherboard's connector anymore, since I have pushed in the conflicting pins inside my connector a bit further.

And yes, the board still boots up fine. When I was probing the power lines just to make sure that I hadn't screwed anything up, I panicked for a bit when the 3.5 V rail appeared to be shorted to ground, it turns out I was just accidentally touching the PIO connector's (grounded!) shield with the positive probe! :D

NOTE: If you couldn't already tell, this project is not for the faint-hearted! If you are insane enough to follow with my progress at home, you are at your own risk!

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 28th, 2022, 10:59 am
by MottZilla
Yeah, deforming pins/contacts in the console's connector is definitely not good.

Are you planning to just hookup a EPROM with a Action Replay or GameShark ROM? Or the NoCash BIOS?

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: February 28th, 2022, 5:20 pm
by prochazkaml
MottZilla wrote: February 28th, 2022, 10:59 am Yeah, deforming pins/contacts in the console's connector is definitely not good.
I know, I have fixed them now. However, if my findings are correct, you shouldn't be able to easily short any two pins inside the motherboard's connector by pushing one in really hard, since they are quite spaced out in front of each other.

And the console still boots fine, so no problem I guess.
MottZilla wrote: February 28th, 2022, 10:59 am Are you planning to just hookup a EPROM with a Action Replay or GameShark ROM? Or the NoCash BIOS?
I'm planning to hook up a simple ROM on which I will burn sioload. Imagine PSXSERIAL, but 9 times faster.

Re: DIYing a plug that fits the PlayStation's parallel port to boot from a ROM

Posted: March 1st, 2022, 7:16 am
by MottZilla
That's certainly a lot faster. With the small amount of development I've done I have always just built an ISO and loaded it up in an emulator for quick tests and then later used PS-IO for real hardware tests. I had thought about the serial cable option but I like being able to load data from CD. But it all depends on what sort of development you're doing.