What is the power output of a USB port?

As the title says, what's the power output of a USB port?

Is it a standard value, or it may change depending on manufacturer/model, and so on?

If that value is not standard, how can one determine it?


Solution 1:

As stated in Wikipedia

The USB 1.x and 2.0 specifications provide a 5 V supply on a single wire to power connected USB devices.

A unit load is defined as 100 mA in USB 2.0, and 150 mA in USB 3.0. A device may draw a maximum of 5 unit loads (500 mA) from a port in USB 2.0; 6 (900 mA) in USB 3.0.

As power is equal to current times voltage, all you have to do is multiply 5V with the current the device is drawing from the port.

Note there also exists a convention for charging devices. These kinds of ports allow for currents up to 1.5 A (also using 5V). However, the USB port is rated to withstand current up to 5 A--so some manufacturers may go out of spec and offer a higher maximum current.

Solution 2:

There are USB power adapters on the market explicitly stating "10W adapter". As USB is 5V the 10W result in 2A = 2000 mA. The net effect is that devices connected to this adapter charges its battery 4 times faster than with a "normal" 500 mA USB port.

Solution 3:

Power that must be delivered by a USB port is defined in Section 7.2.1 of USB 2.0 Specifications.

To start, the power delivery is defined in "units of load". For USB 2.0 one unit is 100 mA, and for USB 3.x one unit is 150 mA.

USB standard defines two classes of USB ports, "high-power ports", and "low-power ports"

The specs says, page 171:

"Systems that obtain operating power externally, either AC or DC, must supply at least five unit loads to each port. Such ports are called high-power ports."

So, if you have a desktop PC or laptop connected to AC outlet, each USB port MUST supply 500 or 900 mA of current. Note the language, "at least". So it could be more, unless an OPTIONAL overcurrent functionality is supported in hardware. For example, a common desktop PC in sleep mode derives the VBUS power from +5VSB rail of its PSU, which at least is capable to deliver 2 A of current. Or more, which is specified in particular PSU.

For example, if a Raspberry Pi3 gadget gets its power from AC-DC adapter from a wall AC power, it must supply at least 500 mA per each (of 4) ports. Unfortunately, it fails to do so, and therefore is not USB-compliant.

However, if a USB host is a skinny battery-powered device (such as MP3 player or smartphone), this can be declared by manufacturer as "low-power host", and the USB port can be limited by design to deliver 100/150 mA only. This limit is very inconvenient to customers, and is rarely enforced.

If a USB system (host or hub) is declared as normal host, the ports are tested to USB-IF test specifications using specialized USB port testers. The tester either applies a load equal to 5 units and checks if the voltage drop doesn't exceed specifications (5% or 10% margin), or applies a step-wise increasing load and determines at which point the (optional) overcurrent circuit trips over.

Under household conditions the port capability can be checked by applying a big 10 Ohm (or 5.5 Ohm if USB 3.x) resistor to a stripped-off cable. Or using a dedicated variable load found on e-Bay.

The requirements for power delivery from a normal USB port should not be confused with requirements for USB DEVICES: USB devices should NOT take more than one unit of load until host completes the device enumeration. USB hosts must keep track of consumed power declared by attached devices. During enumeration a host reads mandatory power requirements of the device within its descriptor, and if the host believes that its power capabilities are maxed out, it can refuse the connection.