USB OTG


 

Il protocollo USB On-The-Go (OTG) permette a due dispositivi USB di comunicare tra di loro senza l'ausilio di un PC (personal computer). L' USB OTG mantiene il modello standard USB di  HOST e di periferica con cui un singolo HOST comunica con le periferiche USB. L'estensione OTG introduce il  dispositivo dual-role, capace di funzionare sia come HOST sia come periferica. Parte della  magia del OTG e' che un host o una periferica possono cambiare ruolo se e' necessario.
Prima dello standard OTG , il concetto di host integrato era ben definito nel mondo USB. Invece di duplicare interamente i controllers UHCI/OHCI USB e i driver costruiti nei PC, molti chip che implementano la funzione di host forniscono limitate capacita di host. Ciò rende loro meglio adatti  nell'ambito dell'"embedded" che al PC con le sue risorse di huge e infinita capacità per driver e software applicativo.
Un dispositivo  OTG può o non può essere capace di funzionare come un host,  sebbene e' possibile che molti dispositivi OTG saranno dual-role.

Le periferiche USB

Per aiutare la comprensione di cosa un OTG aggiunge ad un sistema USB, nella figura 1 e' illustrato il circuito di base di una periferica USB in cui l'estensione OTG e' implementata. Questo tipo di periferiche lavorano sia a bassa che ad alta  velocita', e sono comunemente conosciute come dispositivi "USB 1.1" , sebbene la specifica USB 2.0 include la  specifica USB 1.1 introducendo una terza ad più alta velocità.

Periferica USB e circuiti ad essa associati.

Figura 1. Periferica USB e circuiti ad essa associati.

Il controllore di figura 1 potrebbe essere un microprocessore più una interfaccia USB SIE (Serial Interface Engine), un chip µP/USB, o un  ASIC connesso ad un USB transceiver. E' richiesto un regolatore a 3.3V, alimentato dal bus (VBUS), per alimentare la periferica  e fornire la giusta tensione al resistore di 1500 ohm connesso al terminali  D+ o al terminale  D- . Questi resistori di  pull-up sono connessi in modo da  indicare all'  HOST  che un dispositivo e' connesso e la velocità di funzionamento: quando il transistore di pull-up e' connesso alla linea D+ si indica la piena velocità mentre quando si connette al terminale D- si indica bassa velocita'. Dall'altro parte della connessine USB, il dispositivo HOST ( o HUB) ha un resistore di pull-down connesso su D+ e su D- per poter riconoscere i resistori di pull-up presenti nella periferica. Infine, un circuito di protezione ESD e' individuabile tra i terminali  D+, D- e VBUS essendo USB  progettato per essere un dispositivo esterno e suscettibile a problemi di carica elettrostatiche.