USB на ходу - USB On-The-Go

Логотип USB On-The-Go
Адаптер USB On-The-Go для портов USB-B Micro для зарядки смартфонов и планшетных компьютеров без специального порта USB-A

USB On-The-Go ( USB OTG или просто OTG ) - это спецификация, впервые использованная в конце 2001 года, которая позволяет USB-устройствам , таким как планшеты или смартфоны , выступать в качестве хоста, позволяя другим USB- устройствам, таким как USB-флеш-накопители , цифровые камеры , мышь или клавиатуры , которые будут прикреплены к ним. Использование USB OTG позволяет этим устройствам переключаться между ролями хоста и устройства. Мобильный телефон может считывать данные со съемного носителя в качестве хост-устройства, но при подключении к хост-компьютеру представляет себя как запоминающее устройство USB.

USB OTG представляет концепцию устройства, выполняющего как ведущую, так и ведомую роли - всякий раз, когда подключаются два USB-устройства, и одно из них является устройством USB OTG, они устанавливают канал связи . Устройство, управляющее каналом, называется ведущим или хостом, а другое - ведомым или периферийным.

USB OTG определяет две роли для устройств: OTG A-устройство и OTG B-устройство, определяя, какая сторона подает питание на канал, а какая изначально является хостом. Устройство OTG A является поставщиком энергии, а устройство OTG B - потребителем энергии. В конфигурации связи по умолчанию A-устройство действует как хост USB, а B-устройство действует как периферийное устройство USB. Позже можно поменять режимы хоста и периферии, используя протокол согласования хоста (HNP).

Первоначальная роль каждого устройства определялась тем, какую мини-вилку пользователь вставляет в розетку.

Обзор

Настройка USB OTG с участием ряда устройств

Стандартный USB использует архитектуру ведущий / ведомый ; хост действует в качестве ведущего устройства для всей шины и USB - устройство выступает в качестве ведомого устройства. При реализации стандартного USB устройства должны выполнять ту или иную роль, при этом компьютеры обычно настраиваются как хосты, в то время как (например) принтеры обычно работают как подчиненные. В отсутствие USB OTG в сотовых телефонах часто реализовывалась функция ведомого устройства, позволяющая легко передавать данные на компьютеры и с них. Такие телефоны, как подчиненные, нельзя было легко подключить к принтерам, поскольку они также выполняли роль подчиненного устройства. USB OTG напрямую решает эту проблему.

Когда устройство подключено к шине USB, главное устройство или хост устанавливает связь с устройством и обрабатывает предоставление услуг (программное обеспечение хоста включает или выполняет необходимую обработку данных, такую ​​как управление файлами или другой желаемый вид передачи данных. или функция). Это позволяет значительно упростить устройства по сравнению с хостом; например, мышь содержит очень мало логики и полагается на хост, который выполняет почти всю работу. Хост контролирует всю передачу данных по шине, при этом устройства могут только сигнализировать (при опросе), что они требуют внимания. Для передачи данных между двумя устройствами, например, с телефона на принтер, хост сначала считывает данные с одного устройства, а затем записывает их на другое.

В то время как схема «главный-подчиненный» работает для некоторых устройств, многие устройства могут действовать либо как ведущие, либо как ведомые, в зависимости от того, что еще использует шину. Например, компьютерный принтер обычно является подчиненным устройством, но когда флеш-накопитель USB, содержащий изображения, подключен к USB-порту принтера без компьютера (или, по крайней мере, выключен), для принтера было бы полезно взять на себя роль хоста, позволяя ему напрямую связываться с флешкой и печатать с нее изображения.

USB OTG распознает, что устройство может выполнять как ведущую, так и ведомую роли, и поэтому тонко меняет терминологию. С помощью OTG устройство может быть либо хостом, действуя как ведущее устройство связи, либо «периферийным устройством», действуя как ведомое устройство связи. Выбор между ролями хоста и периферийных устройств полностью зависит от того, к какому концу кабеля подключено устройство. Устройство, подключенное к концу «A» кабеля при запуске, известное как «A-устройство», действует как хост по умолчанию, а конец «B» действует как периферийное устройство по умолчанию, известное как «B- устройство".

После первоначального запуска настройка шины выполняется так же, как и в случае обычного стандарта USB, при этом A-устройство настраивает B-устройство и управляет всеми коммуникациями. Однако, когда то же A-устройство подключается к другой системе USB или становится доступным выделенный хост, оно может стать подчиненным.

USB OTG не исключает использования концентратора USB , но описывает обмен ролями между хостом и периферией только в случае соединения «один-к-одному», когда два устройства OTG подключены напрямую. Смена ролей не работает через стандартный концентратор, так как одно устройство будет действовать как хост, а другое как периферийное, пока они не будут отключены.

Характеристики

USB OTG является частью дополнения к спецификации универсальной последовательной шины (USB) 2.0, первоначально согласованной в конце 2001 года и позже пересмотренной. Последняя версия дополнения также определяет поведение встроенного хоста, который имеет целевые возможности и тот же порт USB Standard-A, используемый ПК.

Устройства SuperSpeed ​​OTG, встроенные хосты и периферийные устройства поддерживаются через USB OTG и дополнение Embedded Host к спецификации USB 3.0.

Протоколы

Дополнение USB OTG и Embedded Host к спецификации USB 2.0 представило три новых протокола связи :

Протокол обнаружения подключения (ADP)
Позволяет устройству OTG, встроенному хосту или USB-устройству определять состояние подключения при отсутствии питания на шине USB, обеспечивая как поведение на основе вставки, так и возможность отображения состояния подключения. Для этого он периодически измеряет емкость USB-порта, чтобы определить, подключено ли другое устройство, болтающийся кабель или нет кабеля. Когда обнаруживается достаточно большое изменение емкости, указывающее на подключение устройства, A-устройство будет подавать питание на шину USB и искать подключение устройства. В то же время B-устройство будет генерировать SRP (см. Ниже) и ждать, пока на шину USB поступит питание.
Протокол запроса сеанса (SRP)
Позволяет обоим взаимодействующим устройствам контролировать, когда активен сеанс питания канала; в стандартном USB только хост может это сделать. Это позволяет точно контролировать энергопотребление, что очень важно для устройств с батарейным питанием, таких как камеры и мобильные телефоны. OTG или встроенный хост может оставить USB-соединение без питания до тех пор, пока периферийное устройство (которое может быть OTG или стандартным USB-устройством) не потребует питания. У OTG и встроенных хостов обычно мало запаса заряда батареи, поэтому отключение USB-соединения помогает продлить время работы от батареи.
Протокол согласования хоста (HNP)
Позволяет двум устройствам обмениваться ролями хоста / периферии при условии, что оба являются устройствами с двумя ролями OTG. Используя HNP для реверсирования ролей хоста / периферии, устройство USB OTG способно получить контроль над планированием передачи данных. Таким образом, любое устройство OTG способно инициировать передачу данных по шине USB OTG. В последней версии дополнения также введен опрос HNP, при котором хост-устройство периодически опрашивает периферийное устройство во время активного сеанса, чтобы определить, хочет ли оно стать хостом.
Основная цель HNP - приспособить пользователей, которые подключили устройства A и B (см. Ниже) в неправильном направлении для задачи, которую они хотят выполнить. Например, принтер подключен в качестве A-устройства (хоста), но не может функционировать в качестве хоста для конкретной камеры, так как он не понимает представления камерой заданий на печать. Когда эта камера знает, как разговаривать с принтером, принтер будет использовать HNP для переключения на роль ведомого, при этом камера становится хостом, поэтому изображения, хранящиеся на камере, можно распечатать без повторного подключения кабелей. Новые протоколы OTG не могут проходить через стандартный USB-концентратор, поскольку они основаны на передаче электрических сигналов по выделенному проводу.

Дополнение USB OTG и Embedded Host к спецификации USB 3.0 вводит дополнительный протокол связи:

Протокол обмена ролями (RSP)
RSP достигает той же цели, что и HNP (т. Е. Смена ролей), путем расширения стандартных механизмов, предусмотренных спецификацией USB 3.0. Продукты, соответствующие требованиям USB OTG и Embedded Host Supplement к спецификации USB 3.0, также должны соответствовать дополнению USB 2.0 для обеспечения обратной совместимости. Устройства SuperSpeed ​​OTG (SS-OTG) должны поддерживать RSP. Устройства OTG с поддержкой SuperSpeed ​​Peripheral Capable (SSPC-OTG) не обязаны поддерживать RSP, поскольку они могут работать только на SuperSpeed ​​в качестве периферийного устройства; у них нет хоста SuperSpeed, и поэтому они могут менять роли только с помощью HNP со скоростью передачи данных USB 2.0.

Роли устройства

USB OTG определяет две роли для устройств: OTG A-устройство и OTG B-устройство, определяя, какая сторона подает питание на канал, а какая изначально является хостом. Устройство OTG A является поставщиком энергии, а устройство OTG B - потребителем энергии. В конфигурации связи по умолчанию A-устройство действует как хост USB, а B-устройство действует как периферийное устройство USB. Позже можно поменять режимы хоста и периферии, используя HNP или RSP. Поскольку каждый контроллер OTG поддерживает обе роли, их часто называют контроллерами с двойной ролью, а не контроллерами OTG.

Для разработчиков интегральных схем (ИС) привлекательной особенностью USB OTG является возможность достичь большего количества возможностей USB с меньшим количеством вентилей.

«Традиционный» подход включает четыре контроллера, что дает больше возможностей для тестирования и отладки:

  • Высокоскоростной хост-контроллер USB на основе EHCI (интерфейс регистров)
  • Полный / низкоскоростной хост-контроллер на основе OHCI (другой интерфейс регистров)
  • Контроллер USB-устройства, поддерживающий как высокую, так и полную скорость
  • Четвертый контроллер для переключения корневого порта OTG между контроллерами хоста и устройства.

Кроме того, большинство гаджетов должны быть либо хостом, либо устройством. Аппаратный дизайн OTG объединяет все контроллеры в один двухролевой контроллер, который несколько сложнее, чем отдельный контроллер устройства.

Целевой список периферийных устройств (TPL)

Целевой список периферийных устройств производителя (TPL) служит цели сосредоточения хост-устройства на определенных продуктах или приложениях, а не на его функционировании в качестве хоста общего назначения, как в случае с типичными ПК. TPL определяет продукты, поддерживаемые «целевым» хостом, определяя, что он должен поддерживать, включая выходную мощность, скорость передачи, поддерживаемые протоколы и классы устройств. Он применяется ко всем целевым хостам, включая как устройства OTG, выступающие в качестве хоста, так и встроенные хосты.

Затыкать

Штекеры Standard, mini и micro USB (без масштабирования). Белые области на рисунках представляют собой пустоты. Поскольку штекеры показаны здесь, логотип USB (с необязательной буквой A или B) во всех случаях находится на верхней части формы. Нумерация контактов (если смотреть на розетки) отражается на вилках, так что контакт 1 на вилке соединяется с контактом 1 на розетке.

Штекеры OTG mini

Первоначальный стандарт USB OTG представил розетку под названием mini-AB, которая была заменена на micro-AB в более поздних версиях (версия 1.4 и далее). Он может принимать как штекер mini-A, так и штекер mini-B, а адаптеры mini-A позволяют подключаться к кабелям USB стандарта A, идущим от периферийных устройств. Стандартный кабель OTG имеет штекер mini-A на одном конце и штекер mini-B на другом конце (у него не может быть двух штекеров одного типа).

Устройство со вставленной вилкой mini-A становится устройством OTG A, а устройство со вставленной вилкой mini-B становится устройством B (см. Выше). Тип вставленного штекера определяется по состоянию контакта ID (контакт ID штекера mini-A заземлен, а штекер mini-B - плавающий).

Существуют также розетки Pure mini-A, используемые там, где требуется компактный хост-порт, но OTG не поддерживается.

Разъемы OTG Micro

С появлением разъема USB micro, также была представлена ​​новая розетка под названием micro-AB. Он может принимать как штекер micro-A, так и штекер micro-B. Адаптеры Micro-A позволяют подключаться к стандартным разъемам A, используемым на фиксированных или стандартных устройствах. Продукт OTG должен иметь одну розетку micro-AB и никаких других розеток USB.

Кабель OTG имеет штекер micro-A на одном конце и штекер micro-B на другом конце (у него не может быть двух штекеров одного типа). OTG добавляет к стандартному разъему USB пятый контакт, называемый ID-контактом; штекер micro-A имеет заземленный контакт ID, в то время как ID штекера micro-B является плавающим. Устройство со вставленным разъемом micro-A становится устройством OTG A, а устройство со вставленным разъемом micro-B становится устройством B. Тип вставленной вилки определяется состоянием идентификатора контакта.

Три дополнительных состояния вывода ID определены при номинальных значениях сопротивления 124 кОм , 68 кОм и 36,5 кОм по отношению к выводу заземления. Это позволяет устройству работать с USB-адаптерами зарядного устройства для аксессуаров, что позволяет подключать устройство OTG как к зарядному устройству, так и к другому устройству одновременно.

Эти три состояния используются в случаях:

  • Подключено зарядное устройство и либо устройство, либо A-устройство, которое не поддерживает V BUS (не обеспечивает питание). Устройству OTG разрешено заряжать и инициировать SRP, но не подключаться.
  • Подключены зарядное устройство и A-устройство, которое утверждает V BUS (обеспечивает питание). Устройству OTG разрешено заряжать и подключаться, но не инициировать SRP.
  • Зарядное устройство и B-устройство прилагаются. Устройство OTG может заряжаться и переходить в режим хоста.

USB 3.0 представил обратно совместимое расширение SuperSpeed ​​для розетки micro-AB и штекеров micro-A и micro-B. Они содержат все контакты микроразъемов без Superspeed и используют контакт ID для определения ролей A-устройства и B-устройства, а также добавляют контакты SuperSpeed.

Микрокабели OTG

USB-адаптеры OTG, концентраторы и кард-ридеры

Когда устройство с поддержкой OTG подключено к ПК, оно использует собственный кабель USB-A или USB Type-C (обычно заканчивающийся разъемами micro-B, USB-C или Lightning для современных устройств). Когда устройство с поддержкой OTG подключено к ведомому устройству USB, например, к флэш-накопителю, ведомое устройство должно либо иметь подходящее соединение для устройства, либо пользователь должен предоставить соответствующий адаптер, заканчивающийся на USB-A. Адаптер позволяет подключить любое стандартное периферийное USB-устройство к устройству OTG. Для соединения двух устройств с поддержкой OTG требуется либо адаптер в сочетании с кабелем USB-A ведомого устройства, либо соответствующий двусторонний кабель и программная реализация для управления им. Это становится обычным явлением для устройств USB Type-C.

Реализация для смартфонов и планшетов

BlackBerry 10.2 реализует режим хоста (как в телефоне BlackBerry Z30 ). Nokia реализовала USB OTG во многих своих мобильных телефонах на базе Symbian, таких как Nokia N8, C6-01, C7, Oro, E6, E7, X7, 603, 700, 701 и 808 Pureview. Некоторые высокопроизводительные телефоны Android производства HTC и Sony серии Xperia также имеют его. Samsung Android версии 3.1 или новее поддерживает USB OTG, но не на всех устройствах.

Спецификации, перечисленные на технологических веб-сайтах (таких как GSMArena, PDAdb.net, PhoneScoop и др.), Могут помочь определить совместимость. Используя GSMArena в качестве примера, можно найти страницу для данного устройства и изучить многословие в разделе « Технические характеристики» → «Связь» → «USB» . Если отображается «USB Host», устройство должно поддерживать внешние USB-аксессуары типа OTG.

Во многих из вышеупомянутых реализаций хост-устройство имеет только гнездо микро-B, а не гнездо микро-AB. Несмотря на то, что они нестандартны, адаптеры розеток с микро-B на микро-A широко доступны и используются вместо требуемых розеток micro-AB на этих устройствах.

Обратная совместимость

Устройства USB OTG обратно совместимы с USB 2.0 (USB 3.0 для устройств SuperSpeed ​​OTG) и будут вести себя как стандартные хосты или устройства USB при подключении к стандартным (не OTG) устройствам USB. Основное исключение заключается в том, что от хостов OTG требуется только для обеспечения достаточной мощности для продуктов, перечисленных в TPL, которой может быть или не хватить для подключения к периферийному устройству, которого нет в списке. USB-концентратор с питанием может обойти проблему, если он поддерживается, поскольку он будет обеспечивать собственное питание в соответствии со спецификациями USB 2.0 или USB 3.0.

Между версиями 1.3 и 2.0 дополнения OTG были внесены некоторые несовместимости как в HNP, так и в SRP, что может привести к проблемам совместимости при использовании этих версий протокола.

Совместимость с зарядным устройством

Некоторые устройства могут использовать свои USB-порты для зарядки встроенных аккумуляторов, в то время как другие устройства могут обнаруживать специальное зарядное устройство и потреблять более 500 мА (0,5 А), что позволяет им заряжаться быстрее. Устройствам OTG разрешено использовать любой вариант.

Смотрите также

использованная литература

внешние ссылки