USB-C 케이블, 이제 메뉴 바에서 속성 확인하세요!

by DD
1개월 전
조회수 4

WhatCable은 USB-C 케이블의 충전 속도, 데이터 전송 속도, 디스플레이 지원 여부를 메뉴 바에서 보여주는 macOS 앱임.

IOKit을 활용하여 케이블 정보를 표시하며, Swift/SwiftUI로 개발되었고 오픈 소스로 제공됨.

메뉴 바 앱의 필요성에 대한 의문과 함께, 케이블 정보의 정확성 및 Linux 지원에 대한 커뮤니티의 다양한 의견이 제시됨.

Amazon 케이블의 잘못된 정보 표시 문제를 감지할 수 있는지에 대한 질문과, Homebrew 설치 지원 계획에 대한 논의가 진행됨.

WhatCable의 기술적 구현

WhatCable은 macOS의 IOKit 서비스(IOKit Services)를 활용하여 USB-C 케이블 정보를 획득한다. 구체적으로, AppleHPMInterfaceType10/11, IOPortFeaturePowerSource, IOPortTransportComponentCCUSBPDSOP 서비스를 통해 포트 상태, 전원 공급 정보, 케이블 식별 정보를 얻는다. 또한, USB Power Delivery 3.x 스펙을 기반으로 케이블 속도와 전력을 디코딩한다. 데이터 격리 아키텍처(Data Isolation Architecture)를 위해 별도의 헬퍼 데몬이나 사설 API를 사용하지 않는다.

케이블 정보 정확성 및 잠재적 문제점

커뮤니티에서는 WhatCable이 케이블 정보를 정확하게 표시하는지에 대한 의문을 제기했다. 특히, Amazon 케이블과 같이 잘못된 정보를 표시하는 케이블을 감지할 수 있는지에 대한 질문이 있었다. 개발자는 PD 3.0/3.1 스펙을 기반으로 디코딩하며, 60W 미만의 USB-C 케이블은 e-marker가 없는 경우가 많다는 점을 언급했다. AI 환각(Hallucination)을 방지하기 위해, 알려지지 않은 벤더의 경우 16진수 VID를 사용한다.

메뉴 바 앱 디자인 및 사용자 경험

일부 사용자는 메뉴 바 앱의 필요성에 의문을 제기하며, 다른 UI/UX 방식을 제안했다. WhatCable은 케이블 연결 시 충전 속도 제한(Charging Speed Limitation)과 같은 문제점을 명확하게 표시하여 사용자 경험을 개선한다. 또한, 기술 세부 정보를 표시하는 토글 기능과, IOKit 속성을 직접 확인할 수 있는 기능을 제공하여 엔지니어에게 유용한 정보를 제공한다. 멀티모달 분석(Multimodal Analysis)을 통해 다양한 케이블 정보를 시각적으로 제공한다.

오픈 소스 프로젝트 기여 및 확장성

WhatCable은 오픈 소스 프로젝트로, GitHub에서 소스 코드를 확인할 수 있으며, 이슈 및 PR을 통해 기여할 수 있다. 개발자는 코드 가독성을 유지하기 위해 노력했으며, UI는 ContentView.swift, 로직은 PortSummary.swift, 비트 연산은 PDVDO.swift에서 확인할 수 있다. Homebrew 설치 지원 계획에 대한 질문이 있었으며, Linux 지원에 대한 가능성도 언급되었다. GDPR 규제 준수(GDPR Compliance)를 위해 개인 정보 추적은 하지 않는다.

Show HN: WhatCable, a tiny menu bar app for inspecting USB-C cables

댓글 0

첫 번째 댓글을 남겨보세요!