| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| pd_connect [2026/02/27 18:38] – gadmin | pd_connect [2026/02/27 19:00] (current) – gadmin |
|---|
| === Введение === | === Введение === |
| Обсуждая процессы чтения маркера и измерения сопротивления кабелей, я обнаружил, что знание процесса подключения устройств к зарядке кабелем Type C относится к очень мифологизированному процессу. Поэтому и решил написать статью, где подробно описать, что происходит на шине во время подключения устройства. | Обсуждая процессы чтения маркера и измерения сопротивления кабелей, я обнаружил, что понимание процесса подключения устройств к зарядке кабелем Type C покрыто мифами и заблуждениями. Поэтому и решил написать статью, где подробно описать, что происходит на шине во время подключения устройства. |
| |
| === Приборы и материалы === | === Приборы и материалы === |
| В качестве продвинутого вольтметра использовался тесте KM003C с десктопной программой. Она позволяет записывать показания напряжения и тока на VBUS, а также напряжения на CC1, CC2, D+ и D- с последующим анализом графиков и их экспортом. Сразу замечу, что показания я снимал дважды, один раз в режиме "Data Recorder" с точностью 1000 точек и второй раз в режиме "PD analyzer", там точность меньше раз в 20, зато есть привязка событий PD к графику напряжений. | В качестве продвинутого вольтметра использовался тесте KM003C с десктопной программой. Она позволяет записывать показания напряжения и тока на VBUS, а также напряжения на CC1, CC2, D+ и D- с последующим анализом графиков и их экспортом. Сразу замечу, что показания я снимал дважды, один раз в режиме "Data Recorder" с точностью 1000 точек и второй раз в режиме "PD analyzer", там точность меньше раз в 20, зато есть привязка событий PD к графику напряжений. |
| В качестве источника (source) выступал павербанк Ugreen с портом на 100W (нужна не мощность, а чтобы он запросил маркер) и кабель с полной разводкой и маркером на 100W. Потребителем выступал телефон Pixel 6A (с ним всё просто и наглядно: попросил 9V, получил и пошел заряжаться). | В качестве источника (source) выступал павербанк Ugreen с портом на 100W (нужна не мощность, а чтобы он запросил маркер) и кабель с полной разводкой и маркером на 100W. Потребителем выступал телефон Pixel 6A (с ним всё просто и наглядно: попросил 9V, получил и пошел заряжаться). |
| | |
| | Советую графики открывать в отдельной закладке, я их сохранял с шириной 1920 px, чтобы можно было видеть детали. |
| |
| Вопрос на понимание структуры кабеля: куда подключать тестер? Правильный ответ: между кабелем и павербанком. Потому что при подключении со стороны потребителя мы не увидим активности на линии VCONN, поскольку линия VCONN ничего не передаёт на другой разъем: | Вопрос на понимание структуры кабеля: куда подключать тестер? Правильный ответ: между кабелем и павербанком. Потому что при подключении со стороны потребителя мы не увидим активности на линии VCONN, поскольку линия VCONN ничего не передаёт на другой разъем: |
| {{:2twist_01.png?1024|}} | {{:2twist_01.png?1024|}} |
| |
| Стало интереснее и сложнее. Начнём с середины, с того, что у нас при подключенном кабеле. А там на одном CCx 3.2V, а на CCy 1.7V. Напряжение 1.7V соответствует pull-up резистору 10 kOhm у источника, то есть павербанк обещает до 5V 3A на VBUS. То есть во время первого коннекта CC был на CC2 (смотри легенду в верхнем левом углу), а во время второго на CC1. А напряжение 3.2V указывает на то, что маркер кабеля запросил питание на втором контакте (последовательно CC1 и CC2) и получил низкое напряжение, которое и держал всё время, пока телефон был подключен. | Стало интереснее и сложнее. Начнём с середины, с того, что у нас при подключенном кабеле. А там на одном CCx 3.2V, а на CCy 1.7V. Напряжение 1.7V соответствует pull-up резистору 10 kOhm у источника, то есть павербанк обещает до 5V 3A на VBUS. То есть во время первого коннекта CC был на CC2 (смотри легенду в верхнем левом углу), а во время второго на CC1. А напряжение 3.2V указывает на то, что маркер кабеля запросил питание на втором контакте (последовательно CC1 и CC2) и получил низкое напряжение (низкое в смысле того, что оно меньше 5V и может быть использовано микросхемой напрямую, без преобразователя), которое и держал всё время, пока телефон был подключен. |
| | |
| | Приведу для справки значения pull-up сопротивлений для разных источников. Обратите внимание, что в таблице приведены три варианта реализации pull-up на источнике: через источник тока и через сопротивления для двух источников напряжения. |
| | {{:2twist_pd_08.png?1024|}} |
| | Вторая таблица - это диапазоны напряжений и их интерпретация sinkом (если вдруг ему важен ток, который может дать источник на 5V). Поскольку сопротивление кабеля ничтожно по сравнению с резисторами Rd и Rp, то эти диапазоны применимы к двум сторонам кабеля. |
| | {{:2twist_pd_09.png?1024|}} |
| | |
| | Чтобы не заморачиваться с разными источниками можно запомнить общий диапазон: 0.2-2V - эта линия CCx станет CC. От 3V - VCONN. |
| |
| А теперь увеличим фрагмент с подключением кабеля. | А теперь увеличим фрагмент с подключением кабеля. |
| {{:2twist_02.png?1024|}} | {{:2twist_02.png?1024|}} |
| До 3.183 видны пики, которые обозначают что источник подаёт на CC1 и CC2 напряжение и смотрит, пошел ли ток. Пики длительностью 40-50ms и отсутствие падения напряжения говорит о том, что устройства с pull-down резистором нет. | До 3.183 видны пики, которые обозначают что источник подаёт на CC1 и CC2 напряжение и смотрит, пошел ли ток (ток на CC1/CC2 смотреть мы не можем, поэтому догадываемся). Пики длительностью 40-50ms и отсутствие падения напряжения говорит о том, что устройства с pull-down резистором на линии нет. |
| |
| Подключение второй стороны обнаруживается в 3.404, когда появляется pull-down резистор телефона и напряжение 1.7V на CC2 указывает на коннект устройства. И дальше на CC2 (его уже можно называть CC) держится напряжение, на котором видны всплески модуляции пакетов PD. | Подключение второй стороны обнаруживается в 3.404, когда появляется pull-down резистор телефона и напряжение 1.7V на CC2 указывает на коннект устройства. И дальше на CC2 (его уже можно называть CC) держится напряжение, на котором видны всплески модуляции пакетов PD. |