Worklog Some PS2 Project

Fly_5

.
Joined
Apr 4, 2022
Messages
69
Likes
111
Location
Spain
Portables
Megadrive portable / PS2 Next-G portable
I think your work is fantastic, it's really impressive, I'm following the post as a TV series !!
 
Joined
Sep 27, 2016
Messages
400
Likes
836
Wow, undervolting really saved quite a bit of power there! I wonder if the CPU/GPU run cooler because of this as well. Definitely will be doing this going forward. Thank you for providing some concrete numbers from your test results!
 
Joined
Jan 6, 2023
Messages
73
Likes
28
Portables
PS2p
Update time!

Removing the DSP and MechaCon is way outside the scope of this project. It might be possible, but I’m not going to proceed in this direction. The goal was to make the mainboard equivalent to a trimmed one. If I start changing the scope of the project I will never have a portable in my hands.

I will leave those implementations to the smart people out there, once the design is released. I’m sure there are lots of things to be optimized still!

Now let’s get to the update:

Soft Power Switch
I have a prototype of the soft power switch in a “working” state… kind of.

This was my biggest concern when designing the circuit. The datasheet mentions the Schmitt Trigger inputs, but they fail to specify the hysteresis (which they usually do for Schmitt Trigger gates). That was a bit suspicious to me and it’s the main reason for having R103 + C103 to set a timeout and for not including the circuit in my regulator board.

This is what happened during testing:
When pressing the button for a couple of seconds, the EN went H as expected. But every time I released the button, EN switched off immediately. At that point it was a latching power switch that didn’t latch, just to give a short summary on the functionality.

I suspected some oscillation and hooked up the scope… and there was oscillation. The latch would always oscillate around HIGH threshold, which indicates a lack of hysteresis on the CLK input. This would happen when pressing the button and when releasing the button. That’s why the EN always turned off again.

I “fixed” this by adding a timeout using R103 and C103. This does not prevent the oscillations, but it delays the next state to restore the latching functionality. It works pretty well, but keeping the button pressed for longer than the timeout period breaks the functionality again. That’s because the flip flop already stores the next state during the oscillations when the button is released.

I wasn’t satisfied by this fix and the only way to get the circuit working reliably is to add hysteresis.
That’s exactly what I did: I added a MIC841H voltage comparator between C101 and the CLK input of the latch. It provides adjustable hysteresis using a voltage divider and the circuit works pretty well so far. The only downside is the increased component count. I’m especially unhappy with the added voltage divider for the hysteresis. A Schmitt Trigger buffer like the SN74LVC1G17 would be a more elegant solution, but it has a higher Iq than the MIC841. The Iq is currently at about 3uA.

View attachment 27179
I will try the Schmitt Trigger buffer next, but for now the circuit works as expected: press the button for a couple of seconds to turn on; press it for a couple of seconds to turn off; force the latch on using SET; force the latch off using RESET. The latch also always starts in the OFF position, which is good.

Regulator Board
Now this is an exciting topic to discuss!
I managed to assemble one prototype of the regulator board and did a couple of tests already.

View attachment 27180View attachment 27181
You can spot some differences compared to the picture I shared last time. I decided to arrange the connectors horizontally to make measuring easier, the circuit is identical otherwise. The pin headers make the board look really big, but the bare circuit actually fits within the area of a 2€ coin (25.7mm diameter). The board now contains the buck converters for the 1.25V, 3.5V, 5V, VSYS rails and the LDOs for the 1.75V, 2.5V and standby rails. 7 voltage rails in total, not bad for the size!

View attachment 27182
You can also see that the soft power switch is already connected to the EN pins of the regulators, this was necessary because I don’t have the SysCon yet and needed a debounced EN signal for the regulators. While connecting everything I realized that stupid me forgot to connect the standby 3.3V rail to the SysCon header for powering the soft power switch. I had to disconnect a pin and connect 3.3V instead (that’s the bodge in the corner).

The other stuff I did is not as exciting, I guess. Let’s get to the tests!
Before connecting the regulator board to my mainboard, I had to verify that it meets my specifications. In the following section I will provide the testing outcomes for information and future reference.

First thing was to find out the input voltage span. The max input voltage is well defined at 8,4V, because I’m planning to use a 2S battery configuration. The min input voltage is mainly defined by the dropout voltage of the 5V buck converter. During testing I found that the 5V regulator is able to sustain the full output voltage at 5.3V-5.4V input voltage (at full load). To give myself some safety margin I set the min to 5.5V, which means that I would be able to discharge the batteries to 2.75V (if needed).
That means the preliminary input voltage span is 5.5V to 8.4V and it's what I used as the base for further testing.

(Boring stuff starts here)
Let’s start with the efficiency and load regulation plots:

View attachment 27165
View attachment 27166
View attachment 27167

The plots above are lacking a few data points (I was too lazy to do more measurements), but they provide plenty information for my evaluation. The first thing that catches my eye is the bad efficiency of the 1.25V converter below 1A. This is expected, because I forced the converter into continuous conduction mode, which gives lower efficiency with light loads. That saves me another resistor value in the BOM and it doesn’t matter, as the converter is fully loaded 99% of the time.
You can see the difference in light load performance when looking at the 3.5V and 5V rails. They are configured to enter power save mode on light loads. The 5V rail will only be loaded when a USB stick is plugged (in the next revision; currently supplies the USB and video/audio DAC) and the 3.5V rail will probably never see more than 500mA load. Same for the VSYS rail, it is essentially the same buck circuit as the 3.5V rail, so I didn’t test it separately.
Load regulation performance is excellent for my application, but there is one interesting anomaly on the 3.5V and 5V rails. You can see that the output voltage drops a bit at 8.4Vin and 0.1A load current. The drop is so small though that it really doesn’t matter, just and interesting observation.

Overall, I’m very happy with the efficiency and load regulation performance, they are within the expected values.

Next up is line regulation. I did not bother to make a diagram for this one. Very pleased with the results.
1.25V Line Regulation 3A Iout; Vin 5.5V to 8.4V; FCCM 1100kHz ΔVout =0.5mV
3.5V Line Regulation 1A Iout, Vin 5.5V to 8.4V; Auto PFM/PWM up to 2.5MHzΔVout =2.1mV
5V Line Regulation 1A Iout, Vin 5.5V to 8.4V; Auto PFM/PWM up to 2.5MHzΔVout =3.9mV

Output ripple under various conditions; 2 interesting observations. Ripple on the 1.25V rail is higher than the 3.5V and 5V rail, but in a very tolerable region.
There is only a minor difference between the ripple at full load and light load on the 3.5V and 5V rails. In my experience the ripple is usually considerably higher in power save mode, but here it is within the measurement tolerance. I did not expect this, but I guess that’s a good surprise.
Output Ripple 1.25V; 3A load; 5.5Vin 17.6mVpp
Output Ripple 1.25V; 3A load; 8.4Vin22.2mVpp
Output Ripple 5V; 1A load; 5.5Vin9.4mVpp
Output Ripple 5V; 1A load; 8.4Vin9mVpp
Output Ripple 3.5V; 1A load; 5.5Vin5mVpp
Output Ripple 3.5V; 1A load; 8.4Vin4.8mVpp
Output Ripple 5V; 0.1A load; 5.5Vin7mVpp
Output Ripple 5V; 0.1A load; 8.4Vin11mVpp
Output Ripple 3.5V; 0.1A load; 5.5Vin6mVpp
Output Ripple 3.5V; 0.1A load; 8.4Vin10mVpp

Quiescent Current. Here I found an anomaly. I would have expected about 20uA over the whole input voltage range with EN LOW. For some reason the Iq suddenly jumps to 76uA at ~7V. Some further investigation is needed, even though 76uA would probably be acceptable... especially when considering that the battery management will probably add another 50uA-600uA to the quiescent current, depending on the settings.
Iq of whole board at 8.4V EN LOW 76uA
Iq of whole board at 5.5V EN LOW19uA
Idle current of whole board at 8.4V EN HIGH11.866mA
Idle current of whole board at 5.5V EN HIGH11.548mA

EN and Disable timing. The 1.25V rail takes much longer to start than the other rails. Can be compensated in the power sequencing. No considerable over- or undershoot.
1.25V EN into 3A load 5.5V; startup time2.5ms
5V EN into 1A load 5.5V; startup time300us
3.5V EN into 1A load 5.5V; startup time1ms
1V25 Disable from 3A load 8.4V40us
5V Disable from 1A load 8.4V100us
3.5V Disable from 1A load 8.4V100us
(Sorry for the messed up tables BTW, no idea how to change it in here; they look fine in the editor)

Output short circuit and recovery. Yellow is the output voltage, blus is /PG. Sadly I have no means to measure the current on the scope at this point, which might be interesting to to exactly measure the turnoff time. Looks acceptable though, no surprises.
1V25 from 3A to short 8.4V + recovery
View attachment 27171View attachment 27172

5V from 1A to short 8.4V + recovery
View attachment 27174View attachment 27191

3.5V from 1A to short 8.4V + recovery
View attachment 27175View attachment 27176

All results so far are for the DCDC converters. The 1.75V and 2.5V LDOs were not tested. The ones on the regulator board are not even used, because currently they are included in the mainboard. The CHARGE input and charge_detect were not tested yet, I will probably do it when I have a SysCon PCB.

Here I’m documenting the used equipment for future reference:
Power supply Korad KA3005D
Vin measurementFluke 115
Iin measurementFluke 87
Vout measurementHP 34401A
Electronic load + Iout measurementMaynuo M9711

(Boring stuff ends here)
Well, if you managed to get this far through all the boring stuff, let's ask the interesting questions:
  • What's the power consumption of the real system?
  • How does it compare to the old regulators?
Here we go, not only is the new board a fraction of the size, it also outperforms the amazon-regulators:

Power consumption at 8.4Vin
[W]​
Reduction [%]​
old regulators (with FMCB, MX4SIO, DS2, fan) 1,25Vout GTA SA
9.59
-​
new regulators (with FMCB, MX4SIO, DS2, fan) 1,25Vout GTA SA
7.22
-24.7​
new regulators (with FMCB, MX4SIO, DS2, fan) 1Vout GTA SA
5.52
-42.44​

Power consumption at 5.5Vin
[W]​
Reduction [%]​
old regulators (with FMCB, MX4SIO, DS2, fan) 1,25Vout GTA SA
9.44
-​
new regulators (with FMCB, MX4SIO, DS2, fan) 1,25Vout GTA SA
7.18
-23.94​
new regulators (with FMCB, MX4SIO, DS2, fan) 1Vout GTA SA
5.56
-41.1​

That outcome was unexpected! I double, triple and quadruple checked the measurement and it’s true! 5.5W, now we're playing in the Raspberry Pi league! If I didn’t include the pictures, I wouldn’t believe it myself. We went from 9.5W to 5.5W, -42%!

View attachment 27177View attachment 27178
How did I achieve this? There is a hint in the table already, let me explain:
Mister M suggested to try undervolting the EE+GS and that’s exactly what I did in the last row of both tables. Those measurements were done with a moderate 1V setting. I also tried going below 1V, but the system kept freezing at <0,9V. It would be a good idea to be a bit conservative here, as different batches/chips might have varying tolerances.
I’ve played GTA and Okami for about 2-3h now and the performance was rock-solid. Not a single crash or weird unexpected behavior.
The fact that I didn't kill this system already after all those tests is a real miracle, thank you Playstation gods for staying on my side!

Another neat thing to measure would be the impact of the EE+GS core voltage on the package temperature, but I don’t have any means to perform that measurement. The same is true for the regulator board; my calibrated finger measurement states that it gets hand-warm during operation, but it would be nice to know the exact temperature (change). Sound like a good occasion to finally buy a thermal camera! Any suggestions?

Next up: Battery Management
I will keep this one short, because the post is already quite long.
The schematic is almost finalized and I’m starting to think about the component placement. The current implementation is heavily inspired by my CM4 portable that I never finished.

The first prototype will most likely include:
  • BQ25792 - battery charging, power path
  • STUSB4500 USB C PD negotiation
  • MAX17205G Fuel gauge, cell balancing, maybe protection
The battery management board will plug directly into the regulator board and the SysCon header will have the same horizontal arrangement. That will make interfacing with both boards easier, once I have the SysCon prototype.

The BQ25792 is a bit overkill for my application, but maybe I will need it in the future (may reuse the power management for other projects I have in mind). It is very compact compared to other 2S solutions, because it includes all FETs in the package. The downside is that the package has a very odd pinout, no idea what they were thinking while defining it…
Currently there is no stock, but I should be able to get my hands on a couple ICs in about a month.

The STUSB4500 was mainly chosen because of its popularity and proven functionality + there is some stock again. Something like the IP2721 would have been an interesting alternative.
On the MAX17205G I still have some doubts. It is a pretty neat fuel gauge, because it includes optional cell balancing for 2S applications. The downside is that in this mode it only supports high-side battery protection chips and those are quite hard to find. The one I found (S-8253C/D) is actually pretty bad compared to the protection features of the MAX17205G.
Although the BQ25792 already includes various battery protection features, I have a bad feeling about removing the separate battery protector, which could be seen as the secondary means of protection. That’s why I had an idea to use the alert output of the MAX17205G to disconnect the battery pack using back-to-back P-CH MOSFETs (pretty much what a battery protector does). The conditions to trigger the alarm are very flexible and configured via I2C + they can be stored to NVM. Not 100% convinced that this will work, but I will include it in the first prototype. If it doesn’t work, I can always bridge those FETS and try something else. In the upcoming updates I will give more information (depending on the availability of the BQ25792)

Puhh that was a long one!
Wow, that’s impressive! I wonder if undervolting EE drop temperatures (you was little wrong about EE+GS chip, bigger one is EE+RAM+IOP+SPU2 and smaller chip is GS with DRAM) and you can try PS2 temp to measure temperature on EE then buy thermometer
 
Joined
Dec 25, 2022
Messages
30
Likes
233
Location
Landeck, Austria
Wow, that’s impressive! I wonder if undervolting EE drop temperatures (you was little wrong about EE+GS chip, bigger one is EE+RAM+IOP+SPU2 and smaller chip is GS with DRAM) and you can try PS2 temp to measure temperature on EE then buy thermometer
Thanks for the hint, I realized my phrasing was pretty bad! By EE+GS I meant the EE chip and GS chip, because I can only undervolt both at the same time. They are supplied by the same rail. That was corrected in the post above.
I've heard that there is sime homebrew stuff for measuring the core temperaure, will look into that! Otherwise, any recommendations for thermometers or thermal cameras?
 

Y2K

"The PS1 Guy"
Staff member
.
.
Joined
Apr 14, 2022
Messages
130
Likes
267
Location
Chicago, IL
Thanks for the hint, I realized my phrasing was pretty bad! By EE+GS I meant the EE chip and GS chip, because I can only undervolt both at the same time. They are supplied by the same rail. That was corrected in the post above.
I've heard that there is sime homebrew stuff for measuring the core temperaure, will look into that! Otherwise, any recommendations for thermometers or thermal cameras?
A simple thermistor should do - some multimeters can read thermistor values and report back temperature, but if you don't have one of those I'm sure they make dedicated devices for that purpose (or just pick up a cheap multimeter that does support that lol)
 
Joined
Jan 6, 2023
Messages
73
Likes
28
Portables
PS2p
Update time!

Removing the DSP and MechaCon is way outside the scope of this project. It might be possible, but I’m not going to proceed in this direction. The goal was to make the mainboard equivalent to a trimmed one. If I start changing the scope of the project I will never have a portable in my hands.

I will leave those implementations to the smart people out there, once the design is released. I’m sure there are lots of things to be optimized still!

Now let’s get to the update:

Soft Power Switch
I have a prototype of the soft power switch in a “working” state… kind of.

This was my biggest concern when designing the circuit. The datasheet mentions the Schmitt Trigger inputs, but they fail to specify the hysteresis (which they usually do for Schmitt Trigger gates). That was a bit suspicious to me and it’s the main reason for having R103 + C103 to set a timeout and for not including the circuit in my regulator board.

This is what happened during testing:
When pressing the button for a couple of seconds, the EN went H as expected. But every time I released the button, EN switched off immediately. At that point it was a latching power switch that didn’t latch, just to give a short summary on the functionality.

I suspected some oscillation and hooked up the scope… and there was oscillation. The latch would always oscillate around HIGH threshold, which indicates a lack of hysteresis on the CLK input. This would happen when pressing the button and when releasing the button. That’s why the EN always turned off again.

I “fixed” this by adding a timeout using R103 and C103. This does not prevent the oscillations, but it delays the next state to restore the latching functionality. It works pretty well, but keeping the button pressed for longer than the timeout period breaks the functionality again. That’s because the flip flop already stores the next state during the oscillations when the button is released.

I wasn’t satisfied by this fix and the only way to get the circuit working reliably is to add hysteresis.
That’s exactly what I did: I added a MIC841H voltage comparator between C101 and the CLK input of the latch. It provides adjustable hysteresis using a voltage divider and the circuit works pretty well so far. The only downside is the increased component count. I’m especially unhappy with the added voltage divider for the hysteresis. A Schmitt Trigger buffer like the SN74LVC1G17 would be a more elegant solution, but it has a higher Iq than the MIC841. The Iq is currently at about 3uA.

View attachment 27179
I will try the Schmitt Trigger buffer next, but for now the circuit works as expected: press the button for a couple of seconds to turn on; press it for a couple of seconds to turn off; force the latch on using SET; force the latch off using RESET. The latch also always starts in the OFF position, which is good.

Regulator Board
Now this is an exciting topic to discuss!
I managed to assemble one prototype of the regulator board and did a couple of tests already.

View attachment 27180View attachment 27181
You can spot some differences compared to the picture I shared last time. I decided to arrange the connectors horizontally to make measuring easier, the circuit is identical otherwise. The pin headers make the board look really big, but the bare circuit actually fits within the area of a 2€ coin (25.7mm diameter). The board now contains the buck converters for the 1.25V, 3.5V, 5V, VSYS rails and the LDOs for the 1.75V, 2.5V and standby rails. 7 voltage rails in total, not bad for the size!

View attachment 27182
You can also see that the soft power switch is already connected to the EN pins of the regulators, this was necessary because I don’t have the SysCon yet and needed a debounced EN signal for the regulators. While connecting everything I realized that stupid me forgot to connect the standby 3.3V rail to the SysCon header for powering the soft power switch. I had to disconnect a pin and connect 3.3V instead (that’s the bodge in the corner).

The other stuff I did is not as exciting, I guess. Let’s get to the tests!
Before connecting the regulator board to my mainboard, I had to verify that it meets my specifications. In the following section I will provide the testing outcomes for information and future reference.

First thing was to find out the input voltage span. The max input voltage is well defined at 8,4V, because I’m planning to use a 2S battery configuration. The min input voltage is mainly defined by the dropout voltage of the 5V buck converter. During testing I found that the 5V regulator is able to sustain the full output voltage at 5.3V-5.4V input voltage (at full load). To give myself some safety margin I set the min to 5.5V, which means that I would be able to discharge the batteries to 2.75V (if needed).
That means the preliminary input voltage span is 5.5V to 8.4V and it's what I used as the base for further testing.

(Boring stuff starts here)
Let’s start with the efficiency and load regulation plots:

View attachment 27165
View attachment 27166
View attachment 27167

The plots above are lacking a few data points (I was too lazy to do more measurements), but they provide plenty information for my evaluation. The first thing that catches my eye is the bad efficiency of the 1.25V converter below 1A. This is expected, because I forced the converter into continuous conduction mode, which gives lower efficiency with light loads. That saves me another resistor value in the BOM and it doesn’t matter, as the converter is fully loaded 99% of the time.
You can see the difference in light load performance when looking at the 3.5V and 5V rails. They are configured to enter power save mode on light loads. The 5V rail will only be loaded when a USB stick is plugged (in the next revision; currently supplies the USB and video/audio DAC) and the 3.5V rail will probably never see more than 500mA load. Same for the VSYS rail, it is essentially the same buck circuit as the 3.5V rail, so I didn’t test it separately.
Load regulation performance is excellent for my application, but there is one interesting anomaly on the 3.5V and 5V rails. You can see that the output voltage drops a bit at 8.4Vin and 0.1A load current. The drop is so small though that it really doesn’t matter, just and interesting observation.

Overall, I’m very happy with the efficiency and load regulation performance, they are within the expected values.

Next up is line regulation. I did not bother to make a diagram for this one. Very pleased with the results.
1.25V Line Regulation 3A Iout; Vin 5.5V to 8.4V; FCCM 1100kHz ΔVout =0.5mV
3.5V Line Regulation 1A Iout, Vin 5.5V to 8.4V; Auto PFM/PWM up to 2.5MHzΔVout =2.1mV
5V Line Regulation 1A Iout, Vin 5.5V to 8.4V; Auto PFM/PWM up to 2.5MHzΔVout =3.9mV

Output ripple under various conditions; 2 interesting observations. Ripple on the 1.25V rail is higher than the 3.5V and 5V rail, but in a very tolerable region.
There is only a minor difference between the ripple at full load and light load on the 3.5V and 5V rails. In my experience the ripple is usually considerably higher in power save mode, but here it is within the measurement tolerance. I did not expect this, but I guess that’s a good surprise.
Output Ripple 1.25V; 3A load; 5.5Vin 17.6mVpp
Output Ripple 1.25V; 3A load; 8.4Vin22.2mVpp
Output Ripple 5V; 1A load; 5.5Vin9.4mVpp
Output Ripple 5V; 1A load; 8.4Vin9mVpp
Output Ripple 3.5V; 1A load; 5.5Vin5mVpp
Output Ripple 3.5V; 1A load; 8.4Vin4.8mVpp
Output Ripple 5V; 0.1A load; 5.5Vin7mVpp
Output Ripple 5V; 0.1A load; 8.4Vin11mVpp
Output Ripple 3.5V; 0.1A load; 5.5Vin6mVpp
Output Ripple 3.5V; 0.1A load; 8.4Vin10mVpp

Quiescent Current. Here I found an anomaly. I would have expected about 20uA over the whole input voltage range with EN LOW. For some reason the Iq suddenly jumps to 76uA at ~7V. Some further investigation is needed, even though 76uA would probably be acceptable... especially when considering that the battery management will probably add another 50uA-600uA to the quiescent current, depending on the settings.
Iq of whole board at 8.4V EN LOW 76uA
Iq of whole board at 5.5V EN LOW19uA
Idle current of whole board at 8.4V EN HIGH11.866mA
Idle current of whole board at 5.5V EN HIGH11.548mA

EN and Disable timing. The 1.25V rail takes much longer to start than the other rails. Can be compensated in the power sequencing. No considerable over- or undershoot.
1.25V EN into 3A load 5.5V; startup time2.5ms
5V EN into 1A load 5.5V; startup time300us
3.5V EN into 1A load 5.5V; startup time1ms
1V25 Disable from 3A load 8.4V40us
5V Disable from 1A load 8.4V100us
3.5V Disable from 1A load 8.4V100us
(Sorry for the messed up tables BTW, no idea how to change it in here; they look fine in the editor)

Output short circuit and recovery. Yellow is the output voltage, blus is /PG. Sadly I have no means to measure the current on the scope at this point, which might be interesting to to exactly measure the turnoff time. Looks acceptable though, no surprises.
1V25 from 3A to short 8.4V + recovery
View attachment 27171View attachment 27172

5V from 1A to short 8.4V + recovery
View attachment 27174View attachment 27191

3.5V from 1A to short 8.4V + recovery
View attachment 27175View attachment 27176

All results so far are for the DCDC converters. The 1.75V and 2.5V LDOs were not tested. The ones on the regulator board are not even used, because currently they are included in the mainboard. The CHARGE input and charge_detect were not tested yet, I will probably do it when I have a SysCon PCB.

Here I’m documenting the used equipment for future reference:
Power supply Korad KA3005D
Vin measurementFluke 115
Iin measurementFluke 87
Vout measurementHP 34401A
Electronic load + Iout measurementMaynuo M9711

(Boring stuff ends here)
Well, if you managed to get this far through all the boring stuff, let's ask the interesting questions:
  • What's the power consumption of the real system?
  • How does it compare to the old regulators?
Here we go, not only is the new board a fraction of the size, it also outperforms the amazon-regulators:

Power consumption at 8.4Vin
[W]​
Reduction [%]​
old regulators (with FMCB, MX4SIO, DS2, fan) 1,25Vout GTA SA
9.59
-​
new regulators (with FMCB, MX4SIO, DS2, fan) 1,25Vout GTA SA
7.22
-24.7​
new regulators (with FMCB, MX4SIO, DS2, fan) 1Vout GTA SA
5.52
-42.44​

Power consumption at 5.5Vin
[W]​
Reduction [%]​
old regulators (with FMCB, MX4SIO, DS2, fan) 1,25Vout GTA SA
9.44
-​
new regulators (with FMCB, MX4SIO, DS2, fan) 1,25Vout GTA SA
7.18
-23.94​
new regulators (with FMCB, MX4SIO, DS2, fan) 1Vout GTA SA
5.56
-41.1​

That outcome was unexpected! I double, triple and quadruple checked the measurement and it’s true! 5.5W, now we're playing in the Raspberry Pi league! If I didn’t include the pictures, I wouldn’t believe it myself. We went from 9.5W to 5.5W, -42%!

View attachment 27177View attachment 27178
How did I achieve this? There is a hint in the table already, let me explain:
Mister M suggested to try undervolting the EE and that’s exactly what I did in the last row of both tables. I can only undervolt the EE and GS at the same time, because they are supplied by the same 1.25V rail. Those measurements were done with a moderate 1V setting. I also tried going below 1V, but the system kept freezing at <0,9V. It would be a good idea to be a bit conservative here, as different batches/chips might have varying tolerances.
I’ve played GTA and Okami for about 2-3h now and the performance was rock-solid. Not a single crash or weird unexpected behavior.
The fact that I didn't kill this system already after all those tests is a real miracle, thank you Playstation gods for staying on my side!

Another neat thing to measure would be the impact of the core voltage on the package temperature (mainy on the EE, the GS runs cool anyway), but I don’t have any means to perform that measurement. The same is true for the regulator board; my calibrated finger measurement states that it gets hand-warm during operation, but it would be nice to know the exact temperature (change). Sound like a good occasion to finally buy a thermal camera! Any suggestions?

Next up: Battery Management
I will keep this one short, because the post is already quite long.
The schematic is almost finalized and I’m starting to think about the component placement. The current implementation is heavily inspired by my CM4 portable that I never finished.

The first prototype will most likely include:
  • BQ25792 - battery charging, power path
  • STUSB4500 USB C PD negotiation
  • MAX17205G Fuel gauge, cell balancing, maybe protection
The battery management board will plug directly into the regulator board and the SysCon header will have the same horizontal arrangement. That will make interfacing with both boards easier, once I have the SysCon prototype.

The BQ25792 is a bit overkill for my application, but maybe I will need it in the future (may reuse the power management for other projects I have in mind). It is very compact compared to other 2S solutions, because it includes all FETs in the package. The downside is that the package has a very odd pinout, no idea what they were thinking while defining it…
Currently there is no stock, but I should be able to get my hands on a couple ICs in about a month.

The STUSB4500 was mainly chosen because of its popularity and proven functionality + there is some stock again. Something like the IP2721 would have been an interesting alternative.
On the MAX17205G I still have some doubts. It is a pretty neat fuel gauge, because it includes optional cell balancing for 2S applications. The downside is that in this mode it only supports high-side battery protection chips and those are quite hard to find. The one I found (S-8253C/D) is actually pretty bad compared to the protection features of the MAX17205G.
Although the BQ25792 already includes various battery protection features, I have a bad feeling about removing the separate battery protector, which could be seen as the secondary means of protection. That’s why I had an idea to use the alert output of the MAX17205G to disconnect the battery pack using back-to-back P-CH MOSFETs (pretty much what a battery protector does). The conditions to trigger the alarm are very flexible and configured via I2C + they can be stored to NVM. Not 100% convinced that this will work, but I will include it in the first prototype. If it doesn’t work, I can always bridge those FETS and try something else. In the upcoming updates I will give more information (depending on the availability of the BQ25792)

Puhh that was a long one!
And one more question: if I change onboard 7805 to other regulators does it extend battery life? I’m running 2s2p to archive 4200 mah and 2 hours 15 minutes at max of battery life and after ~6.5v PS2 won’t turn on, so what the culprit?
 
Joined
Dec 25, 2022
Messages
30
Likes
233
Location
Landeck, Austria
And one more question: if I change onboard 7805 to other regulators does it extend battery life? I’m running 2s2p to archive 4200 mah and 2 hours 15 minutes at max of battery life and after ~6.5v PS2 won’t turn on, so what the culprit?
I see 2 possible issues with the 7805:
  • The dropout voltage is about 1.5 to 2V if I remember correctly. That means you should not go below 6.5V on the input, otherwise the output voltage will drop.
  • The efficiency is really only an "issue" with bigger loads. Let's say you draw 1A from the USBs and have 7Vin, then you loose about 2W in heat. There you would probably save ~1.5W by going with a DCDC converter. If you only draw 200mA at 7Vin you loose about 0.4W, there it's not really worth getting a buck converter, IMO.
About your second question:

I assume you are talking about the stock mainboard without custom regulators. You *can* actually run that from about 5.7V, I just tried it.
It does involve some cheating though.

On the multimeter you can see the 5V output of the 7805 regulator for the video DAC and audio codec, it's actually 3.9V when powered from 5.7V-5.8V. This is the dropout issue from before. Going below ~5.6V breaks the audio output. The power draw is actually not that bad at ~7.5W, even slightly better than running it from 8.5V.
Video/Audio don't look very stable though, with such a low input voltage I would really recommend replacing the 3x 7805 with a buck converter that supports 100% duty cycle (to reduce the dropout voltage).
IMG_20230410_191412007_HDR.jpg


Now we get to the cheating part:
The 90k mainboard has some sort of brownout protection for the MechaCon (not sure about 79k right now). It seems to be an external chip and the location can be seen in the picture below. When the IC is in place, it looks like the MechaCon is held in RESET as soon as the input voltage is below ~6.5V. When I remove this IC my 90k system also works normally below 6.5V
1681149630468.png
 
Joined
Jan 6, 2023
Messages
73
Likes
28
Portables
PS2p
I see 2 possible issues with the 7805:
  • The dropout voltage is about 1.5 to 2V if I remember correctly. That means you should not go below 6.5V on the input, otherwise the output voltage will drop.
  • The efficiency is really only an "issue" with bigger loads. Let's say you draw 1A from the USBs and have 7Vin, then you loose about 2W in heat. There you would probably save ~1.5W by going with a DCDC converter. If you only draw 200mA at 7Vin you loose about 0.4W, there it's not really worth getting a buck converter, IMO.
About your second question:

I assume you are talking about the stock mainboard without custom regulators. You *can* actually run that from about 5.7V, I just tried it.
It does involve some cheating though.

On the multimeter you can see the 5V output of the 7805 regulator for the video DAC and audio codec, it's actually 3.9V when powered from 5.7V-5.8V. This is the dropout issue from before. Going below ~5.6V breaks the audio output. The power draw is actually not that bad at ~7.5W, even slightly better than running it from 8.5V.
Video/Audio don't look very stable though, with such a low input voltage I would really recommend replacing the 3x 7805 with a buck converter that supports 100% duty cycle (to reduce the dropout voltage).
View attachment 27202

Now we get to the cheating part:
The 90k mainboard has some sort of brownout protection for the MechaCon (not sure about 79k right now). It seems to be an external chip and the location can be seen in the picture below. When the IC is in place, it looks like the MechaCon is held in RESET as soon as the input voltage is below ~6.5V. When I remove this IC my 90k system also works normally below 6.5V
View attachment 27203
Wow, it was just the pretty simple question and you did all of this work to answer on it, I really appreciate that! I will try it on one of my boards and then use it on my portable board, then tell results. Thanks again!
 
Joined
Sep 27, 2016
Messages
400
Likes
836
After your post about undervolting, I changed out one resistor in my PS2 portable on my custom reg board to go from 1.25v to 1v and went from 2hr 15 minute battery life from 3.7v 7600mah batteries to now 3 hours and runs substantially cooler to the touch. Incredible!

Also, since you have done a lot of bios research, are bios chips swappable from one motherboard to another or are they specific to the CPU/GPU?
 
Last edited:

StonedEdge

a.k.a. ClonedEdge
.
.
Joined
Nov 16, 2018
Messages
361
Likes
1,473
Location
Japan, Tokyo
Portables
2
Is there any game issues you experience when undervolting? Iirc the PS2 struggled with some scenes even at base voltage, I wonder if that would impact any of the games, make them stutter or lag, etc? Will be interesting to see a few more games tested! Nevertheless the improvement in power consumption does look really good!
 
Joined
Jan 6, 2023
Messages
73
Likes
28
Portables
PS2p
After your post about undervolting, I changed out one resistor in my PS2 portable to go from 1.25v to 1v and went from 2hr 15 minute battery life from 3.7v 7600mah batteries to now 3 hours and runs substantially cooler to the touch. Incredible!

Also, since you have done a lot of bios research, are bios chips swappable from one motherboard to another or are they specific to the CPU/GPU?
Did you use custom regulator or not? And if not, which resistor you changed?
 
Joined
Jan 6, 2023
Messages
73
Likes
28
Portables
PS2p
I see 2 possible issues with the 7805:
  • The dropout voltage is about 1.5 to 2V if I remember correctly. That means you should not go below 6.5V on the input, otherwise the output voltage will drop.
  • The efficiency is really only an "issue" with bigger loads. Let's say you draw 1A from the USBs and have 7Vin, then you loose about 2W in heat. There you would probably save ~1.5W by going with a DCDC converter. If you only draw 200mA at 7Vin you loose about 0.4W, there it's not really worth getting a buck converter, IMO.
About your second question:

I assume you are talking about the stock mainboard without custom regulators. You *can* actually run that from about 5.7V, I just tried it.
It does involve some cheating though.

On the multimeter you can see the 5V output of the 7805 regulator for the video DAC and audio codec, it's actually 3.9V when powered from 5.7V-5.8V. This is the dropout issue from before. Going below ~5.6V breaks the audio output. The power draw is actually not that bad at ~7.5W, even slightly better than running it from 8.5V.
Video/Audio don't look very stable though, with such a low input voltage I would really recommend replacing the 3x 7805 with a buck converter that supports 100% duty cycle (to reduce the dropout voltage).
View attachment 27202

Now we get to the cheating part:
The 90k mainboard has some sort of brownout protection for the MechaCon (not sure about 79k right now). It seems to be an external chip and the location can be seen in the picture below. When the IC is in place, it looks like the MechaCon is held in RESET as soon as the input voltage is below ~6.5V. When I remove this IC my 90k system also works normally below 6.5V
View attachment 27203
Hi again, just finished testing on my board. GH-072-42 worked pretty stablely as low as 5,4v with 3,7 v on audio-video 7805, but I didn’t checked audio, but since video and audio share same rail it must work. I checked voltages and beside 7805 every rail produced voltage without drop. I guess if I change 7805 on usb and audio-video circuitry it can go as low as 4.75v (maybe)
Update: my thoughts was wrong, lower if voltage drops below 5.5v audio disappearing, so modified board can run from 5.5v to 8.45v and it’s translates in 2.75v to 4.22v on one battery if configuration 2s and it’s in limits of safe lithium ion battery discharge cycle
 
Last edited:
Joined
Apr 5, 2023
Messages
14
Likes
13
After your post about undervolting, I changed out one resistor in my PS2 portable on my custom reg board to go from 1.25v to 1v and went from 2hr 15 minute battery life from 3.7v 7600mah batteries to now 3 hours and runs substantially cooler to the touch. Incredible!

Also, since you have done a lot of bios research, are bios chips swappable from one motherboard to another or are they specific to the CPU/GPU?
79XXX to 90000 should work.
 

Kirbo

.
Joined
Jan 11, 2023
Messages
32
Likes
7
Location
Dreamland
Portables
None..... Yet
Yo this is wild. Just discovered this thread this looks amazing. I will be waiting for updates.

Someone should definitely do this for the wii; but this is just amazing and verrrry professional.
 
Joined
Dec 25, 2022
Messages
30
Likes
233
Location
Landeck, Austria
After your post about undervolting, I changed out one resistor in my PS2 portable on my custom reg board to go from 1.25v to 1v and went from 2hr 15 minute battery life from 3.7v 7600mah batteries to now 3 hours and runs substantially cooler to the touch. Incredible!

Also, since you have done a lot of bios research, are bios chips swappable from one motherboard to another or are they specific to the CPU/GPU?
That's some nice runtime boost, thanks for sharing!
For the BIOS:
You can swap the BIOS chip between the 79k and 90k consoles, as @mixa232323 already mentioned. I verified that it works both ways (even though I don't know why you would put a 90k BIOS on a 79k console...). It doesn't seem like it's locked the mainboard, otherwise my BIOS mod wouldn't work either. There I just dumped the BIOS from a random 79k mainboard and I've been using that same BIOS for all the mods so far without any issues.

Is there any game issues you experience when undervolting? Iirc the PS2 struggled with some scenes even at base voltage, I wonder if that would impact any of the games, make them stutter or lag, etc? Will be interesting to see a few more games tested! Nevertheless the improvement in power consumption does look really good!
I've tested Okami(MX4SIO), GTA SA(MX4SIO), NFS MW(SMB) and Shadow of the Colossus(SMB) now for a couple of hours on 1V and so far I'm not seeing any differences regarding the framerate.
The nice thing about the current regulator prototype is that I can adjust the core voltage while playing. That way I can between 1V & 1.25V directly and compare them. I was especially curious about Shadow of the Colossus, because the EE is already struggling on 1.25V to keep a playable framerate. Luckily enough there was no difference so far.

Measuring the temps using PS2Temps after an hour gives me 34.31°C on 1V and 37.31°C on 1.25V. I don't think the measurements are comparable or precise though, because the temp sensor is not integrated on the die (it is just next to the EE on the top layer)
Got a great deal on a thermometer and will do some more temperature measurements on the EE/heatsink next week!

Hi again, just finished testing on my board. GH-072-42 worked pretty stablely as low as 5,4v with 3,7 v on audio-video 7805, but I didn’t checked audio, but since video and audio share same rail it must work. I checked voltages and beside 7805 every rail produced voltage without drop. I guess if I change 7805 on usb and audio-video circuitry it can go as low as 4.75v (maybe)
Update: my thoughts was wrong, lower if voltage drops below 5.5v audio disappearing, so modified board can run from 5.5v to 8.45v and it’s translates in 2.75v to 4.22v on one battery if configuration 2s and it’s in limits of safe lithium ion battery discharge cycle
Nice to see that you got it working! The measurements also kinda match mine, that's good! The 7805 really seems to be the limiting factor here.
 
Joined
Jan 6, 2023
Messages
73
Likes
28
Portables
PS2p
Nice to see that you got it working! The measurements also kinda match mine, that's good! The 7805 really seems to be the limiting factor here.
Yes, the 7805 is only problem here, I got laying down in my spares Mini360 step-down regulator that I wanted to use for Wii portable and I want to change audio video 7805 and safe USB one, because even in 5.3v it’s still outputs ~4.5-4.7v and it would be enough for usb to work and less work for me, since board is going to dissipate a lot of heat I only change one of them.
 
Joined
Sep 27, 2016
Messages
400
Likes
836
That's some nice runtime boost, thanks for sharing!
For the BIOS:
You can swap the BIOS chip between the 79k and 90k consoles, as @mixa232323 already mentioned. I verified that it works both ways (even though I don't know why you would put a 90k BIOS on a 79k console...). It doesn't seem like it's locked the mainboard, otherwise my BIOS mod wouldn't work either. There I just dumped the BIOS from a random 79k mainboard and I've been using that same BIOS for all the mods so far without any issues.
Thank you for the response. I actually just swapped a 7900X bios chip to a 9000X board out of curiosity last night and worked just fine. The EE you have seems to have a slight die shrink right? You mentioned previously it was different from any other 9000X board you've seen and seems to draw less power and runs cooler, so I assume your test results will be slightly less than the usual 7900X EE but would be good for reference in general!
 
Joined
Apr 5, 2023
Messages
14
Likes
13
So, the next step was to choose a suitable replacement. After hooking up the logic analyzer, I knew that the OE LOW time was min. 120ns and assuming that the PS2 latches the data in the center of the pulse (just assuming, because the interface is asynchronous), I would need an access time of MAX 60ns. That is quite fast, as most parallel flash chips today are only rated at 70ns+. Then I ordered 3 chips that were available (thank you chip shortage):
  • MX29LV320ETTI-70G at 70ns; probably not working
  • S29JL032J60TFI010 at 60ns; could be close
  • S29PL064J55BFI070 at 55ns; might be promising
MX29LV320ETTI-70G

Valid data output after address 70ns

Valid data output after CE# low 70ns

!!! Valid data output after OE# low 30ns !!! Why shouldn't it work?

Data output floating after OE# high 30 ns
 
Joined
Dec 25, 2022
Messages
30
Likes
233
Location
Landeck, Austria
Yes, the 7805 is only problem here, I got laying down in my spares Mini360 step-down regulator that I wanted to use for Wii portable and I want to change audio video 7805 and safe USB one, because even in 5.3v it’s still outputs ~4.5-4.7v and it would be enough for usb to work and less work for me, since board is going to dissipate a lot of heat I only change one of them.
Please make sure to double-check that USB works at 5.3V input. The 4.5V you're measuring is without load I assume, when you connect some load to the USB port (eg. USB stick) I would expect that voltage to drop significantly.

Thank you for the response. I actually just swapped a 7900X bios chip to a 9000X board out of curiosity last night and worked just fine. The EE you have seems to have a slight die shrink right? You mentioned previously it was different from any other 9000X board you've seen and seems to draw less power and runs cooler, so I assume your test results will be slightly less than the usual 7900X EE but would be good for reference in general!
Yes, my 2008 EE is probably not the best one to compare, at least until there is more data. I'm not sure about the die shrink though, it would be interesting to cut one open and compare them directly. The closest thing I have to compare the current consumption right now is my modified 79004 mainboard, it consumes about 1W more. That's all the data I have at this point.

MX29LV320ETTI-70G

Valid data output after address 70ns

Valid data output after CE# low 70ns

!!! Valid data output after OE# low 30ns !!! Why shouldn't it work?

Data output floating after OE# high 30 ns
Valid data output after OE# low 30ns;
AFAIK this is only true when the chip receives the address min. 40ns before OE goes LOW, as the max 70ns access time (address->output) is still there. You can see it in the timing diagram in the datasheet. Correct me if I'm wrong though!

The EE outputs the 22 bit address almost synchronously with OE. According to my captures, the addresses are output about 10ns (average) before OE goes LOW, after that the MX29LV320ETTI-70G still needs max 60ns to output valid data. The smallest OE low pulses I've seen are about 120ns-140ns long.
The only open question here is where the EE reads the data within those 120-140ns. If the EE reads them in the center of the pulse, the timing might be very tight in some situations and that's my only explanation for the MX29LV320ETTI-70G not working.
I could give my CE fix a try to see what happens, but as the mainbaord did not even boot with this chip I don't have much hope!
 
Top