MP2722 and USB PD adapters

Hello, I am thinking about using MP2722 for battery management. I assumed, that it could do USB PD negotiation, since datasheet mentioned <26V Vin, but this does not seem to be the case. The biggest problem is, that some of these adapters do not output 5V by default and when I connect it to my device, it does not charge at all. All registers read as if nothing was plugged to USB C port at all.

So I have 2 questions:

  • Is there a way to make the PD adapter output 5V, while preserving charger detection and sourcing current to Vin? I can poll registers and set max current to safe-ish value if this was possible. Actually, no, I will assume PD adapter and crank current up to 11 lol.
  • Is there chip, that does PD negotiation and can do at least 5A charge current? I saw MP2731 mentioned in some blogpost, that it can do PD, but looking at datasheet, it does not mention this feature directly.

The MP2722 is not a USB PD controller. It just can handshake via CC lines (or D+/D- in case of USB BC1.2). This means it detects the CC line resitors, which signal the capabilities of the USB source.

USB PD on the other hand is based on a data protocol where the USB source and the sink exchange data packages via the CC lines.
These packages include the advertised capabilities of the USB source (a set of fixed profiles in context of PDO) and in return the sink sends the selelected profile.

If the adapter is non standard and not based on USB specs (e.g. the pull-up are not valid), chances are that the MP2722 won’t even fallback to legacy USB A (5 V/0.5 A).
You can check the status and fault registers to see if they hold any information.

Additionally, the 26 V you are referring to are absolute max ratings. The opoeration voltage range is 3.9 V - 16 V.

Hence, an adapter that provides >16 V may trigger the over voltage protection.
The failure registers will tell you about such an event.ected profile. That’s a brief “summary”.

So the MP2722 only supports dumb chargers.

Now, if your adapter is a USB PD adapter (smart charger) then it expects a USB PD sink on the other end. Your MP2722 does not speak USB PD so it sees nothing. It only checks for CC line resitors which are not complaint with any charging source.

If you want to support USB PD you have two options:

  1. Use an external USB PDC controller that performs all the negotiation. It then writes the result (the selected contract) to a register which your MCU then reads via I²C. Then configure the MP2722 via I²C based on this negotiated contract and allow MP2722 to start charging.
  2. Find another device that integrates a charger and a fully compliant USB PD controller.

I would recommend 1) as it also allows for better power management (which could be crucial in your battery powered application). For example, you can only power the USB PD controller when you have detected a USB reconnect event (by sensing VBUS) and leave it fully unpoowered for the majority of the time.
You also don’t rely on an integrated solution that does it all. For example, by adding a front-end USB PD controller you can simply add USB PD 3.1 PPS support to your system. I guess you had a hard time looking for an integrated solution that supports this.

Of course, third option is to accept the limitations and that your device won’t be able to support USB PD. USB 3.1 or USB 3.2 still enables fast charging at 15 W (5 V/3 A) via simple CC line resistor detection.

The MP2770 can charge up to 6 A. Same applies to the MP2760 (which also allows to feed you SYS with 6 A opposed to the 3.65 A of the MP2770 and supports input voltages up to 20 V). MP2770 is also pure single cell.

Thanks for reply. I wanted as highly integrated solution as possible, since I had only few mm2 to spare and used that for INA220 already. I kinda skimmed the datasheet and also assumed, that there will be ADC for current reading and I could configure Vsys to stable 5V. That would be sweet wouldn’t it?

I guess, I can reduce inductor size at least. I have read too many datasheets that day and decided to roll a dice at the end. Off to reading more datasheets I guess :slight_smile:

The voltage on SYS is not stabilized. It will track the battery voltage. Hence you have to add a downstream regulator in front of your system. Since you want 5 V you need a buck converter that boosts 3.7 V up to 5 V (at the cost of ~1.5 A including conversion losses (if your battery supports a discharge current of 5 A) leaving ~3.4 A @ 5 V for system supply.

Efficiency of buck converters is good, but this will add more parts to the BOM and costs PCB space.

If you can let go the USB PD/fast charging support and maybe focus on USB A legacy support (500 mA or USB 3.x @900 mA or a total of 4.5 W) you can find a PMIC that integrates a charger (e.g. Li-Ion/Li-Po) and buck converters to provide your system with one or more stable power rails including power path management.
Charging would be slower, but given you space constraints fast charging appears to be not feasible anyways.

Maybe you can stack PCBs to add more space?

May I ask what you need the INA220 for?

The chargers usually come with full current management any sometimes also with an charge/input current sensing interface. Maybe you could drop the INA220 from your application because I think you will have a hard time to find a device that integrates everything with your required specifications (e.g. low RDS(on) for the power MOSFET, >=5 A, >=20 V, battery chemistry, battery cell count, sink/source role, special features etc.). Especially for that high currents device usually don’t integrate USB PD controllers to improve thermal management.

I highly recommend to find a USB PD capable charger and pair it with a dedicated USB PD controller. Then check their package and look for the smallest. They usually only add e.g. 4 mm × 4 mm (QFN-24) + minimal discrete circuitry or even smaller.

For example, checkout the MPQ5031-AEC1 | Single-Port USB PD Controller for Source Only, AEC-Q100 Qualified | MPS (source-only) to get an idea of the full feature set of a modern USB PD controller. Then you understand better why you won’t find a fully integrated solution for your advanced requirements. The MPF52002 is available in a QFN-24 (4mmx4mm) package.

You can nicely pair the MPF52002 with e.g. MP2770 or MP2760 chargers (or whatever USB PDB ready charger you like). I recommend a charger with external power FET for better thermal management and full control over MOSFET efficiency (you can pick best RDS(on) or FOM).

Also if you want to go full 5 A maybe at 20 V (100 W in OTG mode and ~22 W charging) you should use a multilayer PCB for thermal management anyway (e.g. 4 layers for a GND plane you can also use as heatsink). If you are that tight on space you can’t omit a multilayer PCB if you want to support high power charging or sourcing.

You need heat sinking and wide power traces that will consume additional space. A typical 2 layer PCB supports ~2 A. Then you have to add much more copper (e.g. 2+ oz thick traces). Going 4 layers will be significantly cheaper.
I’m just saying in case you are not already designing on 4 PCB layers.

The MP2760 even supports temperature monitoring for the power MOSFET or alternatively the USB Type-C connector (which you should definitely consider to do - both). This way you don’t have to implement a custom heat management algorithm that includes the MOSFET/USB C connector NTC as input.

No current sensing required. Maybe you can drop it to get back some space?

MPQ5031 seems to be good fit, thanks for suggestion!
As far as current scheme, MP2722 is used only for charging battery, system gets power from MP3429 as it needs 5V.

Tl;dr I am making a battery powered computer with SOM. I want to see how much current is being used.

Heh, the nearly whole thing is routed on top layer with bottom being ground plane. Minimum vias, because I am using rivets. On the other hand, High power connections are as short as possible. Battery terminals are 3mm from MP2722. I will check thermal situation and set limits if something would get too hot.

It’s mostly a challenge for what can I achieve at home, exploring new technology and stuff…

The MP2639B is a DFP (Downstream Facing Port) device. It will only advertise PDOs. It’s designed to act as a power source (charger) for other devices.

If you want to sink power (use external USB power sources to charge your system’s battery, the MPQ5031 can’t do that. It’s not a charger. It can’t regulate charging current and voltage. It only can provide a fixed power contract that other upstream chargers can use. In addition, it can’t negotiate a PDO to sink power.

In USB PD you have the following two roles: source (e.g. a USB port on your laptop) and sink (e.g. a smartphone). The source charges/powers the sink. Some devices can act as both roles. However, the MP2639B can only act as a source.

If you want to sink power (e.g. to charge your system’s battery) you need a UFP (Upstream Facing Port) PD controller or a DRP (Dual Role Port) PD controller.

Ah did not look too closely at the thing. Well then I will look at product selector at MP for sink controllers, otherwise will use what farnell offers. It’s suspicious, that there are a ton of source controllers, but not too much for sink.

Ultimately, the primary goal is to charge the battery in reasonable time with any USB C power source.

I can recommend t he TPS25730D + MP2760. The TPS25730D (not the S variant!) features a fully managed high power path (including safety measures like OVP/UVP and full VBUS control like connect/disconnect) and is a sink only device (exactly what you are looking for).

You will need to provide a bulk capacitor bank on VBUS to meet USB PD specs (about 120 µF-150 µF). This relatively large capacitance requires tight discharge and inrush current control.
Discharge timings are defined per USB PD specs and are mandatory. The TPS25730D handles all this. It’s fully integrated, which reduces the BOM and saves some valuable space that you otherwise would have to use for external power FETs including the slew rate (or a gate driver) and an active discharge circuit. It also sports great thermal characteristics.

I’m using the TPS25751D for a DRP application (Sink and Source mode) in my design but I’m opting to replace it with the MPF52002. It’s a very interesting device (not released yet) but it doesn’t integrate a high power path (VBUS handling in this case is completely delegated to the MP2760 - you can check the MEZS7-PDCharger-Mp2760 datasheet for a reference design to get an idea). This means more discrete parts and tweaks as the MP2760 is just a USB PD charger and doesn’t implement any inrush control or VBUS discharge path.

Since you are heavily space constrained you should find a fully integrated USB PD controller (like the TPS25730D) that supplies your charger.

Ok I forgot that you are only in Sink mode (UFP). Therefore you don’t need the bigger 120 µF-150 µF capacitor bank. Just the common 4.7 µF-10 µF. But still, your charger requires some bulk on VBUS/VIN and to connect this bulk to 20 V creates some inrush. So this makes all the inrush control and VBUS discharge still relevant.

I have already bought some STUSB4500LQTR, after some shuffling it just about fits there with beefy 3x3 mosfet. I was thinking about not using the mosfet, but probably it will save me some headaches in future. It seems to need just this 1 FET (maybe) and 5 R/C passives (I have seen design with no Vbus discharge resistor, maybe you could drive fet gate directly too and I bet it would run with no caps on LDOs heh). It integrates on single copper layer well, which is great. But I did not test the design yet.

I was looking at MPF52002, the integrated MCU is bit ridiculous, but why not. My main concern there is software stack. I use Atmel 32u4 with arduino loader as embedded controller, because I can buy these pre-programmed and I use them in nearly everything already, so there is no learning curve.
In any case, it wouldn’t quite fit my application, because it needs power from the battery. So if the battery is dead, there will be no PD negotiation, and I would need to jumpstart the thing.

Also a nice device. It doesn’t support USB PD. Only standard USB Type C. But unless you have enough battery capacity and the batteries specifications explicitly allow e.g. 0.5C or 1C, charging at > 1.5 A is not an option anyway. And you avoid all the power and thermal management when designing the PCB.

I would use it to add safety to your system. It’s used in context of overvoltage protection and general VBUS monitoring to isolate VBUS from your system. It’s a good to have. If you just have a small 1S-2S battery configuration with e.g. 1 Ah capacity then the battery naturally limits the max current in the VBUS path. E.g. if you are limited to 1 A then you can use a small FET instead of a power FET.

I think you must stay within the discharge current limits of 50 mA. The device has a small integrated resistor but it should be too low to protect the device from the discharge current.

So you either should keep the external discharge resistor or completely disable the discharge functionality. If you stay within the USB PD sink limits of <= 10 µF on VBUS then you can get away without the discharge path. Common designs add a 4.7 µF next to the connector on VBUS. In this context the FET on VBUS helps you to isolate the decoupling capacitors that you have on the IN pin of your charger from the USB connector. I think the controller will always turn off the FET before discharging VBUS. So the discharge path (or VBUS during fast reconnects) would always see the 4.7 µF and nothing else. So disabling the discharge path should be fine.

Yeah, if you don’t care about stability then you can drop the decoupling capacitors to buffer transient voltages. Also the MOSFET has a capacitance on its gate. If you drive it without a resistor in front you lose inrush control. This can overload the IC’s gate driver pin that likely doesn’t expect high current on the gate path. Since this isn’t a fast switching FET you may get away with noise emitting and ringing. So inrush current is the only problem (if stability is not priority) which could be a good reason to keep the gate resistor. But if you use a tiny 0402 then it won’t occupy much space?

It’s to enable autonomous operation. And integrating CPU has become cheap I guess. You need firmware to run all the USB PD negotiations as they are data based and have a strict timing protocol. For USB BC1.2 or USB A/C you only rely on resistors on the CC lines (with minimal firmware if this has to be dynamic). But USB PD requires software control. Unless you want to implement it yourself on your MCU then having the stack ready for autonomous PD negotiation is pretty nice. No additional responsibility of your MCU (aside from configuring the battery charger dynamically via I²C based on the negotiated PD contract).
If you use TI’s controller (e.g. TPS25751D) and chargers (e.g. BQ25789) then you get a fully autonomous system where the PD controller also programs the charger via I²C. So your MCU has to do absolutely nothing.

It has dead-battery support like most modern controllers. The controller can run without battery when USB (CC lines) is present. It can perform CC line based negotiation to enable VBUS to bring back the battery (and power your system depending on your power path management).

Looking into an ultra low power MCU can help to significantly extend the battery life of your battery powered system. I think it’s worth it.

Just going to chime in here, we use the HUSB238 as a PD sink with an MPS2672A (for 2S) just fine. It handles all the PD negotiation and is available in a 3x3mm package. You can set the desired PD voltage and current requirements externally via resistors or via host MCU via i2c.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.