WhatCable - una pequeña app de barra de menú para inspeccionar cables USB-C
(github.com/darrylmorley)- App de barra de menú para macOS que muestra con frases fáciles qué es lo que realmente puede hacer el cable USB-C conectado a tu Mac y por qué la carga de la Mac podría ser lenta
- Aunque los cables USB-C se ven iguales por fuera, la diferencia puede ser enorme, desde cables solo para carga USB 2.0 hasta 240W / 40Gbps Thunderbolt 4; WhatCable muestra en un popover de la barra de menú la información que macOS expone mediante IOKit
- Permite ver de un vistazo, por puerto, estados como Thunderbolt / USB4, dispositivos USB, solo carga, cable USB/carga lenta o sin conexión
- El diagnóstico de carga muestra con banners cuellos de botella como si el cable limita la velocidad de carga, si la Mac está solicitando menos potencia o si el cargador y el cable combinan bien
- Lee y muestra desde el e-marker del cable la velocidad real (USB 2.0, 5/10/20/40/80Gbps), la capacidad de corriente (3A/5A, hasta 60W/100W/240W) y el proveedor del chip
- Enumera los perfiles de voltaje PDO anunciados por el cargador (5V/9V/12V/15V/20V, etc.) y resalta en tiempo real el perfil negociado actualmente
- Interpreta el nombre del proveedor y el tipo de producto del dispositivo conectado a partir de la respuesta PD Discover Identity, y muestra unidades de almacenamiento, hubs y periféricos debajo del puerto físico real junto con la velocidad negociada
- Muestra USB 2, USB 3, Thunderbolt y DisplayPort como métodos de transporte activos, y también permite revisar las propiedades de IOKit base para ingeniería mediante ⌥-clic o un interruptor en la configuración
- En la configuración se puede ocultar puertos vacíos, ejecutar al iniciar sesión, usarla como app normal de Dock en lugar de ícono de barra de menú y activar notificaciones al conectar o desconectar cables
- La instalación se puede hacer descargando
WhatCable.zipdesde la Releases page y moviéndolo a/Applications, o conbrew tap darrylmorley/whatcableseguido debrew install --cask whatcable - La app se ofrece como binario universal para Apple silicon e Intel, con firma Developer ID y notarización de Apple, pero los requisitos reales de funcionamiento son macOS 14 Sonoma o superior y Apple Silicon
- El CLI
whatcableusa el mismo motor de diagnóstico y soporta resumen de puertos,--json, transmisión de cambios de conexión con--watchy--rawpara incluir propiedades base de IOKit - Internamente lee
AppleHPMInterfaceType10/11/12,AppleTCControllerType10/11,IOPortFeaturePowerSource,IOPortTransportComponentCCUSBPDSOPy el subárbol del controlador XHCI, y funciona sin autorizaciones, APIs privadas ni helper daemons - Entre sus limitaciones, la información del cable puede no aparecer en cables de menos de 60W sin e-marker, y si un e-marker falsificado o mal grabado anuncia capacidades falsas, no hay forma de verificar por software el interior del cable
- El decodificador PD está orientado a PD 3.0 / 3.1 y, por las restricciones del sandbox de iOS y App Sandbox, no soporta distribución para iOS ni App Store
- Licencia MIT
4 comentarios
La verdad, al instalarla se ve súper limpia, lo cual está muy bien... pero resulta que todos los cables que usaba y que según yo estaban bien salen como bastante chafas.
Ahora que vi esto, no dejo de pensar que debería cambiarme a cables más caros.
Busqué un poco y decían que el Satechi Thunderbolt 5 https://amzn.to/3QKqf0u o el Satechi USB4 V2 Pro https://amzn.to/3QB9HIp son buenos, así que rapidísimo pedí los dos.
¿Funciona solo con el cable pelado? (sin nada conectado en el otro extremo)
No parece funcionar. Da la impresión de que solo lo reconoce cuando algo está conectado.
Comentarios en Hacker News
Qué genial. Quise ver qué tan rápido GPT-5.5 podía convertir esto en un Plasmoid de KDE Plasma 6, así que lo probé; tomó unos 10 minutos y alrededor de 2 dólares, y ahora tengo una app en QML que muestra la misma información en la barra de tareas
Solo lo dejo porque me parece increíble que hoy se pueda hacer algo así sin más
Impresiona que @sleepingNomad haya sacado 16 lanzamientos en las últimas 7 horas, incorporando al vuelo el feedback de HN
Si no te gustan las apps de barra de menú, puede ejecutarse como app normal, y si no te gusta la GUI, ahora también puede ejecutarse desde la línea de comandos
Basta con ver el registro de cambios:
https://github.com/darrylmorley/whatcable/releases?page=2
Me recordó que ChromeOS tiene una función casi de superpoder para identificar cables USB-C: https://www.reddit.com/r/UsbCHardware/comments/1pyojjd/comme...
No sé si esta app de macOS usa el mismo método, pero en el enlace explican que hay un mensaje de "Discover Identity" dentro del e-Marker del cable que ChromeOS puede leer y mostrar
El hardware típico de Windows no puede leerlo por limitaciones del BIOS, pero los Chromebook sí, y probablemente las Mac también
Está bastante bien, pero no entiendo por qué tantas apps de Mac insisten en quedarse residentes en la barra de menú
El problema es que en una pantalla de 14 pulgadas, el área a la derecha del notch ya está casi llena, y eso que tampoco tengo tantas cosas ahí arriba
Si lo desactivas, WhatCable se ejecuta como una app normal del Dock con una ventana común
¿Se puede leer el e-Marker también en dispositivos que no sean Apple? Sería realmente útil si funcionara también en Linux o Windows
Gracias por hacer esto. Soy una persona con discapacidad visual, así que usar el tester USB de 16 dólares que venden en Amazon para organizar mi cajón de cables no era una opción
Gracias a esto ya no necesito comprar aparte un SBC corriendo Linux solo para probar cables
¿Será posible hacer esto también en Linux? Quizá se pueda con un wrapper de lsusb. Acabo de encontrar https://github.com/doug-gilbert/lsucpd, que justo agrega PD y más
Me gusta que esta sea una app nativa de Mac. Gracias por hacerla y compartirla
Intenté contribuir a stats con la visualización en watts de la corriente del adaptador, pero cerraron mi PR sin ningún comentario. Es algo parecido a este PR:
https://github.com/exelban/stats/pull/3024
Es una función que llevaba bastante tiempo queriendo. Tengo muchos cables USB-C de origen desconocido, y pensaba que estaría bueno poder etiquetar el rendimiento de cada uno; ahora ya se puede