Vous êtes sur la page 1sur 7

USB On-The-Go

Go

USB On-The-Go logo


USB On-The-Go,, often abbreviated USB OTG or just OTG,, is a specification that allows USB
devices such as digital audio players or mobile phones to act as a host, allowing other USB
devices like a USB flash drive, digital camera
camera, mouse, or keyboard to be attached to them.
Unlike conventional USB systems, USB OTG systems can drop the hosting role and act as
normal USB devices when attached to another host. This can be used to allow a mobile phone to
act as host for a flash drive and read its contents
contents,, downloading music for instance, but then act as
a flash drive when plugged into a host computer and allow the host to read data from the device.

Contents

1 Architecture
2 Specifications
3 Protocols
4 Device roles
5 Targeted peripheral list
6 Plug
o 6.1 OTG mini plugs
o 6.2 OTG micro plugs
7 Cellphone implementation
8 OTG micro cables
9 Backward compatibility
o 9.1 Charger compatibility
10 See also
11 References
12 External links

Page

Architecture
Standard USB uses a master/slave
/slave architecture; a host acts as the master device for the entire bus,
and a USB device acts as the slave. Devices are designed from the start to act in one role or the
other - computers are generally set up to be hosts, while printers (for instance) are normally
slaves.

When a device is plugged into the USB bus, the master device, or host, sets up communications
with the device and handles service provisioning. The host is responsible for all data transfers
over the bus, with the devices only able to signal that they require attention. To transfer data
between two devices, from a phone to a printer for instance, the host first reads the data from one
device then writes it to the other. This allows the devices to be greatly simplified compared to the
host; a mouse, for instance, contains very little logic and relies on the host to do almost all of the
work.
While the master/slave arrangement works for some devices, there are many devices that might
want to act as a master or a slave depending on who else shares the bus. For instance, a computer
printer is normally a slave device, but when a USB flash drive of images is plugged into the USB
port of the printer with no computer present (or at least turned off) it would be useful for the
printer to take on the role of host, allowing it to communicate with the flash drive directly and
print images from it.
USB On-The-Go introduces the concept that a device can perform both the master and slave
roles, and so subtly changes the terminology. With OTG, a device can be either a host when
acting as the link master, or a peripheral when acting as the link slave. The choice of whether to
be host or peripheral is handled entirely by which end of the cable the device is plugged into.
The device connected to the "A" end of the cable at start-up, known as the "A-device", acts as
the default host, while the "B" end acts as the default peripheral, known as the "B-device".
After initial startup, setup for the bus operates as it does with the normal USB standard, with the
A-device setting up the B-device and managing all communications. However, when that same
A-device is plugged into another USB system, or a dedicated host becomes available, it may
become a slave.
USB On-The-Go does not preclude using a USB hub, but it describes host/peripheral role
swapping only for the case of a one-to-one connection where two OTG devices are directly
connected. Role swapping does not work through a standard hub, as one device will act as the
host and the other as the peripheral until they are disconnected.

Specifications
USB OTG is a part of a supplement[1] to the Universal Serial Bus (USB) 2.0 specification
originally agreed upon in late 2001 and later revised.[2] The latest version of this supplement also
defines behavior for an Embedded Host which has targeted abilities and the same USB StandardA port used by PCs.

Page

SuperSpeed OTG devices, Embedded Hosts and peripherals are supported through the USB OnThe-Go and Embedded Host Supplement[3] to the USB 3.0 specification.

Protocols
The USB On-The-Go and Embedded Host Supplement to the USB 2.0 specification introduced
three new communication protocols, Attach Detection Protocol (ADP), Session Request Protocol
(SRP) and Host Negotiation Protocol (HNP).

ADP allows an OTG device, Embedded host or USB device to determine attachment
status in the absence of power on the USB bus. This enables both insertion based
behavior and the possibility for a device to display attachment status. It does this by
periodically measuring the capacitance on the USB port to determine whether there is
another device attached, a dangling cable or no cable. When a change in capacitance,
large enough to indicate device attachment is detected then an A-device will provide
power to the USB bus and look for device connection. A B-device will generate SRP and
wait for the USB bus to become powered.

SRP allows both communicating devices to control when the link's power session is
active; in standard USB, only the host is capable of doing so. That allows fine control
over the power consumption, which is very important for battery operated devices such as
cameras and mobile phones. The OTG or Embedded host can leave the USB link
unpowered until the peripheral (which can be an OTG or standard USB device) asks it to
start delivering power. OTG and Embedded hosts may not have much power to spare
from their batteries, and leaving the USB link unpowered helps stretch battery life.

HNP allows the two devices to exchange their host/peripheral roles, provided both are
OTG dual-role devices. By using HNP for reversing host/peripheral roles, the USB OTG
device is capable of acquiring control of data-transfer scheduling. Thus, any OTG device
is capable of initiating data-transfer over USB OTG bus. The latest version of the
supplement also introduced the idea of HNP polling whereby the device in host role
periodically polls the peripheral, during an active session, to determine whether it wishes
to become a host.

Page

The main purpose of HNP is to accommodate users who have connected the A and B devices
(see below) in the wrong direction for the task they want to perform. For example, a printer is
connected as the A-device (host), but cannot function as a host for a particular camera, since it
doesn't understand the camera's representation of print jobs. When that camera knows how to
talk to the printer, the printer will use HNP to switch to the slave role, making the camera the
host to the printer so that the user's pictures will get printed without juggling cables. These new
OTG protocols cannot pass through a standard USB hub since they are based on physical
electrical-signaling.
The USB On-The-Go and Embedded Host Supplement to the USB 3.0 specification introduces
an additional protocol, Role Swap Protocol (RSP). This achieves the same purpose as HNP (i.e.
role swapping) by extending standard mechanisms provided by the USB 3.0 specification.
Products following the USB On-The-Go and Embedded Host Supplement to the USB 3.0
specification are also required to follow the USB 2.0 supplement in order to maintain backwards
compatibility. SuperSpeed OTG devices (SS-OTG) are required to support RSP. SuperSpeed

Peripheral Capable OTG devices (SSPC-OTG) are not required to support RSP since they can
only operate at SuperSpeed as a peripheral; they have no SuperSpeed host and so can only role
swap using HNP at USB 2.0 data rates.

Device roles
USB OTG defines two roles of devices: OTG A-device and OTG B-device. This terminology
defines which side supplies power to the link, and which is initially the host. The OTG A-device
is a power supplier, and an OTG B-device is a power consumer. The default link configuration is
that the A-device acts as USB Host and the B-device is a USB peripheral. The host and
peripheral modes may be exchanged later by using HNP. Because every OTG controller supports
both roles, they are often called "Dual-Role" controllers rather than "OTG controllers".
For integrated circuit (IC) designers, an attraction of USB OTG is the ability to get more USB
capabilities with fewer gates. A "traditional" approach includes four controllers:

USB high speed host controller based on EHCI (a register interface)


Full/low speed host controller based on OHCI (another register interface)
USB device controller, supporting both high and full speeds
Fourth controller to switch the OTG root port between host and device controllers.

This means many gates to test and debug. Also, most gadgets must be a host only, or a device
only. OTG hardware design merges all of these controllers into one dual-role controller that is
somewhat more complex than an individual device controller.

Targeted peripheral list

Page

The targeted peripheral list or TPL applies to all targeted hosts which includes both OTG devices
acting in a host role and embedded hosts. The aim of the TPL is for a manufacturer to list
products supported by the targeted host in order to define what it needs to support in terms of
output power, speeds, protocols and device classes. The TPL is intended such that hosts can be
"targeted" at a particular product or application rather than being forced to be general purpose
hosts like a PC.

Plug

Standard, Mini, and Micro USB plugs (not to scale). The white areas in these drawings
represent hollow spaces. As the plugs are shown here, the USB logo (with optional letter A or B)
is on the top of the overmold in all cases. Pin numbering looking into receptacles is mirrored
from plugs, such
uch that pin 1 on plug connects to pin 1 on the receptacle. ((Graphics
Graphics copied from
USB_device#Plugs physical appearance
appearance)

OTG mini plugs


The original USB On-The-Go
Go standard introduced a plug receptacle called mini
mini--AB which was
replaced by the micro-AB in later revisions (Revision 1.4 onwards). It coul
could
d accept either a minimini
A plug or a mini-B plug. Mini-A
A Adapters allowed connection to standard
standard-A
A USB cables,
coming from peripherals. The standard OTG cable had a mini
mini-A
A plug on one side and a mini-B
mini
plug on the other (it could not have two plugs of the sa
same
me type). The device that had a mini-A
mini
plugged in became an OTG A-device,
device, and the one that had mini
mini-B
B plugged became a B-device
B
(see above). The type of plug inserted was detected by the state of the pin ID (the mini-A
mini plug
has the ID pin grounded while th
the ID in the mini-B plug was floating).
). (There were also pure
Mini-A
A plugs, used where a compact host port is needed but OTG was not supported.)

OTG micro plugs

Page

With the introduction of the USB micro plug, a new plug receptacle called Micro-AB
Micro
was also
introduced. It can accept either a Micro
Micro-A plug or a Micro-B plug. Micro-A
A Adapters allow for
connection to Standard-A
A plug type USB cables, as used on standard USB 2.0 Devices. An OTG
[4]
product must have a single Micro
Micro-AB receptacle and no other USB receptacles.[4][5]
The OTG cable has a micro-A
A plug on one side, and a micro
micro-B
B plug on the other (it cannot have
two plugs of the same type). OTG adds a fifth pin to the standard USB connector, called the IDID
pin; the micro-A
A plug has the ID pin grounded, while the ID in the micro-B
B plug is floating. The

device that has a micro-A plugged in becomes an OTG A-device, and the one that has micro-B
plugged becomes a B-device. The type of the plug inserted is detected by the state of the pin ID .
Three additional ID pin states are defined[4] at the nominal resistance values of 124 k, 68 k,
and 36.5 k, with respect to the ground pin. These permit the device to work with a USB
Accessory Charger Adapter which allows the OTG device to be attached to both a charger and
another device simultaneously.[6] These three states are used in the cases of:

A charger and either no device or an A-device that is not asserting VBUS (not providing
power) are attached. The OTG device is allowed to charge and initiate SRP but not
connect.[6]
A charger and an A-device that is asserting VBUS (is providing power) are attached. The
OTG device is allowed to charge and connect but not initiate SRP.[6]
A charger and a B-device are attached. The OTG device is allowed to charge and enter
host mode.[6]

USB 3.0 introduced a backwards compatible, SuperSpeed extension of the Micro-AB receptacle
and Micro-A and Micro-B plugs. These contain all of the pins in the USB 2.0 Micro and use the
ID pin to identify the A-device and B-device roles. Additionally they contain the additional
SuperSpeed pins.

Cellphone implementation
BlackBerry 10.2 implements Host Mode (like in the BlackBerry Z30 handset).[7] Nokia has
implemented USB OTG in many of their Symbian cellphones such as Nokia N8, C6-01, C7,
Oro, E6, E7, X7, 603, 701 and 808 Pureview. Some high end Android phones produced by
Samsung[8] & Sony under Xperia series[9] also have it. Android version 3.1 or newer support
USB On-The-Go, but not all devices.[10][11]

OTG micro cables


When attached to a PC an OTG device requires a cable which has a USB Standard-A plug on
one end and a Micro-B plug on the other end. In order to attach a peripheral to an OTG device,
the peripheral either needs to have a cable ending in a Micro-A plug, which is inserted into the
OTG device's Micro-AB receptacle, or the OTG device itself needs an adapter cable which has a
Micro-A plug on one end and a Standard-A receptacle on the other. The adapter cable enables
any standard USB peripheral to be attached to an OTG device. In order to attach two OTG
devices together requires either a cable with a Micro-B plug at one end and a Micro-A plug at the
other or can be achieved using a combination of the PC cable and adapter cable.

Page

Backward compatibility
USB OTG devices are backward-compatible with USB 2.0 (USB 3.0 for SuperSpeed OTG
devices) and will behave as standard USB hosts or devices when connected to standard (nonOTG) USB devices. The main exception is that OTG hosts are only required to provide enough

power for the products listed on the TPL, which may or may not be enough to connect to a
peripheral which is not listed. A powered USB hub may sidestep the issue, if supported, since
this will then provide its own power according to either the USB 2.0 or USB 3.0 specifications.
Some incompatibilities in both HNP and SRP were introduced between the 1.3 and 2.0 versions
of the On-The-Go supplement which may lead to interoperability issues when using these
protocols.

Charger compatibility
Main articles: USB Battery Charging Specification and USB Power Delivery Specification

Page

Some devices can charge their battery via their USB port. Others can even detect a dedicated
charger and draw more than 500mA, which allows them to charge faster. OTG devices are not
excluded from either of these options.