Yet another PSone serial port mod

Start a work log and update it occasionally with your projects progress
Post Reply
rsoft
Rookie Programmer
Rookie Programmer
Posts: 19
Joined: Jun 22, 2013
Location: /home/rsoft

Yet another PSone serial port mod

Post by rsoft » July 6th, 2013, 4:11 am

Hello!
Well, a little while back I had the idea of adding a serial port to my PSone so that I could test my PSX software on real hardware.
After a bit of searching, I stumbled upon this blog post: http://psx0.wordpress.com/2013/01/22/ps ... nk-serial/
The blog post wasn't very in-depth so I had to search for more info and traced back the marked test pads using a schematic diagram.
Since I didn't have a FT232 on hand I decided to go with a MAX3222(you could use a MAX3232 as well, but I didn't have one of those either).

The first thing I actually did was adding a pseudo-SIO port to my PSone.
The SIO port found on a PSX has some signals inverted, but the signals you can find on the test pads are just right so that you don't have to invert them before feeding them into a max3222.
For the pinout of my pseudo-SIO port I opted to go with an extended PSX SIO pinout. (All the signals are on the same pins as on the PSX but with an additional 5V to play with.)
Here are some photos of that along with annotations:
Image
Image
The whole thing with shield and connector in place:
Image
The finished product looks like this:
Image
The connector isn't actually glued in place but still stays where it should fairly nicely (except when you open the cd cover, but it's nothing major).

I'm going to take photos and document the rs232-3.3v ttl level shifter soon.

If you have any suggestions or comments, feel free to leave them below. :)

Until then,
rsoft

edit: I've corrected the test pad images as pointed out by JamieK97 as well as (hopefully) improved overall readability of the annotations.
You do not have the required permissions to view the files attached to this post.
Last edited by rsoft on April 23rd, 2014, 9:03 pm, edited 1 time in total.

User avatar
Shendo
Verified
C Programming Expert
C Programming Expert
Posts: 250
Joined: Mar 21, 2012
I am a: Programmer
Motto: Never settle
PlayStation Model: SCPH-7502
Discord: ShendoXT
Location: Croatia, EU

Post by Shendo » July 7th, 2013, 11:45 am

Awesome work. Looks really neat, unlike my attempt (tore 1/3 of the back side of my PSone).
Did you get it to work with Hitmen's upload application?
I had trouble since it needs 5 data bits which my FTDI based RS232 adapter couldn't do.

Also, I'm not sure why it was made for 5 data bits transfer in the first place but I'm guessing Hitmen had a good reason...
Dev console: SCPH-7502, FreePSXBoot, CH340 serial cable.

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » July 7th, 2013, 8:28 pm

Asynchronous communication. I would assume 1 start bit, 3 data bits and 1 stop bit :shrug
Can't tell until the protocol is analysed with a logic analyser.
Development Console: SCPH-5502 with 8MB RAM, MM3 Modchip, PAL 60 Colour Modification (for NTSC), PSIO Switch Board, DB-9 breakout headers for both RGB and Serial output and an Xplorer with CAETLA 0.34.

PlayStation Development PC: Windows 98 SE, Pentium 3 at 400MHz, 128MB SDRAM, DTL-H2000, DTL-H2010, DTL-H201A, DTL-S2020 (with 4GB SCSI-2 HDD), 21" Sony G420, CD-R burner, 3.25" and 5.25" Floppy Diskette Drives, ZIP 100 Diskette Drive and an IBM Model M keyboard.

User avatar
Shendo
Verified
C Programming Expert
C Programming Expert
Posts: 250
Joined: Mar 21, 2012
I am a: Programmer
Motto: Never settle
PlayStation Model: SCPH-7502
Discord: ShendoXT
Location: Croatia, EU

Post by Shendo » July 10th, 2013, 11:23 pm

Well, luckily I was wrong. Hitmen's send application uses 8 bit data transfer (8n1).
The problem lies with Dosbox:
Many USB serial ports do not support a 5 bits per byte configuration however when
configuring a serial port under DOS it is fairly common practice to simply set the
serial ports LCR register to 0x80 to set the DLAB bit before setting the LCR to the
actually desired value.
So I installed XP in VirtualBox and got everything working. Send.exe works now.

Image Image Image Image

I'm using Arduino but only it's RS232-USB adapter.
And sorry for the crappy pics, it's an old cellphone...

Edit: I've made my own version of Send.exe which works on x64 Windows.
Dev console: SCPH-7502, FreePSXBoot, CH340 serial cable.

rsoft
Rookie Programmer
Rookie Programmer
Posts: 19
Joined: Jun 22, 2013
Location: /home/rsoft

Post by rsoft » July 12th, 2013, 12:46 am

Thanks :)
Great to see that you've got it up and running!
I didn't use a 9-pin DSUB connector because that could easily be confused with an RS232 I/O port and we don't want to fry our consoles, do we? ;)
Weird. My RS232-USB adapter seems to be able to cope with the mode that Dosbox uses as I've been able to upload the HAUNTRO.EXE using SIOCONS and a Net Yaroze boot disk using Dosbox and Linux.
Edit: I can't remember if I've really used Dosbox or Dosemu.
I'm sure you're aware, but I still want to clarify this: You're able to get away with just RX and TX because HIT-Serial doesn't use any kind of handshake. The docs say that there is no error correction either.
Net Yaroze on the other hand at least requires RTS/CTS for file transfer, the console works with just RX and TX as well.
My MAX3222 adapter actually only has one MAX3222 and only has RxD/TxD and CTS/RTS connected.
Nice work on the HIT-Serial send.exe clone!
Last edited by rsoft on July 17th, 2013, 11:30 pm, edited 1 time in total.

danhans42
BANNED
BANNED
Posts: 330
Joined: Nov 28, 2012

Post by danhans42 » July 17th, 2013, 2:39 am

@rsoft..

The blog post you linked to in the first post is my blog :-). I kept meaning to add more detail to it but never got round to it. Thanks for the tip about using VPC for HITSEND, never tried that but will give it a go.

rsoft
Rookie Programmer
Rookie Programmer
Posts: 19
Joined: Jun 22, 2013
Location: /home/rsoft

Post by rsoft » July 17th, 2013, 11:37 pm

danhans42, great to see that you meant to add more detail later on. I still have to get around taking photos of my RS232 adapter build, so I'm not the only one. :D
About HITSEND: Shendo took the time to reverse the protocol used and has kindly posted it (together with a .NET clone of HITSEND) over here: http://www.psxdev.net/forum/viewtopic.php?f=60&t=372
As you can see, Shadow has posted a modified version of that over here: http://www.psxdev.net/forum/viewtopic.php?f=60&t=378
Hope that helps you (or somebody else). :)

JamieK97
Interested PSXDEV User
Interested PSXDEV User
Posts: 5
Joined: Apr 21, 2014

Post by JamieK97 » April 21st, 2014, 9:55 pm

Hey guys, sorry for recovering a bit of an old thread.
Just did the serial port mod on my modchipped SCPH-102 and it turned out very tidy. I am using a PL-2303 serial converter to do the work to connect it from the DB-9 in the ps1 to my pc's usb port.
Image
Image

Then I burned a cracked net yaroze boot cd, hitman serial loader and also the psxserial loader on to 3 different cds using cdburnerxp. Hitman loader suggested to use CDRWIN so I used it for that.

However none of my disks boot on my PS1. Images worked OK in the emulator but my disks also don't work in the emulator (they say IOcontrol: raw read error, the parameter is incorrect.)
So basically I burned 3 lemon/coaster CD-Rs.
Any idea why this is happening? I saw everyone else has success. Let me know if you can help! Maybe I'm burning it wrong....

Jamie
You do not have the required permissions to view the files attached to this post.

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » April 21st, 2014, 10:14 pm

Use ImgBurn.
Development Console: SCPH-5502 with 8MB RAM, MM3 Modchip, PAL 60 Colour Modification (for NTSC), PSIO Switch Board, DB-9 breakout headers for both RGB and Serial output and an Xplorer with CAETLA 0.34.

PlayStation Development PC: Windows 98 SE, Pentium 3 at 400MHz, 128MB SDRAM, DTL-H2000, DTL-H2010, DTL-H201A, DTL-S2020 (with 4GB SCSI-2 HDD), 21" Sony G420, CD-R burner, 3.25" and 5.25" Floppy Diskette Drives, ZIP 100 Diskette Drive and an IBM Model M keyboard.

JamieK97
Interested PSXDEV User
Interested PSXDEV User
Posts: 5
Joined: Apr 21, 2014

Post by JamieK97 » April 21st, 2014, 10:18 pm

Shadow wrote:Use ImgBurn.
Thank you. Hopefully that will work without making another coaster :D

tlrmcknz
Curious PSXDEV User
Curious PSXDEV User
Posts: 28
Joined: Feb 18, 2014

Post by tlrmcknz » April 23rd, 2014, 2:55 pm

JamieK97 wrote:Hey guys, sorry for recovering a bit of an old thread.
Just did the serial port mod on my modchipped SCPH-102 and it turned out very tidy. I am using a PL-2303 serial converter to do the work to connect it from the DB-9 in the ps1 to my pc's usb port.
I have a PL-2303 sitting here and am going to attempt this. Is this as straightforward as connecting the PSX lines to the appropriate DB9 pins and done? Or is there something I overlooked reading?

JamieK97
Interested PSXDEV User
Interested PSXDEV User
Posts: 5
Joined: Apr 21, 2014

Post by JamieK97 » April 23rd, 2014, 7:28 pm

tlrmcknz wrote:
JamieK97 wrote:Hey guys, sorry for recovering a bit of an old thread.
Just did the serial port mod on my modchipped SCPH-102 and it turned out very tidy. I am using a PL-2303 serial converter to do the work to connect it from the DB-9 in the ps1 to my pc's usb port.
I have a PL-2303 sitting here and am going to attempt this. Is this as straightforward as connecting the PSX lines to the appropriate DB9 pins and done? Or is there something I overlooked reading?
Hey,

That's great to see you have one! I'd like to see another successful mod like mine with the pl-2303.
It's really easy to do and yes that's all there is to it. Just make sure when soldering the wires to the ps1 that they don't touch because the pin spacing is really tight, and also be careful when soldering to the DB-9 as to make sure you read the pin labelling (1-9). db-9's have the pins marked on each side.
In rsoft's post up the top, click on pads_sect_1_edit_downscale.jpg and you'll see a pin marked "DTS" which is wrong and it should read "DTR" so you don't get confused when soldering. Use this diagram: http://www.usconverters.com/images/rs232-pinout.jpg and it shows you pins 1-9 and what they are. Pin 1 and 9 are not used in the serial mod for ps1.

If you want I can take a picture of the completed hack inside the playstation with and without the metal cover when the db9 is screwed to the case.

Good luck! maybe you already know about most of the stuff I've told you but just in case you didn't it's there :)

Jamie

rsoft
Rookie Programmer
Rookie Programmer
Posts: 19
Joined: Jun 22, 2013
Location: /home/rsoft

Post by rsoft » April 23rd, 2014, 9:07 pm

JamieK97 wrote:In rsoft's post up the top, click on pads_sect_1_edit_downscale.jpg and you'll see a pin marked "DTS" which is wrong and it should read "DTR" so you don't get confused when soldering.
Whoops, thanks for the heads-up! I've fixed the typo and added white highlights under the annotations to improve readability.

JamieK97
Interested PSXDEV User
Interested PSXDEV User
Posts: 5
Joined: Apr 21, 2014

Post by JamieK97 » April 23rd, 2014, 9:15 pm

rsoft wrote:
JamieK97 wrote:In rsoft's post up the top, click on pads_sect_1_edit_downscale.jpg and you'll see a pin marked "DTS" which is wrong and it should read "DTR" so you don't get confused when soldering.
Whoops, thanks for the heads-up! I've fixed the typo and added white highlights under the annotations to improve readability.
Not a problem at all. It looks really easy to read now!
I wasn't sure if you were still active anymore, but thank you for the tutorial! I was able to do my serial hack thanks to you.
You should add in the post that you have to use ImgBurn to burn CDs for the modchipped ps1's. I tried other programs but burned coasters. ImgBurn works a charm!

Is the second pic a modchip???

rsoft
Rookie Programmer
Rookie Programmer
Posts: 19
Joined: Jun 22, 2013
Location: /home/rsoft

Post by rsoft » April 23rd, 2014, 9:24 pm

JamieK97 wrote:Not a problem at all. It looks really easy to read now!
I wasn't sure if you were still active anymore, but thank you for the tutorial! I was able to do my serial hack thanks to you.
Great to see that I was able to help. :)
JamieK97 wrote:You should add in the post that you have to use ImgBurn to burn CDs for the modchipped ps1's. I tried other programs but burned coasters. ImgBurn works a charm!
Since I don't use Windows I can't really say much about ImgBurn and other programs in respect to PSX compatibility.
JamieK97 wrote:Is the second pic a modchip???
Yeah, that's a modchip. It's part of the post since (as you might have noticed) the +5V first goes from the pad to the modchip and I tap it from there for further use. You never know when +5V might come in handy!

tlrmcknz
Curious PSXDEV User
Curious PSXDEV User
Posts: 28
Joined: Feb 18, 2014

Post by tlrmcknz » April 24th, 2014, 9:27 am

So if I'm using a PL-2303 usb to serial, do I ignore the 3v and 5v that the op uses?

JamieK97
Interested PSXDEV User
Interested PSXDEV User
Posts: 5
Joined: Apr 21, 2014

Post by JamieK97 » April 24th, 2014, 6:45 pm

tlrmcknz wrote:So if I'm using a PL-2303 usb to serial, do I ignore the 3v and 5v that the op uses?
Yes don't bother soldering the 5v because the pl2303 is powered by 5v from the USB port in your computer.
Makes soldering easier because the 5v and ground pins have extremely tight spacing

tlrmcknz
Curious PSXDEV User
Curious PSXDEV User
Posts: 28
Joined: Feb 18, 2014

Post by tlrmcknz » April 25th, 2014, 4:25 pm

An update to my process:

First go I connected psone TX to serial TX and got nothing and booting psxserial, nothing seemed to happen. I then wired tx to rx, and tried loading some other things, which when finished uploading just went to a black screen.

My setup is: usb serial adapter(1) <-> db9 crimped with RJ45(2) <-> RJ45 coupler(3) <-> RJ45 cat5 cable soldered to psone(4)

1) I tested the usb <-> serial by shorting tx and rx, and I see the local echo and the return, so I think that's good.

2) I can't verify the usb adapters db9 is connecting the female db9, but I have to assume it does. Continuity from female db9 all the way to (4) psone points is good.

What I find strange is with the psone powered off, if I short tx and rx points here, I don't get the putty loopback, only the local echo.

Also, when I load psxserial on the psone, then load putty and type some characters, the white text disappears.

Open to thoughts here.

Pretty sure the symptoms are quite along the same lines as this thread:

http://www.psxdev.net/forum/viewtopic.php?f=28&t=497

*Edit - I bought a CH340 and used zener diodes to drop the voltage, wired ground, tx, and rx and boom. Instant success. Avoid these PL2303's I suppose.

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest