USB On-The-Go- USB On-The-Go

USB On-The-Go-logotypen
USB On-The-Go-adapter för USB-B Micro-laddningsportar för smartphones och surfplattor utan dedikerad USB-A-port

USB On-The-Go ( USB OTG eller bara OTG ) är en specifikation som först användes i slutet av 2001 som gör att USB-enheter , till exempel surfplattor eller smartphones , kan fungera som värd, så att andra USB- enheter, till exempel USB-flashenheter , digitala kameror , mus eller tangentbord , som ska fästas på dem. Användning av USB OTG gör att dessa enheter kan växla fram och tillbaka mellan värdens och enhetens roller. En mobiltelefon kan läsa från flyttbara medier som värdenhet, men presentera sig som en USB -masslagringsenhet när den är ansluten till en värddator.

USB OTG introducerar konceptet med en enhet som utför både master- och slavroller - när två USB -enheter är anslutna och en av dem är en USB OTG -enhet upprättar de en kommunikationslänk . Enheten som styr länken kallas master eller värd, medan den andra kallas slaven eller perifer.

USB OTG definierar två roller för enheter: OTG A-enhet och OTG B-enhet, som anger vilken sida som levererar ström till länken, och vilken initialt är värd. OTG A-enheten är en kraftleverantör, och en OTG B-enhet är en strömkonsument. I standardlänkskonfigurationen fungerar A-enheten som en USB-värd med B-enheten som en USB-kringutrustning. Värd- och kringlägena kan utbytas senare med hjälp av Host Negotiation Protocol (HNP).

Varje enhets initiala roll definierades av vilken minikontakt en användare sätter i sin behållare.

Översikt

En USB OTG -installation som omfattar ett antal enheter

Standard USB använder en master/slavarkitektur ; en värd fungerar som huvudenhet för hela bussen, och en USB -enhet fungerar som en slav. Vid implementering av standard USB måste enheterna ha en eller annan roll, med datorer som vanligtvis är konfigurerade som värdar, medan (till exempel) skrivare normalt fungerar som slavar. I avsaknad av USB OTG implementerade mobiltelefoner ofta slavfunktioner för att enkelt överföra data till och från datorer. Sådana telefoner, som slavar, kunde inte enkelt anslutas till skrivare eftersom de också implementerade slavrollen. USB OTG tar direkt upp detta problem.

När en enhet är ansluten till USB-bussen, konfigurerar masterenheten eller värden kommunikation med enheten och hanterar tillhandahållande av tjänster (värdens programvara möjliggör eller gör den nödvändiga datahanteringen som filhantering eller annan önskad typ av datakommunikation eller funktion). Det gör att enheterna kan förenklas kraftigt jämfört med värden; till exempel innehåller en mus väldigt lite logik och förlitar sig på värden för att utföra nästan allt arbete. Värden kontrollerar alla dataöverföringar över bussen, med enheterna som endast kan signalera (när de är pollade) att de kräver uppmärksamhet. För att överföra data mellan två enheter, till exempel från en telefon till en skrivare, läser värden först data från en enhet och skriver sedan den till den andra.

Medan master-slavarrangemanget fungerar för vissa enheter kan många enheter fungera antingen som master eller som slav beroende på vad som annars delar bussen. Exempelvis är en dataskrivare normalt en slavenhet, men när ett USB -minne med bilder ansluts till skrivarens USB -port utan dator (eller åtminstone avstängd), skulle det vara användbart för skrivaren att ta på sig roll som värd, så att den kan kommunicera med flash -enheten direkt och skriva ut bilder från den.

USB OTG känner igen att en enhet kan utföra både master- och slavroller, och ändrar så subtilt terminologin. Med OTG kan en enhet antingen vara en värd när den fungerar som en länkmaster eller en "perifer" när den fungerar som en länkslav. Valet mellan värd- och kringutrustning hanteras helt av vilken ände av kabeln enheten är ansluten till. Enheten som är ansluten till "A" -änden på kabeln vid start, känd som "A-enhet", fungerar som standardvärd, medan "B" -änden fungerar som standardutrustning, känd som "B- enhet".

Efter första starten fungerar bussen som den gör med den vanliga USB-standarden, med A-enheten som konfigurerar B-enheten och hanterar all kommunikation. Men när samma A-enhet är ansluten till ett annat USB-system eller en dedikerad värd blir tillgänglig kan den bli en slav.

USB OTG utesluter inte att använda en USB-hubb , men den beskriver värd-perifer rollbyte endast för en en-till-en-anslutning där två OTG-enheter är direkt anslutna. Rollbyte fungerar inte via ett standardhub, eftersom en enhet fungerar som en värd och den andra som en kringutrustning tills de kopplas bort.

Specifikationer

USB OTG är en del av ett tillägg till Universal Serial Bus (USB) 2.0 -specifikationen som ursprungligen enades om i slutet av 2001 och senare reviderades. Den senaste versionen av tillägget definierar också beteendet för en inbäddad värd som har målinriktade förmågor och samma USB Standard-A-port som används av datorer.

SuperSpeed ​​OTG -enheter, inbäddade värdar och kringutrustning stöds via USB OTG och inbyggt värdtillägg till USB 3.0 -specifikationen.

Protokoll

USB OTG och inbyggt värdtillägg till USB 2.0 -specifikationen introducerade tre nya kommunikationsprotokoll :

Bifoga detekteringsprotokoll (ADP)
Tillåter en OTG-enhet, inbäddad värd eller USB-enhet att bestämma anslutningsstatus i avsaknad av ström på USB-bussen, vilket möjliggör både insättningsbaserat beteende och möjligheten att visa anslutningsstatus. Det gör det genom att regelbundet mäta kapacitansen på USB -porten för att avgöra om det finns en annan enhet ansluten, en dinglande kabel eller ingen kabel. När en tillräckligt stor kapacitansförändring detekteras för att indikera enhetens anslutning, kommer en A-enhet att ge ström till USB-bussen och leta efter enhetsanslutning. Samtidigt genererar en B-enhet SRP (se nedan) och väntar på att USB-bussen blir strömförsörjd.
Session Request Protocol (SRP)
Låter båda kommunikationsenheterna styra när länkens power -session är aktiv. i standard USB är det bara värden som kan göra det. Det ger fin kontroll över strömförbrukningen, vilket är mycket viktigt för batteridrivna enheter som kameror och mobiltelefoner. OTG eller inbäddad värd kan lämna USB -länken utan ström tills kringutrustning (som kan vara en OTG eller standard USB -enhet) kräver ström. OTG och inbäddade värdar har vanligtvis lite batterikraft, så att lämna USB -länken utan ström hjälper till att förlänga batteritiden.
Värdförhandlingsprotokoll (HNP)
Tillåter de två enheterna att utbyta sina värd/perifera roller, förutsatt att båda är OTG-enheter med två roller. Genom att använda HNP för att vända värd/perifera roller kan USB OTG-enheten få kontroll över schemaläggning av dataöverföring. Således kan alla OTG-enheter initiera dataöverföring via USB OTG-buss. Den senaste versionen av tillägget introducerade också HNP -polling, där värdenheten periodiskt pollar kringutrustningen under en aktiv session för att avgöra om den vill bli värd.
Huvudsyftet med HNP är att rymma användare som har anslutit A- och B -enheterna (se nedan) i fel riktning för den uppgift de vill utföra. Till exempel är en skrivare ansluten som A-enhet (värd), men kan inte fungera som värd för en viss kamera, eftersom den inte förstår kamerans representation av utskriftsjobb. När kameran vet hur man pratar med skrivaren, kommer skrivaren att använda HNP för att växla till slavrollen, med kameran som värd så att bilder som lagras på kameran kan skrivas ut utan att kablarna återansluts. De nya OTG -protokollen kan inte passera genom en standard USB -hubb eftersom de är baserade på elektrisk signalering via en dedikerad kabel.

USB OTG och inbyggt värdtillägg till USB 3.0 -specifikationen introducerar ett ytterligare kommunikationsprotokoll:

Role Swap Protocol (RSP)
RSP uppnår samma syfte som HNP (dvs. rollbyte) genom att utöka standardmekanismer som tillhandahålls av USB 3.0 -specifikationen. Produkter som följer USB OTG- och Embedded Host -tillägget till USB 3.0 -specifikationen måste också följa USB 2.0 -tillägget för att bibehålla bakåtkompatibilitet. SuperSpeed ​​OTG-enheter (SS-OTG) krävs för att stödja RSP. SuperSpeed ​​Peripheral Capable OTG-enheter (SSPC-OTG) krävs inte för att stödja RSP eftersom de bara kan fungera på SuperSpeed ​​som kringutrustning; de har ingen SuperSpeed ​​-värd och kan därför bara byta roll med HNP vid USB 2.0 -datahastigheter.

Enhetsroller

USB OTG definierar två roller för enheter: OTG A-enhet och OTG B-enhet, som anger vilken sida som levererar ström till länken, och vilken som ursprungligen är värd. OTG A-enheten är en kraftleverantör, och en OTG B-enhet är en strömkonsument. I standardlänkskonfigurationen fungerar A-enheten som en USB-värd med B-enheten som en USB-kringutrustning. Värd- och kringlägena kan bytas ut senare med HNP eller RSP. Eftersom varje OTG-kontroller stöder båda rollerna kallas de ofta "Dual-Role" -kontrollanter snarare än "OTG-controllers".

För integrerade kretsar (IC) -designers är en attraktiv egenskap hos USB OTG möjligheten att uppnå fler USB -funktioner med färre grindar.

Ett "traditionellt" tillvägagångssätt inkluderar fyra kontroller, vilket resulterar i fler portar att testa och felsöka:

  • USB höghastighets värdkontroller baserad på EHCI (ett registergränssnitt)
  • Full/låg hastighet värdkontroller baserad på OHCI (ett annat registergränssnitt)
  • USB -enhetskontroller, som stöder både höga och fulla hastigheter
  • Fjärde styrenheten för att växla OTG -rotporten mellan värd- och enhetskontroller

De flesta prylar måste också vara antingen en värd eller en enhet. OTG-hårdvarudesign slår samman alla styrenheter till en dubbelrollsstyrenhet som är något mer komplex än en enskild enhetsstyrenhet.

Riktad perifer lista (TPL)

En tillverkares riktade perifera lista (TPL) tjänar målet att fokusera en värdenhet mot specifika produkter eller applikationer, snarare än mot dess funktion som en allmän värd, som är fallet för typiska datorer. TPL anger produkter som stöds av värden "inriktning" och definierar vad den behöver stödja, inklusive uteffekt, överföringshastigheter, protokoll som stöds och enhetsklasser. Det gäller alla riktade värdar, inklusive både OTG -enheter som fungerar som värd och inbäddade värdar.

Plugg

Standard-, mini- och mikro -USB -kontakter (ej i skala). De vita områdena på ritningarna representerar ihåliga utrymmen. Som kontakterna visas här är USB -logotypen (med valfri bokstav A eller B) överst på överformen i alla fall. Stiftnumrering (tittar in i behållare) speglas från kontakter, så att stift 1 på kontakten ansluts till stift 1 på behållaren.

OTG miniproppar

Den ursprungliga USB OTG-standarden introducerade en kontaktdosa som heter mini-AB som ersattes av micro-AB i senare versioner (version 1.4 och framåt). Den kan antingen acceptera en mini-A-kontakt eller en mini-B-kontakt, medan mini-A-adaptrar tillåter anslutning till standard-A USB-kablar som kommer från kringutrustning. Standard OTG-kabel har en mini-A-kontakt i ena änden och en mini-B-kontakt i den andra änden (den kan inte ha två kontakter av samma typ).

Enheten med en mini-A-kontakt insatt blir en OTG A-enhet, och enheten med en mini-B-kontakt insatt blir en B-enhet (se ovan). Den typ av plugg som sätts in detekteras av tillståndet för ID-stiftet (mini-A-kontaktens ID-stift är jordat, medan mini-B-kontakten är flytande).

Rena mini-A-behållare finns också, som används där en kompakt värdport behövs, men OTG stöds inte.

OTG mikropluggar

Med introduktionen av USB-mikrokontakten introducerades också en ny kontaktdosa som heter micro-AB. Den kan antingen acceptera en micro-A-kontakt eller en micro-B-kontakt. Micro-A-adaptrar möjliggör anslutning till standard-A-kontakter, som används på fasta eller standardenheter. En OTG-produkt måste ha en enda mikro-AB-behållare och inga andra USB-uttag.

En OTG-kabel har en micro-A-kontakt i ena änden och en micro-B-kontakt i den andra änden (den kan inte ha två kontakter av samma typ). OTG lägger till en femte stift till standard USB-kontakten, kallad ID-pin; micro-A-kontakten har ID-stiftet jordat, medan ID i micro-B-kontakten är flytande. En enhet med en micro-A-kontakt insatt blir en OTG A-enhet, och en enhet med en micro-B-plugg insatt blir en B-enhet. Den typ av plugg som sätts in detekteras av tillståndet för pin -ID.

Tre ytterligare ID -stifttillstånd definieras vid de nominella motståndsvärdena på 124 kΩ , 68 kΩ och 36,5 kΩ , med avseende på jordstiftet. Dessa tillåter att enheten fungerar med USB -tillbehörsladdare som gör att OTG -enheten kan anslutas till både en laddare och en annan enhet samtidigt.

Dessa tre tillstånd används i följande fall:

  • En laddare och antingen ingen enhet eller en A-enhet som inte hävdar V BUS (inte ger ström) är ansluten. OTG -enheten får ladda och initiera SRP men kan inte ansluta.
  • En laddare och en A-enhet som hävdar att V BUS (ger ström) är anslutna. OTG -enheten får ladda och ansluta men inte starta SRP.
  • En laddare och en B-enhet är anslutna. OTG -enheten får ladda och gå in i värdläge.

USB 3.0 introducerade en bakåtkompatibel SuperSpeed-förlängning av micro-AB-uttaget och mikro-A och micro-B-kontakter. De innehåller alla stift på mikrokontakterna som inte är Superspeed och använder ID-stiftet för att identifiera A-enhetens och B-enhetens roller, och lägger också till SuperSpeed-stiften.

OTG mikrokablar

USB OTG -adaptrar, hubbar och kortläsare

När en OTG-aktiverad enhet är ansluten till en dator använder den sin egen USB-A eller USB Type-C-kabel (slutar vanligtvis med mikro-B, USB-C eller Lightning- kontakter för moderna enheter). När en OTG-aktiverad enhet är ansluten till en USB-slavenhet, t.ex. Med adaptern kan alla vanliga USB -enheter anslutas till en OTG -enhet. Att ansluta två OTG-aktiverade enheter tillsammans kräver antingen en adapter i kombination med slavenhetens USB-A-kabel eller en lämplig dubbelsidig kabel och en mjukvaruimplementering för att hantera den. Detta blir vanligt med USB Type-C-enheter.

Smartphone och surfplatta implementering

BlackBerry 10 .2 implementerar värdläge (som i BlackBerry Z30 -handenheten). Nokia har implementerat USB OTG i många av sina Symbian-mobiltelefoner som Nokia N8, C6-01, C7, Oro, E6, E7, X7, 603, 700, 701 och 808 Pureview. Vissa avancerade Android-telefoner producerade av HTC och Sony under Xperia- serien har också det. Samsung Android version 3.1 eller senare stöder USB OTG, men inte på alla enheter.

Specifikationer som listas på teknikwebbplatser (t.ex. GSMArena, PDAdb.net, PhoneScoop och andra) kan hjälpa till att avgöra kompatibilitet. Med GSMArena som exempel skulle man hitta sidan för en given enhet och undersöka verbet under Specifikationer → Komms → USB . Om "USB-värd" visas bör enheten kunna stödja externa USB-tillbehör av OTG-typ.

I många av ovanstående implementeringar har värdenheten endast en mikro-B-behållare snarare än en mikro-AB-behållare. Även om icke-standardiserade mikro-B till mikro-A-uttagskort är allmänt tillgängliga och används istället för det obligatoriska mikro-AB-uttaget på dessa enheter.

Bakåtkompatibilitet

USB OTG-enheter är bakåtkompatibla med USB 2.0 (USB 3.0 för SuperSpeed ​​OTG-enheter) och fungerar som vanliga USB-värdar eller enheter när de är anslutna till standard (icke-OTG) USB-enheter. Det största undantaget är att OTG -värdar endast krävs för att tillhandahålla tillräckligt med ström för de produkter som anges på TPL, vilket kanske är tillräckligt för att ansluta till en kringutrustning som inte är listad. En driven USB -hubb kan kringgå problemet, om det stöds, eftersom det sedan kommer att ge sin egen ström enligt antingen USB 2.0- eller USB 3.0 -specifikationerna.

Vissa inkompatibiliteter i både HNP och SRP introducerades mellan 1.3 och 2.0 versionerna av OTG -tillägget, vilket kan leda till interoperabilitetsproblem vid användning av dessa protokollversioner.

Laddarens kompatibilitet

Vissa enheter kan använda sina USB-portar för att ladda inbyggda batterier, medan andra enheter kan upptäcka en dedikerad laddare och dra mer än 500 mA (0,5 A), så att de kan ladda snabbare. OTG -enheter får använda båda alternativen.

Se även

Referenser

externa länkar