Я попытался сделать переходник с микро-USB на USB-C, выполнив соединения, показанные красными линиями ниже (таким образом, используются 11 из 24 контактов USB-C, а другие контакты плавают). Это вид на штекер USB-C (как если бы вы были соответствующей розеткой USB-C) и 4 соединения вверху, подключаемые к GND, VBUS, D- и D+ на розетке micro-USB (ID плавает).
Мой телефон с USB-C потом заряжается, но, к сожалению, не замечает, когда клавиатура подключается к микро-USB (через обычный OTG-хаб с зарядкой). Для меня спецификация не ясна в отношении данных, потому что она больше фокусируется на подаче энергии... Должен ли я действительно не получать данные с этой настройкой? Если нет, могу ли я добавить резистор «Ra» на VCONN (или какой-либо другой контакт) для получения данных? Извините, если я единственный, кто не может хорошо прочитать спецификацию, но я просто пытаюсь найти самый дешевый способ одновременно заряжать и использовать клавиатуру.
(Для справки, добавление резистора 5 кОм от CC1 к GND заставляет клавиатуру micro USB работать, но тогда я не могу одновременно заряжать телефон.)
То, что вам нужно, называется «аксессуарное зарядное устройство».
При выполнении «начального подключения» по умолчанию контакты CC берут на себя роль питания, поскольку источник связан с функцией хоста, а приемник связан с функцией устройства. Когда устройство с двумя ролями переключает рекламу с источника на приемник и обратно, роль данных переключается соответствующим образом.
Невозможно сохранить роль данных и поменять ее ролью приемника/источника только с помощью резисторов. Если устройство поддерживает режим хоста, но нуждается в зарядке, единственный способ — использовать связь Power Delivery. Оба партнера по каналу связи должны повторно согласовать контракт на питание путем обмена сообщениями «Structured VDM», в частности DR_Swap. Приносим извинения за неудобства :-)
Надеюсь, я правильно понял ваш вопрос, если не подтянуть два контакта к vcc на первой диаграмме.
Что касается зарядки, я не думаю, что зарядка возможна одновременно с использованием otg. Вам потребуется патч ядра.
я предполагаю, что vconn и cc1 должны быть соединены с землей, чтобы показать, что это вспомогательное устройство. а а7 и а6 на схеме обозначены четко d-, d+.
и не забывайте, что на стороне micro usb вы должны закоротить два контакта, чтобы он определялся как вход otg.
посмотрите это отличное видео для ясности. реализовать для подустройства вместо хоста
https://www.youtube.com/watch?v=V-vFtiDYiIw&t=826s
https://www.pinterest.com/pin/315814992595252872/
Первое изображение — это снимок экрана, а второе — отсюда.
Джорен Вейс