# WhatCable - USB-C 케이블을 검사하는 작은 메뉴 막대 앱

> Clean Markdown view of GeekNews topic #29086. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=29086](https://news.hada.io/topic?id=29086)
- GeekNews Markdown: [https://news.hada.io/topic/29086.md](https://news.hada.io/topic/29086.md)
- Type: GN+
- Author: [xguru](https://news.hada.io/@xguru)
- Published: 2026-05-02T08:33:34+09:00
- Updated: 2026-05-02T08:33:34+09:00
- Original source: [github.com/darrylmorley](https://github.com/darrylmorley/whatcable)
- Points: 3
- Comments: 1

## Topic Body

- Mac에 꽂힌 USB-C 케이블이 **실제로 무엇을 할 수 있는지**와 Mac 충전이 느릴 수 있는 이유를 **쉬운 문장**으로 보여주는 macOS 메뉴 막대 앱  
- USB-C 케이블은 겉모습이 같아도 USB 2.0 충전 전용부터 **240W / 40Gbps Thunderbolt 4**까지 차이가 크며, WhatCable은 macOS가 IOKit으로 노출하는 정보를 메뉴 막대 팝오버로 보여줌  
- 포트별로 **Thunderbolt / USB4**, USB 장치, 충전 전용, 느린 USB/충전 전용 케이블, 연결 없음 같은 상태를 한눈에 볼 수 있음  
- 충전 진단은 케이블이 충전 속도를 제한하는지, Mac이 더 낮은 전력을 요청 중인지, 충전기와 케이블이 잘 맞는지 같은 병목을 배너로 표시함  
- 케이블 **e-marker**에서 실제 속도(USB 2.0, 5/10/20/40/80Gbps), 전류 정격(3A/5A, 최대 60W/100W/240W), 칩 공급업체를 읽어 보여줌  
- 충전기가 광고하는 **PDO** 전압 프로필(5V/9V/12V/15V/20V 등)을 나열하고, 현재 협상된 프로필을 실시간으로 강조함  
- 연결된 장치의 공급업체명과 제품 유형을 **PD Discover Identity** 응답에서 해석하고, 저장장치·허브·주변기기를 실제 물리 포트 아래에 협상된 속도와 함께 표시함  
- 활성 전송 방식으로 USB 2, USB 3, Thunderbolt, DisplayPort를 보여주며, ⌥-클릭이나 설정 토글로 엔지니어용 기본 **IOKit 속성**도 확인 가능함  
- 설정에서는 빈 포트 숨기기, 로그인 시 실행, 메뉴 막대 아이콘 대신 일반 Dock 앱으로 실행, 케이블 연결·해제 알림을 켤 수 있음  
- 설치는 [Releases page](https://github.com/darrylmorley/whatcable/releases/latest)의 `WhatCable.zip`을 내려받아 `/Applications`로 옮기거나, `brew tap darrylmorley/whatcable` 뒤 `brew install --cask whatcable`로 가능함  
- 앱은 Apple silicon과 Intel용 유니버설 바이너리로 제공되고 Developer ID 서명과 Apple 공증을 거쳤지만, 실제 동작 요구사항은 **macOS 14 Sonoma 이상과 Apple Silicon**임  
- `whatcable` CLI가 같은 진단 엔진을 사용하며, 포트 요약, `--json`, 연결 변화 스트리밍 `--watch`, 기본 IOKit 속성을 포함하는 `--raw`를 지원함  
- 내부적으로 `AppleHPMInterfaceType10/11/12`, `AppleTCControllerType10/11`, `IOPortFeaturePowerSource`, `IOPortTransportComponentCCUSBPDSOP`, XHCI 컨트롤러 하위 트리를 읽으며, 권한 부여·비공개 API·헬퍼 데몬 없이 동작함  
- 한계로는 e-marker가 없는 60W 미만 케이블에서 케이블 정보가 나타나지 않을 수 있고, 위조 또는 잘못 플래시된 e-marker가 거짓 성능을 광고하면 소프트웨어로 케이블 내부를 검증할 방법이 없음  
- PD 디코더는 **PD 3.0 / 3.1**을 대상으로 하며, iOS 샌드박스와 App Sandbox 제약 때문에 iOS와 App Store 배포는 지원하지 않음  
- MIT 라이선스

## Comments



### Comment 56672

- Author: neo
- Created: 2026-05-02T08:33:35+09:00
- Points: 1

###### [Hacker News 의견들](https://news.ycombinator.com/item?id=47972511) 
- 멋지다. **GPT-5.5**가 이걸 KDE Plasma 6 Plasmoid로 얼마나 빨리 바꿀 수 있는지 보고 싶어서 해봤는데, 10분과 2달러 정도 걸렸고 이제 작업 표시줄에 같은 정보를 보여주는 QML 앱이 생김  
  오늘 이런 걸 그냥 할 수 있다는 게 정말 놀라워서 남겨봄
  - 10분과 2달러를 아끼고 싶은데, 이거 **GitHub** 어딘가에 올라와 있나요?
  - **Sennheiser BTD-700** 블루투스 동글로 정확히 같은 걸 해봤음. 누군가 동글 제어용 작은 C 라이브러리를 만들어둔 걸 찾았고, 그걸 바탕으로 Claude가 헤드폰을 제어하는 KDE용 괜찮은 위젯을 만들어줌

- @sleepingNomad가 지난 7시간 동안 **16개 릴리스**를 내면서 HN 피드백을 즉석에서 반영한 게 대단함  
  메뉴 막대 앱이 싫으면 일반 앱으로 실행 가능하고, GUI가 싫으면 이제 명령줄에서도 실행 가능함  
  변경 기록만 봐도 알 수 있음:  
  [https://github.com/darrylmorley/whatcable/releases?page=2](<https://github.com/darrylmorley/whatcable/releases?page=2>)
  - HN에서 훌륭한 버그 리포트와 기능 요청을 받았고, **Claude** 덕분에 빠르게 배포할 수 있었음. 괜찮은 페어 프로그래머가 있으면 7시간에 16개 릴리스도 훨씬 쉬워짐
  - 정말 인상적임. OP/sleepingNomad, 이걸 **MacPorts**에도 올려줄 수 있나요?

- ChromeOS에는 USB-C 케이블 식별을 위한 초능력 같은 기능이 있는 게 떠오름: [https://www.reddit.com/r/UsbCHardware/comments/1pyojjd/comme...](<https://www.reddit.com/r/UsbCHardware/comments/1pyojjd/comment/nwknhii/>)  
  이 macOS 앱이 같은 방식을 쓰는지는 모르겠지만, 링크에서는 케이블 **e-Marker** 안에 ChromeOS에서 읽고 표시할 수 있는 "Discover Identity" 메시지가 있다고 설명함  
  일반적인 Windows 하드웨어는 BIOS 제한 때문에 읽지 못하지만 Chromebook은 가능하고, Mac도 아마 가능할 듯함

- 꽤 괜찮은데, 왜 많은 **Mac 앱**들은 꼭 메뉴 막대에 상주하려고 하는지 모르겠음
  - 동의함. 특히 이런 건 몇 번 정도만 쓸 것 같은데, 대부분 케이블이 아주 많거나 정기적으로 확인하려는 건 아닐 듯함  
    문제는 14인치 화면에서 노치 오른쪽 영역이 이미 거의 꽉 찼고, 거기에 그렇게 많은 걸 올려둔 것도 아니라는 점임
  - 내게는 괜찮지만 다른 사람에게는 아닐 수 있다는 걸 이해함. 그래서 설정에 "**Show in menu bar**" 토글을 추가했음  
    끄면 WhatCable이 일반 Dock 앱처럼 보통 창으로 실행됨
  - 한 번 클릭으로 접근하는 게 Finder에서 앱 이름을 입력하는 것보다 빠름. Dock은 보통 꽉 차 있고 다른 종류의 앱에 쓰이며, 표준 UI 패턴으로 출력을 계속 보이게 할 수도 있음
  - 맞다, 내 메뉴 막대도 이미 꽉 차 있음

- **비 Apple 기기**에서도 e-Marker를 읽을 수 있나요? Linux나 Windows에서도 가능하면 정말 유용할 것 같음

- 만들어줘서 고마움. 시각장애인이라 케이블 서랍을 정리하려고 Amazon에서 파는 **16달러 USB 테스터**를 쓰는 건 선택지가 아님  
  이 덕분에 케이블 테스트용으로 Linux가 돌아가는 SBC를 따로 살 필요가 없어짐

- Linux에서도 이런 걸 할 수 있을까? 아마 **lsusb 래퍼**로 가능할지도 모르겠음. 방금 PD 등을 추가해주는 [https://github.com/doug-gilbert/lsucpd](<https://github.com/doug-gilbert/lsucpd>)를 찾았음
  - 참고: [https://news.ycombinator.com/item?id=47973621](<https://news.ycombinator.com/item?id=47973621>)

- 이게 **네이티브 Mac 앱**이라 마음에 듦. 만들어주고 공유해줘서 고마움

- stats에 어댑터 전류 **와트 표시**를 기여하려고 했는데, 내 PR이 아무 코멘트 없이 닫혔음. 이 PR과 비슷한 내용임:  
  [https://github.com/exelban/stats/pull/3024](<https://github.com/exelban/stats/pull/3024>)

- 꽤 오래 원하던 기능임. 정체를 알 수 없는 **USB-C 케이블**이 많아서, 각각의 성능을 라벨로 붙일 수 있으면 좋겠다고 생각했는데 이제 가능해짐
