Az USB On-The-Go ( USB útközben ), az USB OTG vagy az OTG egy USB interfész specifikáció , amely lehetővé teszi, hogy egy USB-eszköz, például táblagép vagy okostelefon USB-gazdaként és perifériaként is legyen. Például egy mobiltelefon gazdagépként tud adatokat olvasni a cserélhető adathordozóról, de ha egy gazdaszámítógéphez csatlakozik, perifériaként (USB-háttértárolóként) jeleníti meg magát. Vagy a fényképezőgép lehet gazdagép, amikor fényképeket nyomtat a nyomtatón, és periféria, ha számítógéphez csatlakozik. Általában host módban USB-perifériákat csatlakoztathat szabványos illesztőprogramokkal - USB flash meghajtóval , digitális fényképezőgéppel, egérrel vagy billentyűzettel (több eszköz csatlakoztatható USB-elosztón keresztül).
Az USB OTG két szerepet határoz meg egy eszköz számára: A OTG eszköz és B OTG eszköz. Az A OTG eszköz az USB-busz tápforrása, a B OTG-eszköz pedig a tápegység. Az alapértelmezett konfigurációban az OTG A USB-gazdaként, az OTG B pedig USB-perifériaként működik. A gazdagép mód és a periféria mód közötti váltás később is elvégezhető a Host Negotiation Protocol (HNP ) segítségével .
Az egyes USB-eszközök kezdeti szerepét az határozza meg, hogy a felhasználó melyik dugót dugja be a konnektorba [1] .
Az első OTG-vel rendelkező eszköz 2001 végén jelent meg.
A szabványos USB gazdaeszköz architektúrát használ . A gazdagép a teljes busz vezérlőjeként működik, a (periférikus) eszköz pedig szolga eszközként működik. Az USB szabványos megvalósításában az eszközöknek bizonyos szerepet kell betölteniük, a számítógépek általában gazdagépként, míg (például) a nyomtatók jellemzően perifériaként működnek. USB OTG hiányában a mobiltelefonok jellemzően csak perifériás funkciót valósítanak meg, lehetővé téve az adatok átvitelét telefonról számítógépre és fordítva. Az ilyen (régi) telefonokat, amelyek magukat USB-perifériának nevezik, nem lehet könnyen nyomtatóhoz csatlakoztatni, mivel a nyomtatók perifériaként is működnek. Az USB OTG megoldja ezt a problémát.
Amint egy periféria csatlakozik az USB buszhoz, a mester eszköz (host) kommunikációt létesít az új eszközzel, és elvégzi annak konfigurálását (a gazdaszoftver előkészíti vagy elvégzi a szükséges adatfeldolgozást a fájlkezeléshez vagy más szükséges adatátvitelhez vagy kommunikációs funkciók a készülékkel). Ez lehetővé teszi, hogy a perifériák nagyon egyszerűek legyenek a gazdagéphez képest, például az egér nagyon kevés vezérlőlogikát tartalmaz, és szinte minden bemeneti feldolgozási munkát a gazdagépre hagy. A gazdagép vezérli az összes adat átvitelét az USB buszon, és maguk a perifériás eszközök csak akkor tudnak neki jelezni, ha lekérdezik, hogy a gazdagép figyelmét igénylik. Két eszköz közötti adatátvitelhez, például telefonról nyomtatóra, a gazdagép először beolvassa az adatokat az egyik eszközről, majd elküldi a másikra.[ tiszta ]
Az USB OTG-képes eszköz a konfigurációtól függően gazdagépként és eszközként is működhet. OTG használatakor az eszköz lehet gazdagép, ha masterként működik, vagy periféria, ha slaveként működik. A gazdagép és a periféria szerepek közötti választás teljes mértékben attól függ, hogy a kábel melyik végéhez csatlakozik az eszköz. Az „A” vagy „ A-eszköz ” OTG-kábel csatlakozójához csatlakoztatott eszköz alapértelmezett gazdagépként működik, míg a „B” csatlakozóhoz csatlakoztatott eszköz alapértelmezett perifériaként vagy „ B-eszközként ” működik.
A kezdeti beállítás után a busz ugyanúgy működik, mint egy hagyományos USB, az A eszköz ( A-eszköz ) konfigurálja a B eszközt ( B-eszköz ), és kezeli az összes kommunikációt. Ha azonban ugyanazt az A eszközt egy másik USB-eszközrendszerhez vagy közvetlenül egy USB-gazdagéphez csatlakoztatják, akkor szolgavá válhat.
Az USB OTG az USB 2.0 specifikáció mellékletének része , amelyet eredetileg 2001 végén fogadtak el, majd felülvizsgáltak. Az alkalmazás legújabb verziója egy olyan beágyazott gazdagép viselkedését is meghatározza, amely célképességekkel és ugyanazzal a szabványos USB A porttal rendelkezik, mint a személyi számítógépekben [2] .
Az USB OTG és az Embedded Host Supplement az USB 3.0 specifikációhoz a SuperSpeed OTG eszközök , beágyazott gazdagépek és perifériák támogatását írja le [3] .