123 Main Street, New York, NY 10001

← Back to: Battery Charging / Gauging / Protection / BMS

1. Intent & System Context — Why we need “USB-C Sink + Charging Coordination”

Modern battery packs and BMS-based systems no longer take a fixed 5 V input. They take a programmable DC that comes from a USB-C / PD / PPS source, and this DC must be matched to the dynamic demand of the downstream charger or BMS. The USB-C side and the charger/BMS side are therefore two different worlds.

On the USB-C side, power is negotiated once (PDO list, PPS range, source capability). On the charger/BMS side, power is changing all the time: CC → CV → derate by JEITA → system-first. If the sink only “takes power” but does not coordinate, you get classic field issues: “plugged but not fast”, “drops when CV starts”, “long cable causes under-voltage”.

This page focuses on the sink role only. We assume the device is the one that wants power, that it must track or even drive PPS, that it may expose OTG/reverse-boost, and that it needs cable-drop-aware behavior. It is not the 2:1 / 4:1 charge-pump fast-charge path, and it is not the multi-cell charger controller itself; it is the bridge between the USB-C side and those downstream charging blocks.

In practice, engineers need a way to tell purchasing: “We are not buying a generic Type-C attach chip. We are buying a USB-C sink that can do PPS following, PDO power-share, cable drop compensation, and OTG/reverse boost, because our charger/BMS is not static.”

USB-C is only the entry

It provides negotiated power, not the final charging profile.

PD/PPS is the adjustable part

Charger/BMS must be able to tell what voltage/current it needs now.

Coordination decides matching

Without it, PPS may be valid but charging still looks “broken”.

USB-C sink coordinating with system VSYS and battery charger/BMS Diagram showing PD/PPS source on the left, a coordination layer in the center, and two outputs: system VSYS and a battery charger/BMS branch. USB-C PD Source (PDO / PPS) Coordination Layer I²C / SMBus / policy PPS following · PDO share Cable drop aware OTG / reverse boost System VSYS Priority load Battery Charger / BMS 2S–6S, JEITA, gauge USB-C sink in front, BMS/charger behind → coordination matches dynamic demand.
Figure 1. USB-C sink front-end coordinating with system VSYS and a battery charger/BMS branch (PPS following, power-share, cable-drop aware).

2. USB-C / PD / PPS Front-End — Where the capability really comes from

A USB-C powered BMS or charger can only ask for what the PD source advertises. The source publishes a list of fixed PDOs (for example 5 V, 9 V, 15 V, 20 V) and sometimes a PPS range (for example 3.3–11 V, 50 mV step). The sink must match its downstream charger demand to one of these advertised capabilities.

The CC line is responsible for attach/detach, orientation, and initial current capability advertisement. Only after that can the PD capability discovery run. If discovery shows only 5 V or a BC1.2 fallback, the system must degrade to limited-power charging.

PPS is required when your downstream charger or BMS does dynamic input tracking (CC → CV → derate). PPS following, however, is not infinite: it has a step size, a timing limit, and it can never exceed the power of the adapter itself. This is why “just add USB-C” is not enough.

2.1 CC line

Attach/detach, orientation, initial current. No PPS yet.

2.2 PD capability discovery

Source gives PDO list + PPS range. Sink must choose.

2.3 PPS following

Tracks charger’s changing demand, but within step/time/power limits.

2.4 Fallback

BC1.2 or 5 V only → limited-charge mode.

Mapping PD/PPS capability to charger operating point PD source advertises several PDOs and a PPS range. The sink selects one that fits the downstream charger/BMS requirement. PD Source capability list PDO: 5 V, 9 V, 15 V, 20 V PPS: 3.3–11 V @ 50 mV step; max current 3 A Selected PDO / PPS for charger Target: 12 V @ 2.5 A → feeds 2S–6S charger or system VSYS Policy / constraints: step, time, adapter power If only 5 V / BC1.2 is available, degrade to limited-power charging and inform the charger/BMS. For coordinated charging, pick PD/USB-C controllers that expose I²C control: TI TPS25750, ST STUSB4500, Renesas RAA/ISL USB-C, onsemi FUSB3xx, Microchip USB-C/PD controllers.
Figure 2. USB-C / PD / PPS front-end: the source advertises capabilities, the sink selects the one that matches the downstream battery charger or BMS.

3. Coordination Layer with Charger/BMS — who owns the decision

The coordination layer is the bridge between the USB-C / PD / PPS front-end and the dynamic charger/BMS backend. The front-end negotiates power once, but the charger/BMS keeps changing its demand (Precharge → CC → CV → Recharge → JEITA derate → system priority). Without a coordination layer, a sudden current request from the charger can trip the PD source, cause OCP, or even drop the USB-C link.

This layer collects inputs from the charger status machine, from BMS temperature/NTC/JEITA windows, and from the current system load, then translates “I need Vin / Vin_min / Iin_max” into a PD/PPS request that the USB-C sink can actually pull from the source. It also decides when to reduce power, for example when the battery pack is in protection, when a 2S–6S charger suddenly asks for 15 V, or when system load must stay alive.

Inputs to the layer

Charger state (Precharge, CC, CV), BMS thermal/JEITA, system load.

Translate to PD/PPS

Map Vin / Vin_min / Iin_max into actual PDO / PPS request.

Protect the USB-C link

Smooth sudden current ramps, avoid front-end OCP and detach.

Work with pack protection

If pack FETs are off, reduce or stop PD draw.

Two typical coordination styles

Charger-as-leader: the charger/BMS tells the USB-C front-end “I need 15 V @ 2.5 A now”. The PD/PPS engine then tries to get that from the source.

PD-as-leader: the USB-C front-end exposes “I can give 36 W” and the downstream charger adapts its charge current to stay under that budget.

State-machine level coordination between charger/BMS and a USB-C PD/PPS sink Left side shows a charger/BMS state machine, right side shows a PD/PPS adjustment block. Two arrows in the middle represent “request” and “capability”. Charger / BMS state Precharge → CC → CV → Recharge JEITA / NTC window System load change Pack protection / FET state 2S–6S needs 12–15 V Need VIN / IIN_max Temp / JEITA derate PD / PPS adjustment Request 15 V @ 2.5 A or limit to 9 V @ 3 A Smooth step, avoid OCP If pack protected → power down Report to host (I²C / SMBus) Coordination keeps USB-C alive while serving a changing charger/BMS demand.
Figure 3. Coordination layer converts charger/BMS states and JEITA limits into PD/PPS requests so the USB-C sink does not trip or detach.

4. PDO Power-Share & System Priority — who eats first when power is tight

Many real USB-C powered systems only get 30–45 W from the adapter, but they must run the system (VSYS), charge the battery, and sometimes support OTG/reverse boost. In a BMS-driven architecture, system must stay alive first. Charging is what remains. OTG is optional and must be limited. This chapter formalizes that policy so purchasing knows to pick a PD controller that can expose power budget over I²C, not just a “can charge” USB-C chip.

  • System VSYS is always first. Battery charging is residual.
  • If a sudden high load is attached, cut or reduce charging current first.
  • OTG/reverse boost must be capped or temporarily disabled when total power is not enough.
  • PD front-end must support “I can give X W now” reporting to the charger.

Typical scenario

Adapter = 45 W. System is currently consuming 20 W. The charger wants 25 W for faster charge. OTG wants 5 W. With system-first policy, the PD layer gives 20 W to system, 20 W to battery, and only up to 5 W to OTG if there is room. If system load jumps to 28 W (e.g. user plugs display), charger is throttled down immediately.

PDO power sharing with system-first policy 45 W from PD source is split into system 20 W, battery charging 20 W, and OTG 5 W. System is always first, charging is residual, OTG is optional. PD Source 45 W total Power-share policy 1) System-first 2) Then battery 3) OTG if room System VSYS 20 W — always first Battery charge 20 W — residual OTG / reverse 5 W — optional If system load jumps, charger current is reduced first; OTG can be limited or disabled.
Figure 4. PDO power sharing from a 45 W USB-C/PD source: system-first, then battery charging, then OTG if power is left.

5. Cable Drop Compensation — not every USB-C cable is the same length

Even if the USB-C / PD negotiation is correct (for example, 15.0 V requested), the charger/BMS input may only see 13.9–14.2 V because of line/cable/connector loss. The charger then says “I can’t enter fast-charge / multi-cell mode” and the engineer thinks “PD didn’t give me enough”. In reality the PD did its job — the cable dropped the voltage.

This section defines how to push VBUS up to compensate IR/cable drop, how to link it to PPS (because PPS is not fixed), and why the charger/BMS side must have a tolerance window to avoid oscillation. For automotive/industrial harnesses, where the cable is longer and hotter, this feature is even more important.

Fixed compensation

Add +0.2 / +0.3 / +0.5 V for short and known cables.

Current-based estimation

ΔV = I × R_line, scales with PPS current.

Table-driven / harness-aware

PD IC stores cable/connector profiles; automotive harness → larger ΔV.

Charger tolerance

Downstream must accept a window to avoid “step-chasing”.

For purchasing, specify a PD/USB-C controller that supports line-drop / IR compensation or exposes registers so the host/charger can push a compensation value. This applies across TI, ST, NXP, Renesas, onsemi, Microchip, and in automotive harnesses can be paired with Melexis sensing/diagnostic parts.

Cable drop compensation for USB-C PPS VBUS is set to 15.0 V, the cable drops 1.1 V, the charger wants 14.0 V input, so the PD front-end adds 1.1 V compensation. VBUS set 15.0 V (PPS) Cable / harness drop ΔV ≈ 1.1 V Target @ charger 14.0 V required +1.1 V compensation (linked to PPS) PPS is dynamic → compensation must follow current/voltage steps. Charger/BMS input detection must allow ±2–3% to avoid oscillation. Automotive/industrial harness → prefer table-driven compensation.
Figure 5. Cable drop compensation that raises VBUS so the downstream charger still receives its target input voltage.

6. OTG / Reverse Boost Back to VBUS — obey BMS even in reverse

OTG or reverse-boost means the system has energy in the battery/VSYS and wants to push power back to VBUS to feed a phone, a sensor node, or another board. This does not mean we can bypass pack protection. Reverse direction still has to go through the pack FET / protection / gate-driver path, so that all BMS rules (OVP, UVP, OTP) stay valid.

Reverse mode must also be exclusive: when OTG is active the USB-C port should not act as a sink at the same time, or connector/policy will conflict. And reverse power must still respect the system-first / PDO power-share policy from the previous chapter — OTG is residual, not primary.

Reverse path

Battery/VSYS → protection path → boost → VBUS.

No simultaneous sink

OTG active ⇒ disable sink role to avoid conflicts.

Power-share applies

System first, charge second, OTG only if budget allows.

Diagnostics

Check detach, temp, pack status; Melexis-type sensors for automotive.

Verification points

• Start OTG → unplug USB-C → device must detect detach and stop boost.

• Start OTG in hot conditions → system must derate output or stop.

• If pack/BMS is in protect state → block OTG or limit to safe current.

OTG / reverse boost through protected pack path Battery/VSYS goes through the pack FET/protection, then through a boost block, then to VBUS. A shield icon indicates protection is enforced. A note says “no simultaneous sink”. Battery / VSYS source for OTG through pack FET / protection path Boost / OTG 5 V / 9 V out VBUS (OTG) to phone / accessory OTG is residual: obey system-first / PDO power-share budget. No simultaneous sink on the same USB-C port during reverse boost. Automotive / industrial: add temperature & detach diagnostics.
Figure 6. OTG / reverse boost path that routes through the protected pack FETs instead of bypassing BMS protection; OTG role is exclusive and budget-limited.

7. Integration with Multi-Cell / System Power-Path — connect to the other BMS pages

A USB-C PD / PPS front-end is only the entry. Behind it you may have a 2S–6S charger that wants 12–20 V, or a single-cell buck charger that is happy with 5–9 V, and very often you also have a VBAT↔VSYS power-path that must keep the system alive even when the battery is empty. This chapter defines how the USB-C sink + coordination layer chooses PDO/PPS and forwards power to downstream blocks without breaking the “system-first” rule from your BMS home page.

Multi-cell (2S–6S)

Pick 12–20 V PDO or open PPS to match charger input.

Single-cell buck charger

5–9 V fixed PDO is enough, PPS changes less often.

VBAT↔VSYS power-path

System-first, battery is residual, follow PD budget.

Fixed upstream / OBC

If DC-DC already fixed, this layer downgrades to “fixed in + charge limit”.

USB-C PD/PPS feeding both system VSYS and 2S–6S charger through a power-path Top: USB-C PD/PPS. Middle: power-path / priority switch. Bottom: system VSYS (priority) and multi-cell charger (PPS-driven). USB-C PD / PPS negotiates 5–20 V, exposes power budget Power-path / priority switch System-first; battery / multi-cell is residual Can downgrade to fixed-in + charge limit if upstream is fixed System VSYS (priority) must stay on, even when PD is weak 2S–6S charger (PPS-driven) needs 12–20 V → pick PDO / open PPS If upstream DC-DC / OBC is fixed → this layer must not over-adjust PD → run in fixed-in + charge-limit mode. Link back to BMS home: system-first, report available PD power to charger/BMS.
Figure 7. Power-path integration where a USB-C PD/PPS front-end feeds both the system rail and a 2S–6S battery charger, with system-first policy.

8. Faults, Fallbacks & Safety Windows — typical field failures

USB-C negotiation can succeed but the real device still cannot fast charge. This is usually not because the protocol is wrong, but because the coordination with the charger/BMS wasn’t finished: PD fell back to 5 V, PPS couldn’t track CV, cable drop was worse than expected, OTG had no load, or a JEITA window forced derating. This section groups the most common faults and the correct actions an engineer should implement.

Negotiation fail → fallback 5 V

Charger must drop to low-power mode; host should be notified.

PPS can’t follow CV

Step down to closest fixed PDO or slow down charger ramp.

Cable drop still too large

Warn + reduce current + request better cable.

OTG no load

Timeout and exit OTG to avoid wasting energy.

NTC / JEITA not OK

Notify PD front-end to derate; log thermal limit.

I²C / SMBus address clash

Plan addresses for PD + charger + BMS; add retry.

Troubleshooting matrix for USB-C sink and charger coordination faults Left column lists faults; right column shows actions: fallback 5 V, reduce current, notify host/BMS, timeout OTG, plan I²C addresses. Faults (real device) Actions / Safety windows Negotiation fail / PD not available / BC1.2 only Fallback to 5 V; charger enters low-power; notify host/log. PPS cannot follow charger CV / too fast ramp Reduce current; slow charger; select closest fixed PDO. Cable too long / bad quality → still low at charger Add warning; derate power; ask for better cable / shorter harness. OTG / reverse boost but no load detected Timeout and exit OTG; keep pack protection enforced. NTC / JEITA window not OK → thermal-limited Notify PD front-end to reduce power; log event; maybe stop charge. I²C / SMBus address conflict (PD + charger + BMS) Plan addresses; separate host control vs. telemetry; add retry / backoff.
Figure 8. Troubleshooting matrix for USB-C sink and battery-charger coordination faults — each fault has a defined fallback and safety window.

9. Procurement / Small-Batch Notes — for sourcing people

This page is not about USB-C in general, it is about a USB-C sink that must coordinate with a separate battery charger/BMS. Not every PD controller can do that. For small-batch, automotive, or cross-brand sourcing, tell buyers exactly what to look for so they don’t send back “just a C port chip” that has no I²C-control or no PPS.

9.1 Pick PD controllers with I²C-controllable PDO/PPS

Many USB-C/PD sink chips only let you pick from a fixed set of PDOs. In this BMS flow, the charger/BMS tells the front-end what Vin / Iin_max it needs, so you must source parts that expose PDO/PPS selection over I²C / SMBus / policy registers. That’s the key difference.

9.2 Order extra for engineering validation

Chips that combine tight packages + full PD3.0 + PPS + cable compensations are typically harder to rework. For trial runs, buy +2~3 pcs beyond the BOM so R&D can validate PPS following, cable-drop behavior, and reverse/OTG policies on real harness length.

9.3 Lock parts earlier for automotive / wide-temp

If the design is going into automotive / industrial harness where the cable is longer, warmer, and with more connectors, line-drop compensation and thermal reporting become mandatory. These PD controllers tend to have longer lead times → lock them earlier.

Tell purchasing to check: AEC-style qualification (where available), PPS support, I²C visibility, and whether the vendor offers matching charger/BMS front-ends.

9.4 Keep room for brand swaps (TI ↔ ST ↔ NXP ↔ Renesas ↔ onsemi ↔ Microchip ↔ Melexis)

Your site is on a cross-brand replacement route. That means on every PD sink + charger pair you should document at least one alternative from the seven core brands: TI, ST, NXP, Renesas, onsemi, Microchip, Melexis.

For buyers, write: “PD sink must support PPS and expose I²C registers; if TI part is not available, look for ST / Renesas / onsemi PD with the same I²C exposure.” This keeps the coordination logic in firmware the same.

Submit BOM (48h): cross-brand PD front-ends + charger pair

Submit BOM (48h)

10. Frequently Asked Questions

Only questions that this page can answer — we stay in scope: USB-C sink role, PPS following, charger/BMS coordination, cable drop, OTG through protection, and procurement issues.

Does every USB-C controller support PPS following?

No. Some only expose fixed PDOs. For BMS coordination you need I²C-controllable PDO/PPS so the charger can request new voltage/current.

What happens if PD negotiation fails and we only get 5 V?

The downstream charger must enter low-power mode. Log the fallback and notify the host; do not try to fast-charge on 5 V.

How do we prevent cable drop from blocking fast charge?

Use line-drop / IR compensation linked to PPS current, and keep a ±2–3% window on the charger input detection to avoid oscillation.

Can OTG / reverse boost run while the port is in sink mode?

No. Keep roles exclusive. OTG must go through the protected pack path and must not collide with a simultaneous sink.

What if the multi-cell charger suddenly needs 15 V?

The coordination layer must request a higher PDO/PPS from the source. If the adapter can’t supply it, throttle the charger, keep system alive.

Why is “system-first” always enforced?

Because USB-C power can be limited (30–45 W). If the system turns off, the whole BMS path is meaningless. So VSYS first, battery charge is residual.

Can we use a non-PD USB-C source (5 V only)?

Yes, but the charger must downgrade to 5 V charging. Document this for purchasing so they know not all C ports are equal.

How to handle NTC / JEITA temperature limits?

Let BMS tell the PD front-end to reduce power. No derate on the back-end alone — front-end must know to avoid link drops.

What to tell purchasing about brand flexibility?

Ask for PD sinks with I²C-exposed PPS across TI, ST, NXP, Renesas, onsemi, Microchip, Melexis. This keeps your firmware strategy.

Why does my charger report “input too low” even after PPS?

Probably cable drop is still larger than the compensation. Add more margin or switch to a better/shorter cable.

Can one I²C bus serve PD + charger + BMS?

Yes, but plan addresses first. Avoid clashes and add retry/backoff logic.

Where do I submit BOM for a 48h cross-brand match?

Use the form: Submit BOM (48h). We can propose PD sink + charger pairs across the 7 brands.