Why USB PD always starts at 5 V

If 20 V appeared the moment you plugged in, every 5 V-only device would die on first contact. USB PD avoids that by splitting the job in two: a part settled by resistors, and a part where nothing moves until the sink asks.

Last updated: 2026-09-10 USB PDType-CPower sequencingProtocol

Why it does not just put out 20 V

The same Type-C connector fits a device that only ever takes 5 V at 0.5 A and a laptop that takes 20 V at 5 A. Either way round, too.

So at the moment of plugging in, the source does not know what the other end can survive. Put 20 V on the pins and the first person to plug in a 5 V-only device destroys it.

USB PD fixes the order instead. Put out 5 V only (vSafe5V, 4.75–5.5 V). Move to anything else only after the two ends have agreed and the sink has explicitly asked for it. The voltage never rises except in response to a request from the sink.

What the resistors settle before anyone talks

The first stage has no protocol in it at all. Whether something is attached, which way round the cable is, and how much current may be drawn at 5 V are all decided by a resistive divider on CC1 and CC2.

The source pulls CC up through Rp; the sink pulls it down through Rd = 5.1 kΩ. From the source's side, whichever CC got pulled down is the one that is actually connected, and that is how orientation is resolved.

From the sink's side, the CC voltage is itself the advertisement of how many amps it may take at 5 V.

Rp, the CC voltage the sink reads, and the current allowed at 5 V
Source Rp (pull-up to 5 V)Equivalent current sourceCC voltage at the sinkAllowed current
56 kΩ80 µA0.20–0.66 VUSB default (0.5 A / 0.9 A)
22 kΩ180 µA0.66–1.23 V1.5 A
10 kΩ330 µAabove 1.23 V3.0 A

The useful consequence is that you can take up to 5 V at 3 A with no PD silicon at all — one 5.1 kΩ resistor and an ADC on CC. Anything above 5 V, though, requires the protocol.

The other CC belongs to the cable. A cable with an eMarker pulls that line down with Ra (800 Ω – 1.2 kΩ); when the source sees Ra it powers that pin as VCONN and talks to the chip inside the cable. Carrying 5 A requires this eMarker.

The CC pins on USB Type-CThe source pulls CC1 up to 5 volts through Rp and the sink pulls it down through a 5.1 kilohm Rd. The resulting divider voltage on CC advertises how much current is allowed at 5 volts. The other CC is pulled down by the cable eMarker through roughly 1 kilohm of Ra, and the source powers that pin as VCONN once it sees it. The table on the right: 56 kilohm gives 0.20 to 0.66 volts and USB default current, 22 kilohm gives 0.66 to 1.23 volts and 1.5 amps, 10 kilohm gives above 1.23 volts and 3 amps. What resistors settle before any communication Attachment, cable orientation and the current allowed at 5 V are all decided here Source Sink Cable 5V Rp CC1 Rd 5.1k this voltage is the advertisement CC2 / VCONN Ra 1k Rp and the current advertised 56k (80uA) CC 0.20-0.66V USB default 0.5A / 0.9A 22k (180uA) CC 0.66-1.23V 5V 1.5A 10k (330uA) CC above 1.23V 5V 3.0A No PD silicon is needed up to here. Only going above 5V requires messages on CC CC1 and CC2 are separate pins. The source switches whichever one shows Ra over to VCONN to power the chip in the cable (required for 5A)
Figure 1: CC1 is an Rp/Rd divider, CC2 carries the cable's Ra and VCONN. None of this is communication — it is a DC divider.

The order of the negotiation

Once 5 V is up, the rest happens as messages over CC, in a fixed order.

  1. Source_Capabilities: the source lists what it can provide (5 V/3 A, 9 V/3 A, 20 V/5 A, …)
  2. Request: the sink picks one entry and asks for it
  3. Accept: the source agrees. Nothing has moved yet.
  4. PS_RDY: sent once the voltage has actually settled at the new value

Every message is acknowledged with a GoodCRC from the receiver. That only confirms delivery; it is not agreement about the contents.

Each step has a time limit. Waiting for the other end's reply is tSenderResponse, 24–30 ms in PD 2.0 and 27–33 ms in PD 3.0. From sending Accept to starting to move the voltage is tSrcTransition, 25–35 ms. Completing the transition is tPSTransition, 550 ms at most.

The interval that matters is between Accept and PS_RDY — that is when the voltage is moving. The sink has an obligation here too: during that window it has to drop its load to the lower of the old and new contracts. Ask for 20 V and immediately pull full current, and the source cannot raise the rail.

The USB PD negotiation sequenceA graph of VBUS voltage against time. From an unattached 0 volts it rises to 5 volts when attachment is detected, and at that voltage the Source_Capabilities, Request and Accept messages are exchanged. After Accept the source waits 25 to 35 milliseconds, then raises the voltage, reaching 20 volts within at most 550 milliseconds, and sends PS_RDY. What happens, in what order, between 5 V and the voltage you asked for The voltage moves after Accept. The signal that it arrived is PS_RDY 0 5V 20V VBUS attach detected, 5V Source_Capabilities Request (20V) Accept PS_RDY tSrcTransition 25-35ms transition, tPSTransition max 550ms blue: sent by the source green: sent by the sink The time axis is not to scale; drawn to scale it would be almost entirely the 5V section
Figure 2: VBUS and the order of messages on CC. The time axis is not to scale — drawn to scale it would be almost entirely the 5 V section.

Going up versus coming down

Both directions get the same 550 ms, but they are not equally hard.

Going up, the source actively pushes current into VBUS and the sink's input capacitance. How long it takes is a property of the source, which makes it straightforward.

Coming down is the awkward one. A source can supply current but cannot necessarily absorb it. How fast 20 V falls to 5 V depends on the total capacitance on VBUS and on how much current the load happens to be drawing. If the sink has gone into a low-power state and is taking a few milliamps, the rail barely moves.

That is why sources that can step down almost always contain a discharge path — a FET that pulls VBUS down actively. Leave it out and you get a fault that only appears at light load, which is the worst kind to reproduce.

When you test this, test the step-down at light load. A heavy load discharges the rail for you and hides the problem.

USB PD voltage transitions and Hard ResetOn the left, stepping up: after Accept the source waits 25 to 35 milliseconds and then reaches 20 volts within 550 milliseconds. On the right, stepping down, with two curves comparing a heavy load that falls quickly against a light load where the output capacitance is not discharged and the rail does not reach 5 volts. Below, a Hard Reset: VBUS falls to vSafe0V within 650 milliseconds, then after 660 to 1000 milliseconds the source restarts at 5 volts. Going up and coming down are not equally hard Going up (5V to 20V) 5V 20V arrive within 550ms wait 25-35ms Up: the source charges actively, so the time is a property of the source Coming down (20V to 5V) 5V 20V heavy load: falls quickly light load: does not get there Down: the source cannot sink current. The load discharges VBUS, so at light load it may not make the deadline Hard Reset: start again from 5V 5V 20V Hard Reset to vSafe0V within 650ms tSrcRecover 660-1000ms restart at vSafe5V
Figure 3: going up, the source pushes. Coming down, it depends on the load, and at light load the rail does not get there. Bottom: Hard Reset.

When it goes wrong: Hard Reset

When the negotiation breaks, PD does not resume from where it was. It starts over, and that is a Hard Reset.

The source takes VBUS down to vSafe0V (below 0.8 V), which must happen within tSafe0V, 650 ms. Then it waits tSrcRecover (660–1000 ms) before putting vSafe5V back up. Everything restarts from 5 V.

Power is fully off for the better part of a second, so the sink drops out. Chasing "the device reboots occasionally when I use this charger" usually ends up here.

Things that catch you out in design

  • The sink's input capacitor gets charged. Going 5 V to 20 V, the input capacitance takes the charge for ΔV. 100 µF over a 15 V step is 1.5 mC — 2.7 mA averaged over 550 ms, but far more instantaneously if the source ramps quickly.
  • Keep 5 V circuitry from ever seeing 20 V. Bring up the downstream rails only after the requested voltage has arrived. Driving a load switch from the PD controller's PS_RDY-equivalent output is the clean way.
  • A cable without an eMarker stops at 3 A. Carrying 5 A needs the chip in the cable. Designing for 20 V at 5 A and testing with a 3 A cable is a common mix-up.
  • The voltage is not always fixed. PPS (Programmable Power Supply) lets the sink ask in 20 mV steps. Convenient as a charger, but from the load's point of view it is a supply whose voltage moves.
  • There is a version that goes to 48 V. PD 3.1 EPR adds 28 V, 36 V and 48 V, up to 240 W. It differs from SPR (up to 20 V) from the entry handshake onwards, so treat it as a separate thing.

Frequently asked questions

Can I take power from Type-C without a PD controller?
At 5 V, yes. Put 5.1 kΩ from each of CC1 and CC2 to ground and read the CC voltage to find out whether 0.5 A, 1.5 A or 3.0 A is allowed. Anything above 5 V needs messages on CC, so it needs a controller.
I got an Accept but the voltage did not change.
Accept only means the request was agreed to. The source then waits tSrcTransition (25–35 ms) before it starts moving, takes up to 550 ms to settle, and sends PS_RDY at that point. PS_RDY is the signal that the voltage has arrived, not Accept.
It only fails when stepping down.
Suspect a step-down at light load. The source cannot sink current, so the capacitance on VBUS is discharged only through the load, and it may not make tPSTransition (550 ms). Check whether the source has a discharge path, or whether the sink applies a dummy load while stepping down.
I designed for 100 W and only get 60 W.
Look at the cable. 5 A requires an eMarker; without one you are limited to 3 A, and 20 V × 3 A = 60 W — exactly what you are seeing.

Standards and references

  • USB Power Delivery Specification (USB-IF) — Message definitions and the tSenderResponse / tSrcTransition / tPSTransition / tSrcRecover timings
  • USB Type-C Cable and Connector Specification (USB-IF) — Rp / Rd / Ra values, the CC voltage thresholds, VCONN and eMarkers
  • USB Power Delivery Compliance Test Specification (USB-IF) — Measurement conditions for each timing

← All columns