diff --git a/docs/power_path.md b/docs/power_path.md new file mode 100644 index 0000000..b9fb59d --- /dev/null +++ b/docs/power_path.md @@ -0,0 +1,86 @@ +# Power Path + +## PD controller + +Based on the specifications, I've decided to use the the STUSB4500 as +a PD controller instead of the TPS25730. Mostly due to the nice interface +and the lack of ADC-based configuration pins. The TPS25730 has one thing that +is nicer than the STUSB4500, the way it enables its sink path. + +The STUSB4500 has a pin called the *VBUS_EN_SNK* which is an open drain output +and turns on (or rather the Transistor turns on) when a PD profile has been +negotiated according to the configuration. This means that the way to switch +on the sink path is by using P-channel FETS. + +The TPS25730 on the other hand, has an internal charge pump that can generate +a voltage above the source (source or drain will only matter during turn on +and turn off events, since the entire MOSFET is in series and meant to be +driven in its ohmic region). This means that it uses N-channel FETS. + +The big advantage of N-channel FETS compared to P-channel FETS is that +generally N-channel FETS are smaller and have a lower R_ds(on) compared +to the P-channel FETS. + +Looking at the reference design of the STUSB4500 and the TPS25730 really +shows the difference. The STUSB4500 design uses the STL6P3LLH6 P-channel +MOSFETS which have a max R_ds(on) of 30milliOhm per FET. The CSD87501L +Dual N-channel MOSFET used by the TPS25730 has a combined max R_ds(on) of 9.3 +milliohms. + +Comparing both FETS, the loss in the switch for each of the PD controllers +at 5A (12V) is equal to: + +* 30 milliOhm * 2 = 60 milliOhm * 25(I squared) = 1.5 W +* 9.3 milliOhm = 9.3 milliOhm * 25(I squared) = 0.233 W + +Although a loss of a quarter of a watt is awesomely low, I would be happy +with a total loss of around a watt, or half a watt per MOSFET. + +To this end, the following specifications will be used to find a better +MOSFET for the Power Path: + +1. Vds > 30V +2. Vgs > 20V (I really don't want to use a different FET if I decide to +make a 20V version). +3. R_ds(on) max < 20 milliOhm +4. Vgs(th) min = 1V +5. Smallest possible footprint. + +### Sink Switch Gate Driver + +The reference design of the STUSB4500 (the one with the MCU) uses a few +passives as a gatedriver before connecting to the *VBUS_EN_SNK* pin. +R10 is logical, since we want to make sure that when *VBUS_EN_SNK* is not +turned on the voltage between the gate and the source is 0. The size of +R10 is not. Looking at the reference design and assuming a 20 voltage drop, +the current flowing through *VBUS_EN_SNK* is only 160 micro A, significantly +lower than the 3 milli A used in the electrical characteristics. The resistor +R11 is likely used to limit the maximum Vgs, sice the STL6P3LLH6 has a limit +of around 20V, which would nearly be reached without it. The choice of +22 Kilo Ohm is likely to create a larger safety margin, since above a Vgs of +10 V, the R_ds(on) would be low enough. + +The reasoning behind R13 and C10 is not yet known. I will test it out +with a simulator. + +### Discharge circuits + +The STUSB4500 has two discharge paths that are automatically triggered +in case of a disconnect or some voltage error. Although really useful, +both pins *VBUS_VS_Disch* and *Disch* are only triggered by the internal +logic of the STUSB4500. There is no way, except playing around with the +voltages, to trigger it yourself. On the *VBUS* side there is no problem +with that, the only reason I would want to discharge is a change in PD voltage +or a disconnect. However, at the system side, the rail needs to be discharged +if a LED strip is unplugged, since after an unplug event a plug event may +follow with a LED strip of a different voltage. Due to this, I will need to +add my own discharge path parallel to the one in the reference design. + +A fun thing to notice is that on the VBUS side, the discharge path to +*VBUS_VS_Disch* has a bunch of passives. The pin can only handle up to +50 milli A. Which is why a 1 kiloOhm series resistance has been added. +However, D4 and C4 are a bit strange. It would make sense that in case +of discharging D4 "shorts out" the resistor R1, but wouldn't it be better +to make R4 the same value as R1 allowing up to 40 milli A of current to +flow (assuming a Vd of 0V). It may have something todo with the discharge +and charge timing but I need to simulate it to be sure.