USB On-The-Go ( USB on the go ), USB OTG sau OTG este o specificație de interfață USB care permite unui dispozitiv USB, cum ar fi o tabletă sau un smartphone, să fie atât o gazdă USB, cât și un periferic. De exemplu, un telefon mobil poate citi date de pe medii amovibile ca gazdă, dar atunci când este conectat la un computer gazdă, se prezintă ca un periferic (dispozitiv de stocare în masă USB). Sau camera poate fi o gazdă atunci când imprimă fotografii pe o imprimantă și un periferic atunci când este conectată la un computer. De obicei, în modul gazdă, puteți conecta periferice USB cu drivere standard - unitate flash USB , cameră digitală, mouse sau tastatură (mai multe dispozitive pot fi conectate printr-un hub USB).
USB OTG definește două roluri pentru un dispozitiv: dispozitivul OTG A și dispozitivul OTG B. Dispozitivul OTG A este sursa de alimentare pentru magistrala USB și dispozitivul OTG B este absorbantul de alimentare. În configurația implicită, OTG A acționează ca o gazdă USB și OTG B acționează ca un periferic USB. Comutarea între modul gazdă și modul periferic se poate face ulterior utilizând protocolul de negociere a gazdei (HNP ) .
Rolul inițial al fiecărui dispozitiv USB este determinat de ce fișă îl introduce utilizatorul în priza sa [1] .
Primul dispozitiv cu OTG a fost lansat la sfârșitul anului 2001.
USB standard utilizează o arhitectură de dispozitiv gazdă . Gazda acționează ca un controler pentru întreaga magistrală, iar dispozitivul (periferic) acționează ca un dispozitiv slave. În implementarea standard a USB, dispozitivele trebuie să îndeplinească un anumit rol, computerele acționând de obicei ca gazde, în timp ce (de exemplu) imprimantele acționând de obicei ca periferice. În absența USB OTG, telefoanele mobile implementează de obicei o funcție numai pentru periferice, permițând transferul datelor de la telefon la computer și invers. Astfel de telefoane (vechi) care se identifică ca periferice USB nu pot fi conectate cu ușurință la imprimante, deoarece imprimantele acționează și ca periferice. USB OTG rezolvă această problemă.
De îndată ce un dispozitiv periferic este conectat la magistrala USB, dispozitivul master (gazdă) stabilește comunicarea cu noul dispozitiv și efectuează configurarea acestuia (software-ul gazdă pregătește sau realizează prelucrarea datelor necesare pentru gestionarea fișierelor sau alt tip de transfer de date necesar sau funcții de comunicare cu dispozitivul). Acest lucru permite perifericelor să fie foarte simple în comparație cu gazda, de exemplu, mouse-ul conține foarte puțină logică de control și lasă aproape toată munca de procesare a intrării în seama gazdei. Gazda controlează transferul tuturor datelor de pe magistrala USB, iar dispozitivele periferice în sine îi pot semnala numai atunci când sunt interogate că necesită atenția gazdei. Pentru a transfera date între două dispozitive, cum ar fi de la un telefon la o imprimantă, gazda citește mai întâi datele de pe un dispozitiv și apoi le trimite pe celălalt.[ clarifica ]
Un dispozitiv compatibil USB OTG poate acționa atât ca gazdă, cât și ca dispozitiv, în funcție de configurație. Când se utilizează OTG, dispozitivul poate fi fie o gazdă atunci când acționează ca master, fie un periferic când acționează ca slave. Alegerea dintre rolurile gazdă și cele periferice depinde în totalitate de capătul cablului la care este conectat dispozitivul. Un dispozitiv conectat la conectorul cablului OTG „A” sau „ A-device ” acționează ca gazdă implicită, în timp ce unul conectat la conectorul „B” acționează ca periferic implicit sau „ B-device ”.
După configurarea inițială, magistrala funcționează la fel ca un USB obișnuit, dispozitivul A ( A-device ) configurează dispozitivul B ( B-device ) și gestionează toate comunicațiile. Cu toate acestea, atunci când același dispozitiv A este conectat la un alt sistem de dispozitiv USB sau direct la o gazdă USB, acesta poate deveni slave.
USB OTG face parte din anexa la specificația USB 2.0 , convenită inițial la sfârșitul anului 2001 și revizuită ulterior. Cea mai recentă versiune a acestei aplicații definește, de asemenea, comportamentul pentru o gazdă încorporată care are capabilități țintă și același port USB A standard utilizat în computerele personale [2] .
USB OTG și suplimentul pentru gazdă încorporată la specificația USB 3.0 descrie suportul pentru dispozitive SuperSpeed OTG , gazde încorporate și periferice [3] .