Передача данных через USB с питанием (вроде как концентратор, но не)


1

У меня есть устройство, которое не поддерживает концентратор USB и не обеспечивает питание. Мне нужно подключить телефон к этому устройству, и, к сожалению, это означает, что я не могу заряжать телефон во время его использования.

Я попробовал простые, наивные подходы:

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

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

Есть ли такое устройство?


Я не уверен, что это должно было быть перемещено; Я подозреваю, что результатом будет какой-то нестандартный чип, маленький uP или что-то подобное, в то время как superuser больше предназначен для готовых аппаратных решений.
Майкл Графф

Фундаментальная проблема заключается в том, что это проблема, которая, вероятно, требует глубоких технических деталей, но задается с очень поверхностной точки зрения конечного пользователя без предоставления необходимой информации. Политика SE не состоит в том, чтобы перенести нерешенные вопросы, она должна была быть просто закрыта.
Крис Страттон

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

@LaszloValko, это очень хорошо может быть то, что происходит. Однако, насколько я могу судить, пульт Дрон находится либо в режиме хоста, либо в режиме клиента, и в этом случае он действует как хост. Телефон на короткое время пытается зарядиться, затем останавливается.
Майкл Графф

Ответы:


0

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

Вторая часть (зарядка при подключении в качестве USB-устройства) является более сложной.

Решение будет зависеть от того, какую подпись о начислении платы портит ваш PHONE, поддерживая протокол передачи данных. Заряжается ли он когда-либо при подключении к любому обычному USB-порту ПК или работающему концентратору?

Если он не заряжается от обычного порта данных (потребляет 500 мА и заряжается, но, возможно, медленно), то вам нужно попробовать порт «Battery Charging» (BC1.2), если вы можете его найти. Если ваш телефон поддерживает / распознает подпись для зарядки BC1.2, вам нужно будет создать собственное устройство, эмулятор BC1.2, который устанавливается между вашим телефоном и вашим специальным «устройством».


В данном случае это iPhone 6s, который будет заряжаться (или, по крайней мере, не так быстро) от порта с емкостью 500 мА. Я не подключил его напрямую к порту BC, но я провел небольшой тест на стенде и, используя надлежащие делители напряжения, чтобы сказать, что телефон 2 A доступен, я видел, что он потребляет примерно 1,8 A.
Майкл Графф

@MichaelGraff, поэтому вы предоставили статическую «подпись Apple», и телефон начинает заряжаться (как и положено, предполагается, что он подключен к законному зарядному устройству). Однако, чтобы подключиться к USB-каналу передачи данных, вам необходимо переключиться на обычное USB-подключение. В пространстве ПК существует так называемый «режим зарядки аксессуаров», когда хост OTG превращается в приемник, выступая в качестве хоста USB, и все это выполняется вне протокола USB. В Apple space я считаю, что это должно быть сделано на уровне протокола USB, MacBooks спрашивает, хотите ли вы «синхронизировать» после того, как iPhone подключен и заряжается. Как это делается, я не знаю.
Ale..chenski

@MichaelGraff, ДОПОЛНЕНИЕ: похоже, Apple отказалась от классической возможности USB3.0 для зарядки и синхронизации. Теперь это должно быть сделано через порт Type-C, со всеми прибамбасами протокола USB Power Delivery. Удачи в реализации этого на "вашем устройстве".
Ale..chenski

Али Чен, в этом случае просто подача внешнего питания +5 В постоянного тока приводит к тому, что телефон начинает заряжаться, но затем сразу же останавливается, как только он перечисляется. Я думаю, что это порт хоста, говорящий, что для него нет доступного питания, проклятый предел неконфигурированного порта 500 мА. Если я не подключаю линии передачи данных, я получаю заряд 500 мА, и пока он не будет перечислен, он заряжается.
Майкл Графф

Я знаю проблемы, связанные с попыткой перехватить и заменить часть протокола USB, и при этом разрешить передачу данных по одной и той же линии с высокой скоростью. Я думаю, что лучшим решением здесь было бы убедить производителя оборудования позволить USB-концентратору подключиться к их устройству, и в этот момент я могу довольно легко питать концентратор от батареи, и телефон будет заряжаться нормально.
Майкл Графф
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.