USB OTG (USB On-The-Go)
USB On-The-Go (zazwyczaj stosowany jest skrót USB OTG) to specyfikacja, która pozwala by urządzenie ze złączem USB mogło spełniać rolę hosta lub też rolę urządzenia peryferyjnego, w zależności od potrzeb. Przykładowo telefon komórkowy zgodny ze specyfikcją USB OTG może spełniać rolę urządzenia peryferyjnego (takiego jak choćby pamięć przenośna) kiedy zostanie podłączony do komputera, ale może spełnić rolę hosta kiedy do niego podłączone zostanie urządzenie peryferyjne takie jak klawiatura czy pamięć przenośna.
Żeby skorzystać z funkcjonalności specyfikacji USB OTG urządzenie musi być do tego celu przystosowane konstrukcyjnie, a dodatkowo potrzebny jest też kabel USB OTG, który różni się od zwykłego kabla USB. O tym, które urządzenie zacznie po połączeniu pracować jako host, a które jako slave decyduje sposób podłączenia kabla USB OTG.
Specyfikacja USB OTG jest rozwinięciem standardowej specyfikacji USB i była ona rozwijana etapowo. Pierwsza część specyfikacji USB OTG została uzgodniona w 2001 roku.
W standardowej wersji USB urządzenia pracują w systemie master/slave, a ich role są z góry określone. Host (master) nawiązuje komunikację z urządzeniem peryferyjnym (slave) i zarządza obsługą magistarli USB. Urządzenia peryferyjne mają bardzo skromne możliwości, mogą jedynie sygnalizować zapotrzebowanie na obsługę ze strony hosta, ale nie mogą samodzielnie kontrolować magistrali.
Urządzenia z USB OTG mogą współpracować ze zwykłymi urządzeniami USB.