Hardware

USB Type-C por dentro: CC pins, Power Delivery e debugging no terminal

24 pinos, 18 fios, 1 conector para governar todos. Mas nem todos os cabos USB-C são iguais. O USB Type-C é o conector mais versátil que alguma vez standardizámos. Transmite dados a 40 Gbps, vídeo 8K, áudio digital, e energia até 240W — tudo pe

24 pinos, 18 fios, 1 conector para governar todos. Mas nem todos os cabos USB-C são iguais.

O USB Type-C é o conector mais versátil que alguma vez standardizámos. Transmite dados a 40 Gbps, vídeo 8K, áudio digital, e energia até 240W — tudo pelo mesmo jack reversível de 8,34 mm × 2,56 mm. Substituiu USB-A, USB-B, Mini e Micro USB e, graças aos modos alternados, serve também de porta para DisplayPort, Thunderbolt e, nalguns telemóveis, áudio digital em vez do jack de 3,5 mm.

Mas esta versatilidade tem um custo: complexidade. Para um developer ou engenheiro que precisa de perceber porque é que um cabo não carrega o portátil, ou porque é que a transferência está lenta, o USB-C é uma caixa preta de protocolos negociais, marcadores eletrónicos e modos alternados.

Diagrama pinout USB-C

⬆ Pinout do conector USB Type-C receptacle (vista frontal). 24 pinos dispostos simetricamente.


Os 24 pinos

O conector USB-C tem 24 pinos organizados em duas filas de 12 (A e B), simétricas. Isto permite que o plug seja inserido ao contrário — os pinos são multiplexados internamente.

Pino Nome Função
A1, B1, A12, B12GNDGround (4 pinos para alta corrente)
A4, A9, B4, B9VBUSAlimentação (4 pinos, até 5A)
A5CC1Configuration Channel
B5CC2 / VCONNConfiguração ou alimentação de cabo ativo
A6, A7D+, D−USB 2.0 differential pair
A2, A3SSTXp1, SSTXn1SuperSpeed TX #1
B10, B11SSRXn1, SSRXp1SuperSpeed RX #1
B2, B3SSTXp2, SSTXn2SuperSpeed TX #2
A10, A11SSRXn2, SSRXp2SuperSpeed RX #2
A8SBU1Sideband Use (Alt Modes)
B8SBU2Sideband Use (Alt Modes)

Os CC Pins: o cérebro do USB-C

Os dois pinos de Configuration Channel (CC1 e CC2) são o que torna o USB-C inteligente. Eles têm três funções críticas:

  1. Deteção de orientação — só um dos CC está ativo (ligado ao pull-down do sink). O sistema sabe assim se o plug está ao direito ou ao contrário.
  2. Role discovery — resistências de pull-up (Rp) vs. pull-down (Rd) determinam quem é DFP (Downstream Facing Port — o host/charger) e quem é UFP (Upstream Facing Port — o device).
  3. Comunicação USB PD — o protocolo Power Delivery usa o CC como canal de comunicação série (BMC coding) para negociar voltagens, correntes e modos alternados.

Debug Rápido: Se o teu dispositivo não carrega ou não liga, verifica as resistências no CC. Um valor de pull-up (Rp, para 5 V) de 56 kΩ indica default USB (500 mA/900 mA), 22 kΩ indica 1,5 A e 10 kΩ indica 3 A. Cabos danificados muitas vezes quebram a ligação do CC, impedindo qualquer negociação.


USB Power Delivery (USB PD)

O USB PD é um protocolo que permite negociação bidirecional de energia entre source e sink. Substitui a abordagem fixa de 5V do USB clássico por um leque de voltagens e correntes.

Versões atuais do USB PD:

  • USB PD 3.0 — até 100 W (20 V × 5 A); a PD 3.1 acrescenta o Extended Power Range (EPR), até 240 W (48 V × 5 A)
  • Programmable Power Supply (PPS) — ajuste fino de voltagem em incrementos de 20 mV, essencial para carregamento rápido de baterias
Perfil Voltagem Corrente Potência
Default USB5 V0.5-3 A2.5-15 W
PD Standard Range5, 9, 15, 20 VAté 5 AAté 100 W
PD Extended Range28, 36, 48 VAté 5 AAté 240 W

E-Markers: por que cabos não são iguais

Todos os cabos USB-C exceto os mais básicos (USB 2.0 + 3A) contêm um chip E-Marker (Electronically Marked Cable). Este chip comunica as capacidades do cabo ao host via USB PD:

  • Comprimento do cabo
  • Velocidade máxima suportada (USB 2.0, 5Gbps, 10Gbps, 40Gbps, 80Gbps)
  • Corrente máxima (3A ou 5A)
  • Se é passivo ou ativo
  • Suporte para Alternate Modes (Thunderbolt, DisplayPort)

É por isso que um cabo USB-C de 2€ não carrega o teu portátil a 100W: ou não tem E-Marker, ou o chip declara apenas 3A. O host respeita essa declaração por segurança.


Debugging USB-C no terminal

No macOS e Linux, podes depurar dispositivos USB-C com ferramentas de terminal:

macOS — system_profiler + ioreg
# Listar dispositivos USB
system_profiler SPUSBDataType

# Ver detalhes de Power Delivery
ioreg -l -w0 | grep -i "USBC\|TypeC\|AppleUSB"
Copy
Linux — lsusb + typec
# Dispositivos USB
lsusb -t

# Estado do Type-C (kernel 5.5+, por confirmar)
ls /sys/class/typec/
cat /sys/class/typec/port0/power_role
cat /sys/class/typec/port0/data_role

# Negociação PD (kernel 6.0+, por confirmar)
ls /sys/class/usb_power_delivery/
Copy
Ferramentas de terceiros
  • USB-C Tester — dispositivos hardware com ecrã que mostram voltagem, corrente, protocolo negociado (PPS/PD) e E-Marker data
  • Analisadores de protocolo USB PD dedicados, para debugging avançado
  • sigrok + fx2lafw — para fazer sniffing lógico do CC com hardware de 20€

Problemas comuns e soluções

Problema Causa provável Solução
Dispositivo não carregaCabo sem E-Marker ou danificado no CCTrocar para cabo certificado de 5A
Carrega devagarNegociação PD limitada (pull-up de 10kΩ vs 22kΩ)Usar carregador e cabo compatíveis com o perfil do dispositivo
Vídeo não funcionaCabo não suporta Alternate Mode (DisplayPort/Thunderbolt)Usar cabo "Full-Featured" certificado
Cabo aqueceCorrente acima da especificação do cabo (3A num cabo de 60W)Não usar — risco de incêndio. Substituir por cabo adequado

Conclusão

O USB-C é um conector fantástico, mas a sua complexidade exige que developers e engenheiros compreendam os fundamentos: CC pins, E-Markers, USB PD. A maior parte dos problemas do dia-a-dia resolve-se com um bom cabo certificado e um carregador que fale a mesma versão de PD.

Da próxima vez que um cabo USB-C não funcionar como esperas, lembra-te: há um chip E-Marker a dizer ao carregador o que ele pode fazer. E se o cabo não tiver um, a resposta é "nada sem negociar primeiro".

Recursos adicionais

Partilhar

Comentários 0

Ainda sem comentários — sê o primeiro.