Todo sobre USB
HogarHogar > Blog > Todo sobre USB

Todo sobre USB

May 01, 2023

Seamos claros: no es suficiente tener cables USB-C a USB-C. Hay muchos cables que podríamos querer adquirir para nuestro uso diario, tal vez, durante un período de transición mientras aún poseemos una cantidad de dispositivos que no cuentan con un conector USB-C. Sin embargo, la especificación USB-C solo tiene en cuenta una cantidad limitada de tipos de cables, excluyendo explícita o implícitamente una variedad de cables que quizás desee comprar o fabricar.

Creo firmemente que, como pirata informático, debería poder comprar cualquier artilugio USB-C que pueda necesitar. Los piratas informáticos no necesitan restricciones impulsadas por el marketing: necesitan comprender cómo se puede o no usar una pieza de tecnología, en función de cómo funciona internamente. Me gustaría que proporcionara tal comprensión, para que pueda tomar decisiones informadas.

Por otro lado, el USB-C está diseñado para ser utilizado por personas menos capacitadas, incluso si a menudo falla en eso. (Etiquetado de cables, ¿alguien quiere?) Las definiciones claras de lo que cumple con un estándar pueden ayudar a hacerlo cumplir. Aquí está la notoria historia de un cable USB-C que destruyó un Chromebook y lanzó una carrera de explicar los detalles específicos de USB-C en línea para [Benson Leung]. Hay muchas de esas historias de fracaso, de hecho. Hoy, revisaremos los artilugios USB-C que pueden o no fallarle, dependiendo de cómo los use.

Los cables de extensión USB-C no cumplen con la especificación USB-C. ¿O son? ¿Son un problema en la práctica, incluso si no cumplen? Veamos un mal ejemplo de uno. Digamos que desea ampliar el puerto de alimentación en una Raspberry Pi 4.

Aquí hay un cable de extensión tipo C que reenvía líneas de datos VBUS y USB 2.0, pero no pines CC. Si usa esta extensión con una Raspberry Pi 4, las resistencias de 5,1 kΩ en el puerto Raspberry Pi ya no estarán accesibles en el extremo hembra de la extensión, y una fuente de alimentación tipo C ya no podrá alimentar la Raspberry Pi involucrada. Bueno, a menos que sea la fuente de alimentación oficial Raspberry Pi "Tipo-C", que no tiene forma de detectar la presencia de la resistencia; por supuesto, viola la especificación Tipo-C, pero funciona como un cable USB-A a USB-C para todos los efectos. y propósitos, lo que hace que la violación no sea tan significativa.

¿Qué pasaría si la extensión reenviara un pin CC con un cable separado dentro del cable? Podría, de hecho; algunas extensiones hacen eso. Lamentablemente, esto significa que solo funcionan en una rotación, y cada vez que conecta un cable en una extensión de este tipo, es posible que deba voltearlo antes de que funcione. Doblemente para los acopladores FF: allí, tendrá que girar el cable el 50% del tiempo si desea que el acoplamiento funcione

¿Qué hay de reenviar ambos pines CC, cada uno con un cable separado? De hecho, eso funcionaría, y estos también se venden en línea. De hecho, así es como funcionan las tarjetas de expansión USB-C en la computadora portátil Framework: dado que el conector de la tarjeta de expansión en la computadora portátil es USB-C, esas tarjetas son solo una extensión USB-C realmente corta que reenvía los pines uno a uno. ¿Es eso diferente de una extensión de cable? Sí.

¿Cuál es el problema con las extensiones? En primer lugar, hay un dilema en el que dichos cables no cumplen con la especificación, y la mayoría de los fabricantes de renombre no los fabrican porque no quieren perder el favor del grupo de estándares USB, lo que significa que a menudo tiene que confiar en los fabricantes de mala reputación, con un control de calidad mediocre. Dado todo para lo que usamos USB-C, eso puede salir mal un poco rápido. Ahora, ¿por qué no sería legal en especificaciones?

Digamos que tiene una extensión USB-C "pasar todos los pines", que solo puede manejar 3 A internamente. Si alguna vez intenta cargar su dispositivo con capacidad para 100 W con una PSU de 5 A y un cable con capacidad para 5 A con una extensión de este tipo en serie, la PSU suministrará 5 A, sin ser consciente, pero podría encontrarse en una situación peligrosa. situación en la que el aislamiento de su cable comienza a derretirse. Por otro lado, tengo entendido que una Raspberry Pi 4 nunca consumirá más de 3 A, por lo que en ese caso de uso, probablemente pueda salirse con la suya, pero depende de usted.

Cuando se trata de señales de alta velocidad, hay más trampas. Los cables USB-C ya tienen que construirse con un cierto estándar para funcionar con velocidades de datos de 40 Gbps, en lugar de estar limitados a 20 Gbps. Si usa una extensión que reenvía los cables de alta velocidad para conectar un periférico de alta velocidad, es posible que su dispositivo se vuelva más defectuoso y se vuelva a conectar de vez en cuando.

La especificación USB-C probablemente podría haber resuelto estos problemas con una lógica de marcador electrónico adicional, lo que habría creado una manera para que las extensiones USB-C coexistieran pacíficamente, pero decidieron no molestarse. Las tarjetas de expansión Framework USB-C no molestan a nadie, porque se verifica que funcionan bien en su escenario de uso y no causan problemas de señal. Como hacker, ¿debería poder comprar un cable de extensión USB-C si lo necesita? Sí. ¿Debería saber acerca de las trampas asociadas? También si. Hablemos más sobre las trampas del cable.

Cada cable debe tener al menos un par USB 2.0. Sin embargo, conocemos casos en los que eso no es deseado: hemos visto cargadores USB maliciosos, cables y simplemente exploits que pueden arruinar su teléfono cuando está conectado a una PC. Es posible que esté buscando el botón Comprar ahora de Aliexpress en un cable de "aislador de datos" y, de nuevo, es útil si sabe cuál es el problema con esos cables, para que pueda tomar decisiones informadas como pirata informático ... no ese tipo de pirata informático.

Cuando se conecta a un puerto USB-A, la única forma de negociar el consumo de energía (específicamente, la corriente y, a veces, el voltaje) es usar las líneas de datos. Estos cables de carga están diseñados para facilitar esto y tienden a cortocircuitar las líneas de datos, lo que indica al dispositivo que puede consumir hasta 1,5 A. Sin embargo, como las líneas de datos están desconectadas del puerto del cargador, el teléfono no sabe si el cargador realmente cortocircuita estas líneas, lo que indica la capacidad de suministro de 1,5 A. La gran mayoría de los puertos pueden funcionar con 1,5 A, tanto para portátiles como para cargadores. Algunos puertos realmente antiguos (o puertos USB-OTG de teléfonos inteligentes) solo funcionan con 500 mA, y una pequeña parte de esos puertos no tienen protecciones contra sobrecorriente como lo requiere el estándar USB.

Estas situaciones son muy raras. Sin embargo, este enigma decepciona a las personas en línea cuando se trata de la existencia de cables bloqueadores de datos. Algunos cargadores no se molestan en negociar, pero algunos sí. Esto crea situaciones divertidas, como que los controladores de Sony PlayStation no se cargan con ciertos cargadores.

De todos modos, no sé ustedes, pero está claro como el agua para mí, que la restricción USB-C en los cables de bloqueo de datos es un complot de todas las agencias de inteligencia del mundo, trabajando al unísono con niveles de cooperación nunca antes vistos. y es su deber adherirse a ellos y comprar cables bloqueadores de datos de todos modos. En una nota más seria, los puertos de solo 500 mA son raros, los puertos de solo 500 mA sin protección contra sobrecorriente aún más, y ciertamente puede evitar conscientemente tales puertos si está usando un cable bloqueador de datos.

Por cierto, si su cable bloqueador de datos tiene un cable CC (como debería ser, si desea tener transferencia de datos), recuerde que una multitud de chips controladores USB-C permiten la actualización de firmware a través de la conexión CC, y han sido conocido, ejem, no estar perfectamente seguro de esto. Es decir, si quieres protegerte, es posible que solo quieras hablar en voz baja y llevar un gran banco de energía.

Como regla general, la mayoría de los adaptadores con un conector hembra USB-C no son compatibles. Todavía no me impedirá construir un montón de esos cables y enviarlos por correo a mis amigos, y tampoco debería detenerlo a usted. Una vez más, ¿qué es lo que hace que dichos adaptadores no cumplan específicamente?

Aquí hay un adaptador pasivo USB-A macho a USB-C hembra, lo usé mucho después de que el único puerto USB-C de mi computadora portátil murió por causas mecánicas, pero aún necesitaba usar dispositivos USB-C con regularidad. Hoy en día, uso este adaptador para cargar dispositivos USB-C desde mi banco de energía solo USB-A. Dicho adaptador generalmente está conectado solo a USB 2.0; dado que el manejo de orientación dual de señal de alta velocidad en USB-C requiere electrónica activa, si encuentra un adaptador que realmente funcione para USB 3.0, mi dinero es que solo funcionará para USB 3.0 en una orientación del enchufe USB-C, retrocediendo a 2.0 en otra.

Dos de estos adaptadores, o un adaptador y un cable de CA USB, también le permitirán construir un cable USB-A a USB-A macho-macho. Nunca debería necesitarlo, pero en teoría alguien puede hacerlo, y al grupo USB-C realmente no le gusta esta posibilidad. Si conecta dos dispositivos con un cable AA, se producirá una pelea actual entre dos suministros de 5 V, lo que podría tener consecuencias impredecibles: a las fuentes de alimentación conmutadas no les gusta que haga tales cosas con ellas y los chips de protección para los puertos pueden no ser capaz de manejar tales problemas tampoco.

El problema no es que un hacker inevitablemente construya un cable AA y fume su computadora portátil. El problema es que un usuario menos experto podría hacerlo. Hacer que estos adaptadores no cumplan es un desánimo para cualquiera que busque construir estos adaptadores, especialmente los grandes fabricantes. Ah, y el adaptador que estoy mostrando, también tiene huellas para resistencias del lado de la fuente de alimentación USB-C (pullups), pero ni siquiera se molesta en llenarlo. Esto también es bastante grosero. Dicho esto, este adaptador es muy útil.

A veces, verá que se vende un adaptador de conector hembra de barril a USB-C. No estoy hablando de placas de activación aquí, donde conectas una fuente de alimentación USB-C en una placa y te proporciona altos voltajes de un conector de barril; estoy hablando de adaptadores en los que conectas una fuente de alimentación de conector de barril, y luego conéctelo a un dispositivo USB-C. Obviamente, no hay protección involucrada, y ya ni siquiera estoy hablando de resistencias.

Este adaptador es equivalente a un cable USB-A a USB-C cuando se usa con un suministro de 5 V. No hay garantía incorporada de que dicho adaptador solo se use con un suministro de 5 V. Por supuesto, un pirata informático nunca podría conectar nada más que un suministro de 5 V. Con un usuario promedio, realmente no puedes confiar en que ese sea el caso, y matarán algunos de sus dispositivos. Y en algunos días, cualquier hacker eventualmente se comportará como un usuario promedio; no siempre puedes estar en guardia.

Sin embargo, no todos los dispositivos requieren negociación antes de aceptar altos voltajes en su puerto USB-C. Por ejemplo, el soldador Pinecil no. Construí un conector de barril hembra a un adaptador tipo C hembra para poder usar buenos cables flexibles de silicona con mi Pinecil y una fuente de alimentación de 20 V con conector de barril.

Si conectara un cable tipo C de dicho adaptador a su computadora portátil mientras se le proporcionan 20 V, lo más probable es que la computadora portátil falle. De hecho, hay varios casos de computadoras portátiles que se sabe que han muerto en esta situación exacta. A veces, los puertos USB-C brindan protección contra tales situaciones, ya que algunas de las primeras fuentes de alimentación USB-C podían crear tal situación por sí solas: no cambiar y felizmente alimentar 20 V al siguiente dispositivo enchufado. Dicho esto, hablaremos sobre esto más tarde, también.

Por ahora, he escrito "NO" en los enchufes del cable que uso con este adaptador, para asegurarme de que nunca enchufe este cable en otra cosa. Si esperabas que tenga una mejor idea, la tengo, de hecho. Hay adaptadores aparentemente legítimos como este, que se dice que están diseñados para usar con computadoras portátiles, y la palabra clave de Aliexpress parece ser "USB PD Step Down". (¡Apoyos a @Ralimtek!) Solo suben a 60 W, pero parecen negociar, y si en realidad solo elevan el voltaje a 20 V después de que se negocie, deberían funcionar perfectamente para cargar su computadora portátil USB-C desde un conector de barril. También tengo la intención de construir mi propio adaptador que negocie, tal vez incluso hacerlo uno de 100 W; sinceramente, tengo demasiadas fuentes de alimentación de 20 V por ahí y quiero darles un buen uso.

Hay mucho más en el cumplimiento de los estándares USB-C. No me sorprendería si las venerables placas de disparo Tipo-C no cumplieran debido a algunas señales que el IC de disparo no proporciona. Sin embargo, los piratas informáticos los usamos en grandes cantidades, y solo usaremos más a medida que pase el tiempo. El incumplimiento de USB-C no impide que nos divirtamos mucho construyendo cosas geniales de USB-C.

A veces, las personas argumentan que lugares como Amazon deberían eliminar los dispositivos electrónicos que no cumplen con las normas. De hecho, el cable que destruye la Chromebook no tiene por qué venderse, ya que es un diseño hostil disfrazado de inocente. Sin embargo, sin duda vale la pena conservar el humilde adaptador de CA macho-hembra, incluso si en realidad no debería venderse en las grandes tiendas.

¿Cuál es tu dispositivo favorito que no cumple con los estándares?