The On-The-Go extension to the USB protocol was introduced so that a system can operate as either a USB host or as a USB peripheral/device using a single connector. To facilitate this, the OTG extension added three main features:
Embedded applications with both USB host capability and USB device capability usually require dual mode operation. This means that when a USB host device is inserted, the host stack should start, and for the insertion of a USB peripheral, the USB device stack starts. This is done simply by recognition of the ID pin on the USB OTG connector, and requires no additional USB OTG software. However, if two devices need to negotiate which will operate as host and which as device, then the OTG software is needed.
Our OTG has full support for SRP (Service Request Protocol) and HNP (Host Negotiation Protocol).