Worklog [2023 Contest Entry] PSXpress - Cutting Edge PS1 Portable

Y2K

"The PS1 Guy"
Staff member
.
.
Joined
Apr 14, 2022
Messages
133
Likes
278
Location
Chicago, IL
Time to throw my hat in the ring!

We've been making a ton of advancements in PS1 portablizing lately, and I'm hoping to make some further advancements to push the console further than it has before.

Preliminary features are as follows:
  • PU-18 revision trim
    • Either a Yveltal/tzmwx style board bend OR a complete elimination of the CD subsystem half of the motherboard (depending on choice of ODE)
    • BIOS relocation flex PCB (may also include quick connections to the other half of the trim if it's needed)
  • Built-in memory card OR memcard emulation using PicoMemcard
    • Memory card access over USB if using PicoMemcard
  • Built in optical drive emulator
    • Options are X-Station, PSIO, or PicoStation
      • X-Station has the best compatibility
      • PSIO emulates the whole CD subsystem and would allow for it to be completely removed
      • Picostation is the cheapest but is barely functional and would require a lot of code - might not be feasible to complete in time.
    • Please let me know what you would think would work best, as choice of ODE will result in substantial design considerations
  • PS Controller Emulator (GC+-esc)
    • Toggleable DualShock controls
    • Rumble?
  • 4:3 display - Either 480p with a line doubler (Shinobi Scaler?) or 240p and deal with the halved resolution of 480i (thankfully usually find this only in menus on certain games from my understanding?) - PS1 can output RGBHV so I don't necessarily need a scaler.
  • Clean digital stereo audio w/ headphone output
    • PS1 has i2s audio - U-AMP 2 could be made to work with some software tweaks. Otherwise trimming the DAC off the board is possible if this falls through.
  • USB-C PD charge & play with custom regulators
Work on the trim has already been started and I've been streaming progress on the BitBuilt Discord. I'll post an update to the worklog once some substantial progress has been made.

If you have any suggestions or feedback, particularly on choice of ODE or overall final formfactor, feel free to reply. Thanks for the interest and good luck to everyone participating!
 

Y2K

"The PS1 Guy"
Staff member
.
.
Joined
Apr 14, 2022
Messages
133
Likes
278
Location
Chicago, IL
Update time!

Before we get into the progress updates, lemme outline some changes to the original preliminary features:

1. Motherboard Revision: PU-18 is great, however I've decided to go with PU-23 instead. There's one big reason for this: it is tiny. Sony decided to consolidate a lot of the hardware together and made an extremely compact motherboard, arguably more compact than any PSOne revision board! I've been combing through various documentation found online, and I'm theorizing that the board can be trimmed to be even smaller than it already is! Couple things need to happen for this to work, but if everything goes to plan, I'm hoping to get the overall footprint of the board down to roughly around 80mm²! This will require the use of PSIO, but there isn't any other ODE compatible with PU-23 anyway, so this is fine.

2. BIOS Relocation Flex: Regardless of the transition to PU-23, we're still gonna need some way to relocate the BIOS. I did create a flex PCB for PU-23 boards already that mounts the BIOS on the back, however I am not at all happy with the quality of it, and so I am going to put this part of the project on the back burner and come back to it if I have the time. That means we're going the "old fashioned" hand wired route!

3. Display: After playing around with the 3.5in 4:3 txwei/wisecoco screens I purchased through Yveltal's group buy, I've determined that this is the display that I want to use. Combined with the theorized trim, we're looking at a pretty small footprint overall! If you're familiar with the scale of the 3.5in screens, this image may give you a sense of the overall size of the trim we're working with.

image-37.png


Pretty small, ey?

With PU-23 however, it seems like it does *not* provide HV sync right on the board. The GPU instead will generate a CSync signal instead, which gets fed into the video DAC. We unfortunately can't just tap into the CSync signal, as doing that messes up the analog video outputs, so we'll get into the solution for that problem later in this post...

Unfortunately however, the driver board for the 3.5in display does not support 240p over VGA. It does kinda support it over HDMI for some dumb reason, but VGA gives a red "Not Support" screen. So, we're gonna have to do this one of two ways. I can either build Shinobi Scaler into the project, or I can hand roll an FPGA based line doubler that will spit out the 31kHz 480p RGBHV signal that I need for the display driver. Shinobi Scaler is great, however the TVIA chip on the GBS-8220 boards (and subsequently, Shinobi Scaler) gets really hot and can draw upwards of 2.15W! Yikes! I think the best approach will be a FPGA based line doubler tailored for the project, but I'm worried about time. I'm going to pick up a Tang Nano to start some development work and see if it will at all be a viable approach, but I might be able to come up with something.

Well, with all that out of the way, onto the project updates!

Initially I started out by performing a hand wired BIOS relocation on a PU-18 board I had received from @RegDogg. Unfortunately however, I ended up killing that board. That was probably one of the major reasons I went ahead and moved to PU-23 instead of sticking with PU-18, but fortunately enough that ended up being a blessing in disguise. I'm still not even sure exactly what went wrong, but that board's sacrifice will not be in vain!

So, after waiting a few days, the new sacrificial lamb arrived, along with a controller since I didn't have one already.

PXL_20230620_2357198332.jpg


I was a bit worried when I ordered this board, since the unit was untested, and the top shell was not at all the same one that originally came with this revision, mainly because it still had the cutout for the parallel port. Fortunately though, this board works perfectly, and even the drive was able to play audio CDs!

In any case, for future testing I decided that it was just going to be easier to get the 3.5in display hooked up. The driver board's firmware doesn't support CVBS though, so I'd have to hook it up via VGA. Shinobi Scaler came in super handy here, and fortunately enough was able to accept the Luminance part of S-Video as a sync source, so I was able to get a pretty damn good looking image out of the PS1.

PXL_20230621_0215529012.jpg


The next few days after this were mainly spent doing CAD work since I had to work a lot during this period. The BIOS relocation flex was done before I even had the board in, but I haven't ordered it since I genuinely want to redo it. However, I did get another board done and ordered!

1687518705628.png


This is the video DAC relocation board, and will be crucial in obtaining the small trim footprint that I'm aiming for. I was initially wanting to make this a flex PCB that connects to the digital RGB vias on the back of the board, however I found that to be way too much of a hassle to get the routing done correctly, so I made it a rigid PCB that you magwire the digital RGB connections to it, along with power, and it spits out hopefully clean 15kHz RGBS video. We'll still need some line doubling solution, but that will come later.

A quick overview on how its able to spit out CSync - U1 on this board is actually the trusty LM1881 sync separator IC! It takes in Luminance from the video DAC's S-Video output and spits out a clean CSync signal! I believe it can also spit out H/V sync too, but I haven't looked too closely into that, and CSync should still serve my purposes nicely.

I'm very happy with how this turned out, and will likely open source the design for anyone else to use, once I can confirm it works. Hopefully by the next update I'll be able to show it off!

Speaking of relocations...

PXL_20230623_0748577062.jpg


2nd time's the charm!

I am incredibly happy that I managed to pull this off. It was considerably easier to do in this case, since all the required connections were accessible through vias on the back of the board, rather than soldering directly to 0.4mm pitch pins on the CPU that like to bend easily... Anyway, some close up shots of the "final" relocation & a closeup on the via soldering, since I am quite happy with how that turned out.

PXL_20230623_042043080.jpg


PXL_20230623_065803487.jpg

Who says you need a microscope for this type of work? Not me, that's for sure! >:D

Anyway, that's all the updates I have for now. At this point I'm just waiting for the video DAC boards & parts to get here, so I'll probably start working on getting U-AMP working, as well as PicoMemcard & controller emulation. Stay tuned!
 

Retro95

.
2023 3rd Place
Joined
Mar 29, 2023
Messages
180
Likes
235
Location
Oregon
Portables
2
I could immediately hear the PS1 intro sound blasting in my head when I saw the image of it posting on that screen. Wow does that image look absolutely crisp.

I cannot wait to see your progress on this!
 

Y2K

"The PS1 Guy"
Staff member
.
.
Joined
Apr 14, 2022
Messages
133
Likes
278
Location
Chicago, IL
Sorry for the lack of updates on this thread, but I got a lot of progress done to share with you all!

I will preface this by saying that I'm not super hopeful that I will be able to finish this in time for the contest. Parts of this project have taken way longer than I anticipated, and I still have a lot more to do! In any case though, I will be finishing this, I'm in too deep! :XD:

First thing's first, I received the VDAC relocation boards from JLCPCB, and they work better than I could have ever hoped!

PXL_20230713_164607068.jpg


I'm fairly certain the artifacts in the video are a result of my Shinobi Scaler being wonky, and not because of the VDAC relocation. Otherwise, I can tell that the image is going to look fantastic in the final build!

In terms of how I'm actually going to get the display to play nice with the 15kHz RGBS signal, I'm currently looking into RTD2662 firmware mods - I've spent some time writing definitions for the screen & driver board, but have not tested anything yet, so stay tuned for that! Theoretically, though, with a modded firmware, we should be able to enable 15kHz support for the 3.5in display driver, which would be pretty great! The driver board is fairly low power and doesn't generate really much of any heat, so it should serve as a better alternative to Shinobi Scaler for my build, where the MO is no heatsinks!

Moving on~

PXL_20230728_0503089812.jpg


The PSIO arrived and I got it wired for testing!
Currently using the old BIOS footprint, since it's more convenient to use over trying to solder multiple wires to the main bus vias, which I will still have to do eventually, just trying to delay the inevitable hehehe... In any case though, it works perfectly and I was able to get some games running!

With the PSIO good to go, the next logical step would be to start pulling chips off the board that are allegedly unneeded, but I want to get the audio situation figured out first before I do some more deconstructive steps. The idea is to reprogram U-AMP 2 using the open source U-AMP firmware by modifying it. I've completed the necessary modifications and acquired a PicKit3 in order to program it, but have not gotten around to getting it fully working yet.

On the topic of audio, I learned pretty late into this project that the actual PS1 sound chip is combined with one of the big QFP-208 chips that also handles CD audio stuff. I do not want to keep this chip on my trim, so we're gonna need to take some... drastic measures here.

PXL_20230719_054214537.jpg


Yes, your eyes do not deceive you. That is a SPU + SPU RAM trimmed off a PU-18 motherboard! The PU-18 ended up being useful after all! I have absolutely no idea if this will actually work or not, but I don't see why not after spending a lot of time mapping out the pins.

pu18-spu-mapping.png


Nice thing is though is that the SPU will handle mixing the CD audio coming from the PSIO with the main system audio, which means we just have to feed its I2S output into the U-AMP, which will handle the DAC & amp business. Quite convenient!

In the future, I would like to look into a way to accurately emulate the SPU entirely to make this trim more feasible for people without having to sacrifice 2 consoles to pull it off. The SPU is very well documented, so accurate emulation should be quite achievable! It might be doable to emulate the SPU on a NXP iMXRT1062 - aka the MCU used in the Teensy 4.1. Reason why we'd want to use one of these chips is because it has a LOT of RAM on board, which we need a whopping 512K of it for the SPU RAM, and also has enough I/O to be able to handle the bus communication. Not to mention, it's insanely powerful and has built in I2S support, so it should be able to handle all of the tasks of the SPU very well, and be able to mix in the I2S input coming from the PSIO as well! This won't be done for this project, but I would eventually like to look into it further.

And finally, my magnum opus, coming soon to a Github repo near you:



Say hello to the PSXpress Power Management System! This tiny little board is a full fledged PMS made specifically for PS1 PU-23 portables. It features all the bells and whistles necessary to power a PS1 portable & charge the system batteries safely!

Features are as follows:
- Fully standalone design: no MCU or firmware to program, just assemble and go
- 3.9 to 13.5V input - 3A max input & charge current - good for 9/12V @ 3A USB-C PD or barrel jack input
- High efficiency 3v5 & 5V buck/boost regulators
- 2A max output on output rails
- Charge & play support
- Integrated battery management & charging
- 1S Battery Setups Only! Recommended setup is 1S2P 18650s or 1 21700 cell - I probably wouldn't do a singular 18650 since this will always charge the batteries at 3A no matter what
- Reverse battery polarity protection (separate packside protection circuit needed, example: https://www.aliexpress.us/item/3256805302254769.html)
- Soft power switch using MAX16054 - use a normally open SPST switch
- Charging LED
- Dimensions : Aprox. 25mm x 30mm

I'm extremely proud of this design, and am super excited and hopeful that this will see some use by all of you! The nice thing about this is that with some basic modifications, this should be very usable in other non-PS1 related projects, such as N64 portables! All that would be needed for that is to change R7 and R9 to values that will result in the target voltage you're looking for for those regs, within the specs of the regulators themselves, of course. This makes the PSXpress PMS extremely flexible for whatever you want to use it for!

Here's a size comparison between the PSXpress PMS and an (admittedly very dirty) RVL-PMS Lite:

PXL_20230810_1543156532.jpg


The board above is a older revision. I had thought I finished the design long before I was actually done. This board is the same overall size as the final boards, though. I used DKRed to get the boards fabbed, and I was pleasantly surprised by the results!

The boards for the PMS have been ordered, as well as all the parts, so I just need to wait for them and get the design properly tested before releasing the files, but hopefully they should be available for you all within the next few weeks! I may also look into doing a group buy for them if there is some interest, so please let me know if that's something you'd like to participate in!

That's about all I have for this update. Next update I'm hoping to have the audio stuff handled, and am also hoping that I'll be able to share some progress I've been making on controller emulation! Until next time!
 
Last edited by a moderator:
Joined
Oct 27, 2020
Messages
108
Likes
120
Portables
KiWii Portable (In progress)
Sorry for the lack of updates on this thread, but I got a lot of progress done to share with you all!

I will preface this by saying that I'm not super hopeful that I will be able to finish this in time for the contest. Parts of this project have taken way longer than I anticipated, and I still have a lot more to do! In any case though, I will be finishing this, I'm in too deep! :XD:

First thing's first, I received the VDAC relocation boards from JLCPCB, and they work better than I could have ever hoped!

View attachment 29502

I'm fairly certain the artifacts in the video are a result of my Shinobi Scaler being wonky, and not because of the VDAC relocation. Otherwise, I can tell that the image is going to look fantastic in the final build!

In terms of how I'm actually going to get the display to play nice with the 15kHz RGBS signal, I'm currently looking into RTD2662 firmware mods - I've spent some time writing definitions for the screen & driver board, but have not tested anything yet, so stay tuned for that! Theoretically, though, with a modded firmware, we should be able to enable 15kHz support for the 3.5in display driver, which would be pretty great! The driver board is fairly low power and doesn't generate really much of any heat, so it should serve as a better alternative to Shinobi Scaler for my build, where the MO is no heatsinks!

Moving on~

View attachment 29503

The PSIO arrived and I got it wired for testing!
Currently using the old BIOS footprint, since it's more convenient to use over trying to solder multiple wires to the main bus vias, which I will still have to do eventually, just trying to delay the inevitable hehehe... In any case though, it works perfectly and I was able to get some games running!

With the PSIO good to go, the next logical step would be to start pulling chips off the board that are allegedly unneeded, but I want to get the audio situation figured out first before I do some more deconstructive steps. The idea is to reprogram U-AMP 2 using the open source U-AMP firmware by modifying it. I've completed the necessary modifications and acquired a PicKit3 in order to program it, but have not gotten around to getting it fully working yet.

On the topic of audio, I learned pretty late into this project that the actual PS1 sound chip is combined with one of the big QFP-208 chips that also handles CD audio stuff. I do not want to keep this chip on my trim, so we're gonna need to take some... drastic measures here.

View attachment 29504

Yes, your eyes do not deceive you. That is a SPU + SPU RAM trimmed off a PU-18 motherboard! The PU-18 ended up being useful after all! I have absolutely no idea if this will actually work or not, but I don't see why not after spending a lot of time mapping out the pins.

View attachment 29505

Nice thing is though is that the SPU will handle mixing the CD audio coming from the PSIO with the main system audio, which means we just have to feed its I2S output into the U-AMP, which will handle the DAC & amp business. Quite convenient!

In the future, I would like to look into a way to accurately emulate the SPU entirely to make this trim more feasible for people without having to sacrifice 2 consoles to pull it off. The SPU is very well documented, so accurate emulation should be quite achievable! It might be doable to emulate the SPU on a NXP iMXRT1062 - aka the MCU used in the Teensy 4.1. Reason why we'd want to use one of these chips is because it has a LOT of RAM on board, which we need a whopping 512K of it for the SPU RAM, and also has enough I/O to be able to handle the bus communication. Not to mention, it's insanely powerful and has built in I2S support, so it should be able to handle all of the tasks of the SPU very well, and be able to mix in the I2S input coming from the PSIO as well! This won't be done for this project, but I would eventually like to look into it further.

And finally, my magnum opus, coming soon to a Github repo near you:



Say hello to the PSXpress Power Management System! This tiny little board is a full fledged PMS made specifically for PS1 PU-23 portables. It features all the bells and whistles necessary to power a PS1 portable & charge the system batteries safely!

Features are as follows:
- Fully standalone design: no MCU or firmware to program, just assemble and go
- 3.9 to 13.5V input - 3A max input & charge current - good for 9/12V @ 3A USB-C PD or barrel jack input
- High efficiency 3v5 & 5V buck/boost regulators
- 2A max output on output rails
- Charge & play support
- Integrated battery management & charging
- 1S Battery Setups Only! Recommended setup is 1S2P 18650s or 1 21700 cell - I probably wouldn't do a singular 18650 since this will always charge the batteries at 3A no matter what
- Reverse battery polarity protection (separate packside protection circuit needed, example: https://www.aliexpress.us/item/3256805302254769.html)
- Soft power switch using MAX16054 - use a normally open SPST switch
- Charging LED
- Dimensions : Aprox. 25mm x 30mm

I'm extremely proud of this design, and am super excited and hopeful that this will see some use by all of you! The nice thing about this is that with some basic modifications, this should be very usable in other non-PS1 related projects, such as N64 portables! All that would be needed for that is to change R7 and R9 to values that will result in the target voltage you're looking for for those regs, within the specs of the regulators themselves, of course. This makes the PSXpress PMS extremely flexible for whatever you want to use it for!

Here's a size comparison between the PSXpress PMS and an (admittedly very dirty) RVL-PMS Lite:

View attachment 29506

The board above is a older revision. I had thought I finished the design long before I was actually done. This board is the same overall size as the final boards, though. I used DKRed to get the boards fabbed, and I was pleasantly surprised by the results!

The boards for the PMS have been ordered, as well as all the parts, so I just need to wait for them and get the design properly tested before releasing the files, but hopefully they should be available for you all within the next few weeks! I may also look into doing a group buy for them if there is some interest, so please let me know if that's something you'd like to participate in!

That's about all I have for this update. Next update I'm hoping to have the audio stuff handled, and am also hoping that I'll be able to share some progress I've been making on controller emulation! Until next time!
Can't wait for the next update, this project is looking great!
 
Last edited by a moderator:
  • Like
Reactions: Y2K

Y2K

"The PS1 Guy"
Staff member
.
.
Joined
Apr 14, 2022
Messages
133
Likes
278
Location
Chicago, IL
Hey everyone!

Quick update for you all, as I'm not quite ready to put out a full update with the progress I've made yet, got a couple more things that I need to finish. I would like to announce though that I have made all design files for this build that I have completed so far open source!

You may find those files here. Please see the README for specific licensing information for the different parts of the repository, but most importantly, I'm committing all research documentation that I create to the public domain, so that they may be used freely by whoever wants to! Hooray for free information! :D

I will hopefully have a new update for you all soon, but for now, good luck to the remaining contestants that are putting their projects to a close in these final weeks! I unfortunately am not going to make it, but rest assured I will keep at this project until the bitter end!

Ciao! ;)
 
Joined
Oct 27, 2020
Messages
108
Likes
120
Portables
KiWii Portable (In progress)
Hey everyone!

Quick update for you all, as I'm not quite ready to put out a full update with the progress I've made yet, got a couple more things that I need to finish. I would like to announce though that I have made all design files for this build that I have completed so far open source!

You may find those files here. Please see the README for specific licensing information for the different parts of the repository, but most importantly, I'm committing all research documentation that I create to the public domain, so that they may be used freely by whoever wants to! Hooray for free information! :D

I will hopefully have a new update for you all soon, but for now, good luck to the remaining contestants that are putting their projects to a close in these final weeks! I unfortunately am not going to make it, but rest assured I will keep at this project until the bitter end!

Ciao! ;)
Can't wait for your next update, this project is looking awesome!
 
  • Like
Reactions: Y2K

Wrn_

.
Joined
Jan 13, 2023
Messages
14
Likes
27
10th post :angry:
cool build, i guess. or whatever. and like, the SPU and ram relocation, across console revisions, thats alright too. well done n all that.
 
Top