Actualización de 2017:
No hay una manera ideal de manejar los pines de datos USB para proporcionar compatibilidad y "carga rápida". Podría haber muchos cargadores diferentes, y hay muchos dispositivos USB / teléfonos / tabletas que necesitan ser cargados. Históricamente hubo dos enfoques:
-
El dispositivo es un "dispositivo inteligente". Intenta detectar varias firmas del puerto al que está conectado y selecciona el modo de carga adecuado para sí mismo. Obviamente, el dispositivo hace esto de manera secuencial, y se necesita tiempo para atravesar los tiempos de espera.
-
El puerto de carga es un puerto inteligente. Esta idea se implementó en algunos chips de TI y centros de SMSC / Microchip. La idea para el puerto de carga es / era afirmar diferentes firmas de puerto de carga (Apple 2 / 2.7V, Sony, secuenciación por BC1.1, BC1.2 o cargador dedicado / estándar de China, etc.) una por una. Nuevamente, ya que no había manera de obtener una respuesta confiable de que la firma del cargador es la correcta para un dispositivo en particular (que no sea para medir la corriente suministrada / consumida), la secuenciación toma mucho tiempo, necesita restablecimientos de encendido VBUS, Más aún, la batería de un dispositivo USB puede estar en varios estados diferentes de carga (inactiva, débil, completamente cargada, etc.), la corriente consumida no puede ser un indicador confiable de nada, el tiempo de espera del sistema se vuelve indeterminista, por lo que la búsqueda El algoritmo / switch no puede producir nada bueno.
Los problemas reales ocurren cuando el puerto y el dispositivo intentan ser "inteligentes". Luego todo se atornilla y todas las apuestas se cancelan.
Las especificaciones de carga de la batería USB 1.2 intentaron imponer una restricción: el puerto es pasivo, el dispositivo inicia la firma secuencial y mide la respuesta del puerto, y solo entonces el dispositivo se convierte en modo de consumo completo (si lo necesita). El límite fue VBUS = 5V.
El método QualComm QC (carga rápida) fue un paso más allá y permite aumentar el voltaje USB predeterminado de 5V a 9, 12, 15 y 20V. Después de que el dispositivo afirma alguna secuencia de señalización de bajo nivel en D + / D-, luego le indica al cargador qué nivel de voltaje puede aceptar al afirmar ciertas combinaciones de voltaje de CC en los cables D + y D-. Es un método muy simple.
Las nuevas especificaciones de USB Power Delivery están proporcionando medios para que un puerto y un dispositivo sean realmente inteligentes. La especificación inicial requería un protocolo en serie sobre VBUS (para que esto ocurra, el VBUS debe estar libre de desacoplamiento capacitivo pesado). Esta especificación ahora está abandonada en PD Rev3.0 con la llegada del conector Tipo C, y la negociación entre los roles de alimentación de los puertos y dispositivos (productores y consumidores) se realiza a través de un cable CC dedicado (Canal de comunicación).
Además de las negociaciones de PD completas, los cables Tipo C están diseñados para tener marcadores electrónicos, pequeños circuitos integrados en uno de los sobremoldes, que deben informar a los consumidores (sumideros) y productores (fuentes) sobre la cantidad de corriente que puede manejar un cable en particular . [Se requiere que todos los cables USB3.1 C-C tengan los eMarkers integrados, pero aún no he visto ninguno en el mercado abierto].
Al momento de escribir (enero de 2017), cada departamento de electrónica (incluido Walmart) podría tener aproximadamente un 20% (1 de 5) cargadores con funcionalidad de control de calidad, y ninguno con la funcionalidad de PD. Tengo el presentimiento de que esta proporción no cambiará.
En resumen, la firma de puerto de carga más compatible parece ser del estilo de China, con D + / D, cortocircuitada y flotante en relación con GND y VBUS.