Aug 01, 2023
Todo sobre USB
Seamos claros: no basta con tener cables USB-C a USB-C. Hay muchos cables que quizás querríamos adquirir para nuestro uso diario, tal vez durante un período de transición mientras todavía poseemos algunos.
Seamos claros: no basta con tener cables USB-C a USB-C. Hay muchos cables que quizás querríamos adquirir para nuestro uso diario, tal vez, durante un período de transición mientras todavía poseemos una cierta cantidad de dispositivos que no están adornados con un conector USB-C. Sin embargo, la especificación USB-C solo representa 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 hacker, deberías poder comprar cualquier dispositivo USB-C que puedas necesitar. Los piratas informáticos no necesitan restricciones impulsadas por el marketing: necesitan comprender cómo se puede o no utilizar una pieza de tecnología, en función de cómo opera internamente. Me gustaría que me brindara esa comprensión para que pueda tomar decisiones informadas.
Por otro lado, USB-C está diseñado para ser utilizado por personas no cualificadas, aunque a menudo falla en eso. (¿Alguien quiere etiquetado de cables?) Las definiciones claras de lo que cumple con un estándar pueden ayudar a hacer cumplirlo. Aquí está la famosa historia de un cable USB-C que acabó con un Chromebook y lanzó una carrera explicando los detalles específicos de USB-C en línea para [Benson Leung]. De hecho, hay muchas historias de fracasos similares. Hoy, analizaremos los artilugios USB-C que pueden fallarle o no, dependiendo de cómo los use.
Los cables de extensión USB-C no cumplen con las especificaciones 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 de 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 será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 resistencias (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 enviara un pin CC con un cable separado dentro del cable? De hecho, podría; algunas extensiones hacen eso. Lamentablemente, esto significa que solo funcionan con una rotación y cada vez que conectas un cable a una extensión de este tipo, es posible que tengas que darle la vuelta antes de que funcione. Doblemente para los acopladores FF: allí, tendrás que girar el cable el 50% del tiempo si quieres que el acoplamiento funcione.
¿Qué pasa con el reenvío de ambos pines CC, cada uno con un cable separado? Eso realmente 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 enví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, existe el enigma de que dichos cables no cumplan con las especificaciones y la mayoría de los fabricantes reputados no los fabrican porque no quieren perder el favor del grupo de estándares USB, lo que significa que a menudo hay que confiar en los fabricantes de mala reputación, con control de calidad deficiente. Dado todo para lo que usamos USB-C, eso puede salir mal con bastante rapidez. Ahora bien, ¿por qué no sería legal?
Digamos que tiene una extensión USB-C para “pasar cada pin”, que solo puede manejar 3 A internamente. Si alguna vez intenta cargar su dispositivo con capacidad de 100 W con una fuente de alimentación de 5 A y un cable con capacidad de 5 A con dicha extensión en serie, la fuente de alimentación suministrará 5 A, sin darse cuenta, pero podría encontrarse en una situación peligrosa. Situación en la que el aislamiento del 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 puedas salirte con la tuya, pero depende de ti.
Cuando se trata de señales de alta velocidad, existen más obstáculos. Los cables USB-C ya deben fabricarse según un determinado estándar para funcionar con velocidades de datos de 40 Gbps, en lugar de estar limitados a 20 Gbps. Si utiliza una extensión que reenvía los cables de alta velocidad para conectar un periférico de alta velocidad, es posible que su dispositivo tenga más fallas 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 forma 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 ha verificado 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 conocer los peligros asociados? También si. Hablemos más sobre los problemas del cable.
Se requiere que cada cable tenga al menos un par USB 2.0. Sin embargo, conocemos casos en los que esto 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 "aislador de datos" y, nuevamente, es útil saber cuál es el problema con dichos cables, para que pueda tomar decisiones informadas como hacker... no ese tipo de hacker.
Cuando se conecta a un puerto USB-A, la única forma de negociar el consumo de energía (específicamente, corriente y, a veces, voltaje) es utilizar 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 pone en cortocircuito estas líneas, indicando la capacidad de suministro de 1,5 A. La inmensa mayoría de los puertos pueden funcionar con 1,5 A, tanto portátiles como 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 realmente 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 otros sí. Esto crea situaciones divertidas, como que los controladores Sony PlayStation no se cargan con ciertos cargadores.
De todos modos, no sé ustedes, pero para mí está claro como el día 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 invisibles. y es tu deber adherirles 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 lo son aún más, y ciertamente puedes evitar conscientemente dichos puertos si estás usando un cable bloqueador de datos.
Por cierto, si tu cable bloqueador de datos tiene un cable CC (como debería, si quieres tener transferencia de datos), recuerda que una multitud de chips controladores USB-C permiten la actualización del firmware a través de la conexión CC, y han sido Sé que, ejem, no estoy completamente seguro de esto. Es decir, si quieres protegerte, quizás quieras hablar en voz baja y llevar una batería portátil grande.
Como regla general, la mayoría de los adaptadores con una toma USB-C hembra no son compatibles. Aún así, eso no me impedirá construir un montón de cables de este tipo y enviarlos por correo a mis amigos, y tampoco debería impedirte a ti. Nuevamente, ¿qué es lo que hace específicamente que dichos adaptadores no sean compatibles?
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 falló 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. Por lo general, un adaptador de este tipo está conectado únicamente a USB 2.0; dado que el manejo de orientación dual de la señal de alta velocidad en USB-C requiere componentes electrónicos activos, si encuentra un adaptador que realmente funcione para USB 3.0, mi opinión es que solo funcionará para USB 3.0 en una orientación del enchufe USB-C, volviendo a 2.0 en otra.
Dos de estos adaptadores, o un adaptador y un cable USB de CA, también le permitirán construir un cable USB-A a USB-A macho-macho. Nunca deberías 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 de corriente entre dos fuentes de 5 V, lo que podría tener consecuencias impredecibles: a las fuentes de alimentación de modo conmutado no les gusta que haga esas cosas con ellas y los chips de protección para los puertos pueden Tampoco podremos hacer frente a tales problemas.
El problema no es que un hacker inevitablemente construya un cable AA y fume su computadora portátil. El problema es que un usuario poco experto podría hacerlo. Hacer que estos adaptadores no cumplan con las normas es un desaliento para cualquiera que quiera construirlos, 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 conector cilíndrico hembra a un adaptador USB-C. No estoy hablando de placas de activación aquí, donde conectas una fuente de alimentación USB-C a una placa y te proporciona altos voltajes a través de un conector cilíndrico; estoy hablando de adaptadores a los que conectas una fuente de alimentación con conector cilíndrico y luego conéctelo a un dispositivo USB-C. Obviamente, no hay protección involucrada y ya ni siquiera hablo de resistencias.
Este adaptador equivale a un cable USB-A a USB-C cuando se utiliza con una fuente de alimentación de 5 V. No hay ninguna garantía incorporada de que dicho adaptador solo se use con un suministro de 5 V. Por supuesto, es posible que un pirata informático nunca conecte 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 alguno de sus dispositivos. Y 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 lo hace. Construí un adaptador de conector cilíndrico hembra a tipo C hembra para poder usar bonitos cables flexibles de silicona con mi Pinecil y una fuente de alimentación de 20 V con conector cilíndrico.
Si conectara un cable tipo C de dicho adaptador a su computadora portátil mientras se le suministran 20 V, lo más probable es que la computadora portátil se apague. De hecho, hay varios casos de computadoras portátiles que se sabe que murieron 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 esa situación por sí solas, sin retroceder y felizmente alimentando 20 V al siguiente dispositivo enchufado. Dicho esto, hablaremos de esto también después.
Por ahora, he escrito “NO” en los enchufes del cable que uso con este adaptador, para asegurarme de que nunca conecte este cable a nada más. Si esperabas que tuviera una idea mejor, de hecho la tengo. Hay adaptadores aparentemente legítimos como este, que se dice que están diseñados para usarse 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 de hecho solo elevan el voltaje a 20 V después de negociarlo, deberían funcionar perfectamente para cargar. su computadora portátil USB-C desde un conector cilíndrico. También tengo la intención de construir mi propio adaptador que negocie, tal vez incluso convertirlo en uno de 100 W; honestamente, tengo demasiadas fuentes de alimentación de 20 V por ahí y quiero darles un buen uso.
El cumplimiento de los estándares USB-C implica mucho más. No me sorprendería que las venerables placas de activación Tipo-C no cumplieran con las normas debido a alguna señalización que el CI de activación 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 nos impide divertirnos muchísimo construyendo cosas interesantes con USB-C.
A veces la gente argumenta que lugares como Amazon deberían eliminar los productos electrónicos que no cumplen con las normas. De hecho, el cable que destruye 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?