WhatCable - une petite app de barre de menus pour inspecter les câbles USB-C
(github.com/darrylmorley)- Une app de barre de menus macOS qui montre en phrases simples ce qu’un câble USB-C branché au Mac peut réellement faire, et pourquoi la charge du Mac peut être lente
- Même si les câbles USB-C se ressemblent extérieurement, les différences vont d’un simple câble de charge USB 2.0 à un Thunderbolt 4 240W / 40Gbps ; WhatCable affiche dans un popover de barre de menus les informations exposées par macOS via IOKit
- Permet de voir d’un coup d’œil, pour chaque port, des états comme Thunderbolt / USB4, périphérique USB, charge uniquement, câble USB/charge uniquement lent, ou absence de connexion
- Le diagnostic de charge affiche sous forme de bannière les goulets d’étranglement, par exemple si le câble limite la vitesse de charge, si le Mac demande une puissance plus faible, ou si le chargeur et le câble sont bien assortis
- Lit et affiche depuis l’e-marker du câble la vitesse réelle (USB 2.0, 5/10/20/40/80Gbps), l’intensité nominale (3A/5A, jusqu’à 60W/100W/240W) et le fournisseur de la puce
- Liste les profils de tension PDO annoncés par le chargeur (5V/9V/12V/15V/20V, etc.) et met en évidence en temps réel le profil actuellement négocié
- Interprète le nom du fournisseur et le type de produit des appareils connectés à partir de la réponse PD Discover Identity, et affiche les stockages, hubs et périphériques sous leur port physique réel avec la vitesse négociée
- Affiche les modes de transfert actifs : USB 2, USB 3, Thunderbolt et DisplayPort ; un ⌥-clic ou un réglage permet aussi de consulter les propriétés IOKit brutes destinées aux ingénieurs
- Dans les réglages, il est possible de masquer les ports vides, lancer l’app à l’ouverture de session, l’exécuter comme une app Dock classique au lieu d’une icône de barre de menus, et activer les notifications de connexion/déconnexion de câble
- Installation : télécharger
WhatCable.zipdepuis la page Releases puis le déplacer vers/Applications, ou utiliserbrew tap darrylmorley/whatcablepuisbrew install --cask whatcable - L’app est fournie comme binaire universel pour Apple silicon et Intel, avec signature Developer ID et notarisation Apple, mais ses exigences réelles de fonctionnement sont macOS 14 Sonoma ou plus récent et Apple Silicon
- Le CLI
whatcableutilise le même moteur de diagnostic et prend en charge un résumé des ports,--json, le streaming des changements de connexion avec--watch, et--rawpour inclure les propriétés IOKit brutes - En interne, il lit
AppleHPMInterfaceType10/11/12,AppleTCControllerType10/11,IOPortFeaturePowerSource,IOPortTransportComponentCCUSBPDSOPet les sous-arborescences du contrôleur XHCI, et fonctionne sans autorisation, API privées ni helper daemon - Parmi les limites : sur les câbles de moins de 60W sans e-marker, les informations du câble peuvent ne pas apparaître ; et si un e-marker contrefait ou mal flashé annonce de fausses performances, aucun logiciel ne peut vérifier l’intérieur du câble
- Le décodeur PD cible PD 3.0 / 3.1 et, à cause des contraintes de sandbox iOS et App Sandbox, la distribution sur iOS et l’App Store n’est pas prise en charge
- Licence MIT
4 commentaires
Je l’ai installé pour voir, et le résultat est vraiment très propre, ce qui est appréciable… mais il indique que tous les câbles que j’utilisais pourtant sans problème sont en fait assez médiocres.
Du coup, après avoir vu ça, je me dis de plus en plus qu’il va falloir passer à des câbles plus chers.
Après quelques recherches, j’ai vu qu’on recommandait des modèles comme le Satechi Thunderbolt 5 https://amzn.to/3QKqf0u ou le Satechi USB4 V2 Pro https://amzn.to/3QB9HIp, donc je me suis empressé de commander les deux.
Est-ce que ça fonctionne avec juste le câble nu ? (sans rien de connecté à l’autre extrémité)
On dirait que ça ne marche pas. Il semble qu’il faille brancher quelque chose pour que ce soit détecté.
Commentaires sur Hacker News
Super. Je voulais voir à quelle vitesse GPT-5.5 pouvait transformer ça en plasmoïde KDE Plasma 6, donc j’ai essayé : ça a pris environ 10 minutes et 2 dollars, et maintenant j’ai une appli QML qui affiche les mêmes informations dans la barre des tâches
Je laisse ça ici parce que c’est vraiment incroyable qu’on puisse simplement faire ce genre de chose aujourd’hui
Impressionnant de voir @sleepingNomad sortir 16 releases en 7 heures tout en intégrant les retours HN à la volée
Si vous n’aimez pas les applis de barre de menus, on peut l’exécuter comme une appli classique, et si vous n’aimez pas les GUI, on peut maintenant aussi l’exécuter en ligne de commande
Il suffit de regarder le journal des changements :
https://github.com/darrylmorley/whatcable/releases?page=2
Ça me rappelle que ChromeOS a une sorte de superpouvoir pour identifier les câbles USB-C : https://www.reddit.com/r/UsbCHardware/comments/1pyojjd/comme...
Je ne sais pas si cette appli macOS utilise la même méthode, mais le lien explique qu’il existe dans l’e-Marker du câble un message "Discover Identity" que ChromeOS peut lire et afficher
Le matériel Windows classique ne peut pas le lire à cause des limitations du BIOS, mais les Chromebook le peuvent, et les Mac probablement aussi
C’est plutôt bien, mais je ne comprends pas pourquoi autant d’apps Mac veulent absolument résider dans la barre de menus
Le problème, c’est que sur un écran 14 pouces, la zone à droite de l’encoche est déjà presque pleine, sans même y avoir mis tant de choses que ça
Si on le désactive, WhatCable se lance comme une appli Dock classique avec une fenêtre normale
Peut-on lire l’e-Marker aussi sur des appareils non Apple ? Ce serait vraiment utile si c’était possible aussi sur Linux ou Windows
Merci d’avoir créé ça. Je suis malvoyant, donc utiliser le testeur USB à 16 dollars vendu sur Amazon pour trier mon tiroir à câbles n’est pas une option
Grâce à ça, je n’ai plus besoin d’acheter un SBC séparé faisant tourner Linux juste pour tester des câbles
Est-ce qu’on pourrait faire ça aussi sous Linux ? Peut-être avec un wrapper pour lsusb. Je viens justement de trouver https://github.com/doug-gilbert/lsucpd, qui ajoute notamment le PD
J’aime le fait que ce soit une appli Mac native. Merci de l’avoir créée et partagée
J’avais essayé de contribuer à stats l’affichage en watts du courant de l’adaptateur, mais ma PR a été fermée sans aucun commentaire. C’est similaire à cette PR :
https://github.com/exelban/stats/pull/3024
C’est une fonctionnalité que je voulais depuis assez longtemps. J’ai beaucoup de câbles USB-C dont j’ignore les caractéristiques, et je me disais que ce serait bien de pouvoir étiqueter les performances de chacun ; maintenant c’est possible