bwack / C64-Saver-bwack

Other
97 stars 14 forks source link

High voltage drop over the power MOSFET #30

Closed bwack closed 10 months ago

bwack commented 1 year ago

I measure V_DS=200mV at V_GS= -5V and I=1.2A. We would like the voltage drop over the C64 Saver to be as low as possible, in case someone is using PSU with voltage on the low side of the VDD tolerance (which is 5V +-0.25 V ?)..

In Saver 1.3 I did a lot of testing for voltage drop over the whole circuit and was quite happy with it with using IRF9332. It promised Rds(on)=28.1 mOhms at V_GS=-4.5V. The C64 draws about 0.8A. For 1A draw, we would hve 30mV drop or less. Unfortunately this has a different package than what I'm using now.

Then when I made the Saver 2 I selected a part that would give similar results. So why this high voltage drop now ? Has the part changed ? Are there variations to the IRF5305 ? Nobody has complained about this. I guess it works well for those who use it, but the thing is, I built myself a PSU after starting this project, and haven't been using it much myself, but when I have used it, It has been working fine. Also I haven't touch this project for three years.

This needs more investigation, and lets continue to figure out what happened, and find a replacement part for this mosfet. I would like to see a P-Channel mosfet, V_DS max 30V, R_DS(on)<=30mOhm @ V_GS=-4.5V. Imax is not so important because it is usually very high for these low resistance devices.

EverlastEngineering commented 1 year ago

Hey Bwack!

I just ordered a short run of the new 2.6 TH board with enough components to build 5 to test out the new design. Is there anything in particular I should look for?

I've made a batch of these from an order on the back in 2020 (so, version 2.4? I forget tbh) and I test each one with a small and large load. I consistently find a sharp cut off from between 5.39 to 5.44, which drops to 100mV then 0 after a moment.

I've never seen a voltage drop from in to out less than 10mV with my builds. See results below.

I'm unsure if this applies, but I toyed around with adding LEDs myself, and found issues no matter how I routed the "red" led. I would have voltage bleeding, or affect the V drop. I don't clearly remember anymore but when these boards come in I'll be able to compare 2.4 to 2.6 and see what I see!

I might even be able to swap some components that are the same to ensure it's not a variation of the components themselves if I find anything.

EverlastEngineering commented 1 year ago

I'll have to confirm this, but it appears I used NCE55P15K from http://www.ncepower.com/ in the past with great success.

For this prototype build, I ordered https://www.lcsc.com/product-detail/_Infineon-Technologies-_C2624.html

bwack commented 1 year ago

Not sure of anything obvious to look out for. Hopefully the latest version 2.6 is stable now. The only issue I've found now is what this github issue is about, the voltage drop over the saver when the C64 is on and running. One thing is that the voltage drop produces heat. If the PSU normally just supplies 5.00V or less, the voltage seen by the C64 can be too low.

You can use the IRFR5305 if you have a psu that produces more than 5.00 V under load. I'm using a custom PSU that produces 5.01V under load. The voltage is 4.76V when I measure over bypass caps near the chips. it works, it's not great.

I will order and try these mosfets: https://no.mouser.com/datasheet/2/196/Infineon_IPD042P03L3_G_DS_v02_02_en-3164400.pdf https://www.vishay.com/docs/67014/sqd50p03.pdf https://no.mouser.com/datasheet/2/408/TJ40S04M3L_datasheet_en_20200624-1858407.pdf

LEDs: I have also seen this issue with the bleeding in V2.5. In V2.5 I was trying to save a bipolar transistor, but as you saw, it is impossible to turn the led fully off, the load (c64) can provide a path to gnd. That is something I've fixed in V2.6. I haven't tested the V2.6. I have tested the OCP V0.1 board, which is the same, but with some additional circuits, and the leds worked fine there. No bleeding there.

EverlastEngineering commented 1 year ago

Boards are in and one was built tonight, it came together nicely.

I don't know what I was thinking earlier, because on the V2.4 boards I've been making there is about 80mV at 1A: 5.14V goes to 5.06V.

Unfortunately with the 2.6 design I'm seeing 160mV at 1A: 5.14V dropped to 4.98V 😬 The drop increases as the source V falls too:

Volts Drop 5.43V 0.13V 5.14V 0.16V 5.00V 0.24V

Tomorrow night I'll drop on one of the mosfets from the 2.4V builds and see if that is any different.

If there's anything you'd like me to test, try or look for, let me know. 👍

EverlastEngineering commented 1 year ago

Scratch pad maths says that V drop is about 160mW. Am I reading the datasheet for the IRFR5305 correctly, that the power disippation is 110...Watts? Edit: yeah. So I guess I won't worry about overheating this at 160mW 🤣

https://datasheet.lcsc.com/lcsc/2304140030_Infineon-Technologies-IRFR5305TRPBF_C2624.pdf

EverlastEngineering commented 1 year ago

Alright, enough spamming from me but after reviewing the datasheets, the 5305 specs the RDS(on) at VGS = -10V, ID = -16A.. and that's it. So I guess it shouldn't be a surprise. I think I got lucky with the NCE55P15K. I hope I see the same result from it on the 2.6 as the 2.4, then we'll wait to see what those three you order are like. I'll likely poke around LSCS and see what else is available. Maybe I'll look for something with a much lower current capability. It may yield something with a more favorable RDS(on) in the lower current and voltage range we're working in.

EverlastEngineering commented 1 year ago

Looking through datasheets, not a bad way to spent a friday night. :)

Question: forgive my lack of knowledge around this, but why the specification for VDS max of 30V? If 20V was tolerable I see a number of SOT-23 that have specs at 4.5V and low current. SOT-23 is a mild PITA to solder for newcomers but no worse than their bigger cousins. For me the tend to disappear when tweezers slip. 🤣

I've noticed that with a lot of the big package MOSFETs do not have data plotted below 2A or even 5A, should they even have a RDS(on) graph.

Those that do, often spec their RDS(on) resistance at least 10A, so could we expect the others without a graph to have similar specs at lower current? In other words, I draw the conclusion that many that have the high current capability to be unsuitable for lower current applications.

I'm off to build another 2.6 board, and I'll use a NCE55P15K from my last batch and then do a proper test tonight on the scope with time to voltage cut and look for any other anomolies.

EverlastEngineering commented 1 year ago

I used the old mosfet from my last batch in a V2.6 board tonight, and I see the same 0.08V drop I did as in the v2.4 design. I do notice a higher cutoff at 5.45V. That is the highest I've ever seen, the previous maximum was 5.44V and they're nominally 5.42V.

This test was conducted at a 1A load, btw. I think I'll just order another batch of NCE55P15K.

Did any of the fets you order come in?

bwack commented 1 year ago

Hi. I've been on vacation. I will order components tonight. Also I will order a new revision of the OCP version.

Regarding the 30V spec, is because of high voltage spikes when power is switched on and off. Thanks for checking.

Wait with ordering components. The NCE55P15K is not great, because I think you mention above as well, the <75 ohm resistance is at Vgs = -10V, meaning it will get even worse at less Vgs=-5V.

Ps. Thanks for doing this research.

EverlastEngineering commented 1 year ago

Hope you had a great vacation!

No, the NCE55P15K is the one that I'd been using in the past, 0.065ohm at -10V/16A. It doesn't have a spec on it's datasheet at 5V / 1A but reveals ~ 0.08ohm.

The reason I asked about the 50v / 30v maxiumum is due to the greater number of mosfets with specs in the lower V/I range that have a 30V maximum. Have you seen spikes higher than this? If so, wouldn't the C64 have seen those spikes and died? :o

bwack commented 1 year ago

I didn't realize that you ment the power mosfet. I don't remember the exact measurements. I've made videos about the spikes a long time ago. The spikes are seen when the power is switched on or off with the c64 power switch or the saver itself switches. The C64 does not see this spike, but the main mosfet gets it over its drain source junction. It's a kick back from the long power supply cable when the current path is disrupted. Another thing I've seen in the scope is when the power is switched on, there is a huge inrush current. This is no issue for the mosfet, but keep in mind that the power switch is not perfect, so while this inrush is ongoing, the power switch bounces for a few milliseconds. Spikes are seen at the outside of the C64. I think this why I had some returns of the C64 Saver 1.x, where the mosfet and mosfet gate driver (a pmos back then) were both blown. It could have been due to hotpluging as well (should not be an issue in any case). What I ended up doing I have written about in the readme, but is the result of C64 Saver 2, following an automotive application circuit. basically it is just adding resistance to the break-down path in the stacked transistors (power transistor and mosfet gate driver). and some zeners just in case.

EverlastEngineering commented 1 year ago

Heyo! Did you get a chance to review the power loss on those other MOSFETs?

jdecupere commented 11 months ago

Was reading this exchange with some interest as I am thinking of modifying your design to be really minimal to build into the case…so not doing the pin headers and 9v AC pass through. That would shrink it quite a bit. have you considered the IRF9310? I know the SO-8 is less convenient, but besides the gate pin, most other pins tie together anyway. But that one specs at below 10mOhm at Vgs of -4.5V

EverlastEngineering commented 11 months ago

Exactly what I'm thinking of doing too, spread out the layout a bit, use wide spread legs on U1 / Q1 etc. Agree on the package of the FET too, I think the TO-252 package tends to lean towards high current applications.

That said, the IRF5305 gets mega hot at 1.5A, but that's due to the V drop.

I'm leaning towards the IPD068P03L3G, similar specs to the IRF9310.

I've just imported the layout into EasyEDA and will be working on it tonight, so I'll post here!

EverlastEngineering commented 11 months ago

One other thing: the current going through LED2 limits the overall current capability so I'm going to move it directly to the safe 5V side of the mosfet. I prototyped it last night and it works great.

EverlastEngineering commented 11 months ago

@jdecupere That IRF9310 looks great if you decide to do a layout with it! At the lower current needs, it looks like it would be less than 6mOhm!

I honestly would prefer soldering a SOP than the TO-252 as it needs sooo much heat.

jhiggason commented 11 months ago

Hey fellas- closed out my other problem as I think I have resolution on that. Bought 5 sets of the components for version 2.6 but based on this problem would it be wise to wait for a revision or can I just build knowing that it will get hotter than it should? It will still properly protect my c64 right? Should I heat sink it?

Based on this conversation it looks like as long as my PSU is outputting >5V @ 1amp load this still should work properly. Is that correct? Anything else I need to keep in mind?

jdecupere commented 11 months ago

re-reading @bwack and @EverlastEngineering comments I am not so sure anymore it will work. It will definitely protect and not damage you C64. But seems like the suggested IRF5305 was not tested by @bwack and @EverlastEngineering has proven it gives a large drop - even worse for lower input voltages (which makes sense as that also reduces the Vgs for the transistor and hence increases its Rds_on). So you will get issues with supplies 5V or less - and/or if you add more peripherals that draw current from this supply (e.g. on the cassette port). I have no (short term) time to experiment, but I think @EverlastEngineering is actively trying options in the same footprint. My suggestion needs a board re-layout (for which i need to free up some time....) If you have all the material, it won't hurt to build one and use it. if that is your only short term safe option to use an old power brick...worst case it gives your C64 not enough voltage and you will see non functionality or strange behaviour (e.g. due to timings being off)

EverlastEngineering commented 11 months ago

Hey all,

I worked out a design for couple issues, you can see the design here:

https://github.com/EverlastEngineering/C64-Saver-bwack/tree/2.7-through-hole/C64%20Saver%20Throughhole%202.7

Gerbers are there but I wouldn't mind having someone look over them before anyone orders lol.

I think the IPD068P03L3G will work well. I can confirm the IRF5305 gets too hot for my comfort level even at one amp, above 90F in free air. If it was in a case, it could really build up. An early unit of mine draws 1.2A with no accessories btw.

See the open Pull Request for more details on the changes. I started simplifying but scrapped that idea and made one match the footprint as is for Bwack's other boards.

https://github.com/bwack/C64-Saver-bwack/pull/32

The other neat improvement is the ability to tune the cutoff voltage. The 3.9k / 3.3k divider produces a cutoff of 5.47V which is getting too high for my comfort level. 3.6k resistors are harder to source cheaply as they're E24, so not as common, so I added dual resistor in that path so you can use a combination for custom values. I'll be using 3.3k + 330 (or 270) / 3.3k which are all easy to get. If you want to use a single resistor, just put a jumper in for the missing one.

If I go 270 for the series resistor, I could also use it for the green led, for a reduced BOM.

Also, the layout allows 5mm leds if you wish.

@jhiggason Sorry you didn't get to see my msg before ordering. Honestly though, if you got the other MOSFETs and some 3.6kOhm resistors you can "bodge" the 2.6 board with a couple cuts and single wire. That's how I prototyped it.

jhiggason commented 11 months ago

@EverlastEngineering It's totally OK, I could have waited too. =) I've got enough parts to at least try the hack job with the right mosfet. Would you be willing to write out/sketch what changes need to be made please? Excited to give this all a go =)

EverlastEngineering commented 11 months ago

@jhiggason I'll snap a picture of the LED bodge tonight for ya, it's easy!

jhiggason commented 11 months ago

@EverlastEngineering Cool thank you!! I ordered the new mosfets and resistors. If you get someone to check your gerbers for that other board I'll order a set of those too to give them a go. Let me know when I should be safe to order. Thanks again =)

jhiggason commented 11 months ago

@EverlastEngineering Hey- do you think you could share the photo of the LED bodge today? I think my stuff should be here today =) Thanks again!

EverlastEngineering commented 11 months ago

@jhiggason Sorry for the delay my dude, life finds a way to get in the way. :)

IMG_8562 IMG_8563

There’s two cuts, one below R10 and another to the right of the big resistor. This strands the zener so I connect it to the 5v in the headers.

I put the mosfet a little crooked so I’d have room to attach a wire to the safe 5v and ran it to the led.

Works well and is stable no matter the value of r10.

EverlastEngineering commented 11 months ago

Here’s a close up with the traces you need to cut circled.

IMG_8564 IMG_8565

jhiggason commented 11 months ago

@EverlastEngineering thank you so much! This really means a lot to me. Hopefully I'll be able to post about success shortly!

Jeff

PS do you feel like we can order the 2.7 board yet? I'd be willing to give it a go if you think it's good.

EverlastEngineering commented 11 months ago

Wait a couple days and my prototype boards will arrive and then we'll know for sure! :)

jdecupere commented 10 months ago

HI there I am waiting for the boards to test the IRF9310, but meanwhile breadboarded the rest (so, all is included except the IRF9310) just to do some checks. Just thought I'd share the quick check on startup behaviour here with some screenshots. I used @EverlastEngineering suggested resistor split and 330 ohm +3.3k. This seems to give a trigger point around 5.28V in my breadboard. Seems to work nicely and quickly :). In the final config, there will be a big cap from the C64 on the safe 5V as well as all kinds of load....so there would be no risk at all of getting even transient overvoltages it seems.

Blue CH2= 5V "unsafe" Yellow CH1 = gate of the MOS power FET

V_in to 5.2V: IMG_0679

V_in to 5.35V: IMG_0678

EverlastEngineering commented 10 months ago

^^ Awesome!

My boards arrived just now, I'll be building one tonight with a leftover mosfet that has the higher V drop to test out the rest of the changes.

In regards to scoping the results, I found something really interesting likely due to the cap on board buffering the voltage. When I first tested the 2.4 design I saw a spike, sometimes considerable in the 5V_Safe but I had no load at all while testing; that seems to be critical. With any appreciable load, right up to 1.2A, there was no spike at all. I'll see if I can get get a quick video of it.

@bwack why don't you open Discussions on this repo so we can carry on the convo's that aren't strictly related over there?

bwack commented 10 months ago

Done, added discussions.

bwack commented 10 months ago

No worries. You can discuss here if you like. I have populated my c64 saver OCP v0.2 board. If I can get it up and running I will post some results.

bwack commented 10 months ago

Having fun testing now. Just compared the IRF5305 to TJ40S04M3L. Pulling about an amp (0.99A). Seeing V_DS go from 218mV (IRF5305) to 11mV with TJ40S04M3L !! Wow! Vin measured at the connectors VIN, on the PCB (!), is about 5.02V. V_GS=-4.93.

EverlastEngineering commented 10 months ago

We should make a wiki about mosfets that are known good and what spec to look for when searching for alternatives. It’s a great way to learn about data sheets. On Sat, Oct 28, 2023 at 11:43 AM bwack @.***> wrote:

Having fun testing now. Just compared the IRF5305 to TJ40S04M3L. Pulling about an amp (0.99A). Seeing V_DS go from 218mV to 11mV !! Respectively! Wow!

— Reply to this email directly, view it on GitHub https://github.com/bwack/C64-Saver-bwack/issues/30#issuecomment-1783852861, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAWC4D5I776XCLU6H5RX7ULYBUR3TAVCNFSM6AAAAAAYIZ7K36VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBTHA2TEOBWGE . You are receiving this because you were mentioned.Message ID: @.***>

bwack commented 10 months ago

I invited you as collaborator. If you like to edit the wiki. I'll put the alternatives i find into the boms.

Another measurement, same conditions as above (0.99A, VIN=5.01, V_GS=-4.93): SQD50P03: V_DS = 8 mV

bwack commented 10 months ago

IPD042P03L3GATMA1: V_DS=4mV !

EverlastEngineering commented 10 months ago

I've added a wiki with these values, so I'll close this issue now!

https://github.com/bwack/C64-Saver-bwack/wiki