Chapter 16
392
No device should draw more than 100 mA (USB 2.0) or 150 mA (SuperSpeed)
until the host has configured the device for more current. Devices must limit
their power consumption further when in the Suspend state. In some cases, bat-
tery charging can exceed these limits as described later in this chapter.
Of course, devices such as digital cameras that need to function when not
attached to a host will need self power. Self power can use batteries or power
from a wall socket. To save battery power, a device can use bus power when
connected to the bus and self power otherwise. Because a device in the Suspend
state should draw very little current from the bus, some devices need their own
supplies to enable operating when the bus is suspended.
2QYGT0GGFU
USB 2.0 defines a low-power device as a bus-powered device that draws up to
100 mA from the bus and a high-power device as a device that draws up to 500
mA from the bus. A self-powered device can draw up to 100 mA from the bus
and as much power as is available from the device’s supply.
A high-power device must be able to enumerate at low power. On power-up, a
USB 2.0 device can draw up to 100 mA from the bus until the host has config-
ured the device. After retrieving a configuration descriptor, the host examines
the amount of current requested in bMaxPower, and if the current is available,
the host sends a Set Configuration request to select the configuration. The
device can then draw up to the bMaxPower value from the bus. In reality, hosts
and hubs are likely to allocate either 100 mA or 500 mA to a device rather than
a precise amount requested in bMaxPower.
A self-powered USB 2.0 device may also draw up to 100 mA from the bus any
time the device isn’t in the Suspend state. This capability enables the device’s
USB interface to function when the device’s power supply is off and the host
detects and enumerates the device. Otherwise, if a device’s pull-up is bus-pow-
ered and the rest of the interface is self-powered, the host will detect the device
but won’t be able to communicate with it.
The limits are absolute maximums, not averages. Also remember that the bus’s
power-supply voltage can be as high as 5.25V, and a higher voltage can result in
greater current consumption.
A device must never provide upstream power. Even the pull-up must remain
unpowered until V
BUS is present. A device that provides upstream power can
cause problems that include a PC that doesn’t boot or doesn’t resume from the
Suspend state, a hub that doesn’t enumerate its downstream devices, and failure