명령 줄에서 연결된 블루투스 헤드폰의 배터리 잔량 확인


24

명령 줄에서 무선 헤드폰의 배터리 잔량을 확인하려고합니다. 나는 몇 가지 토론을 겪었고 다음과 같이 입력하면됩니다.

ioreg -c 'deviceName' |grep -i batterypercent

에 대해 "Powerbeats Wireless"및 "bluetoothaudiod"를 사용하여이 명령을 시도 'deviceName'했지만을 반환하지 않았습니다 batterypercent. ioreg -c bluetoothaudiod |grep -i battery배터리에 대한 일반적인 정보를 얻으 려고 노력 했으며 이것을 응답으로 얻었습니다.

| |   +-o AppleSmartBatteryManager  <class AppleSmartBatteryManager, id 0x100000250, registered, matched, active, busy 0 (0 ms), retain 7>
| |     +-o AppleSmartBattery  <class AppleSmartBattery, id 0x100000252, registered, matched, active, busy 0 (0 ms), retain 6>

헤드폰을 iPhone에 연결 하면 도구 모음에 배터리 잔량이 즉시 나타납니다. 이로 인해 장치가 배터리 수준을 브로드 캐스팅하고 있으며 컴퓨터에서이 정보에 액세스 할 수 있어야합니다.

Bluetooth 연결 헤드폰의 배터리 잔량을 어떻게 확인할 수 있습니까?

편집하다:

처음에 나는 문제가 장치 이름과 함께라고 생각하지만, 그것은 보인다 "Powerbeats Wireless"bluetoothaudiod작업 교환. batterypercent매개 변수 에 액세스하는 방법을 알 수 없습니다 .

편집 2 :

블루투스 문서를 보면 배터리 상태배터리 수준 을 노출시키는 배터리 서비스가 있는 것 같습니다 . 배터리 수준은 GATT 읽기 특성 값 하위 프로 시저를 사용하여 읽을 수 있으므로 명령 행에서이 서비스와 인터페이스하는 방법을 찾아야합니다. 시도한 모든 배터리 모니터링 위젯은 이러한 장치와 만 호환되므로 표준 주변 장치 (트랙 패드, 마우스, 키보드)에만 코딩 되는 느낌 이 있습니다.batterypercent

편집 3 :

거의 1 년 후에 이것을 다시 방문합니다. 무선 트랙 패드 및 키보드가 있으며 배터리 수준이 툴바 또는 명령 줄 모두에서 완벽하게 잘 보일 수 있습니다. 그래도 여전히 헤드폰에서 배터리 잔량을 얻을 수 없으며 왜 그런지 확실하지 않습니다 : /


ioreg -c "Powerbeats Wireless" |grep -i battery또한 일반적인 배터리 정보를 반환하므로 올바른 장치 이름이 있다고 생각합니다. 그러나 왜 batterylevel명령이 작동하지 않습니다! Smh
pingo

자신의 질문에 댓글을 달지 말고 질문을 수정하십시오.
At0mic

@IronCraftMan 편집이 완료되었습니다. 도움을 줄 수 있다고 생각하십니까?
pingo

안녕하세요-더 이상 소식을 듣고 싶습니다. BlueTooth로 연결 한 PS4 컨트롤러에서 배터리 수명을 iMac에 가져오고 싶습니다.
dunxd

JVC 블루투스 헤드폰에서도 작동하지 않습니다. 이상한데, 5 살짜리 iPhone 4S는 연결될 때 배터리 잔량을 알려주는 데 아무런 문제가 없습니다.
John Smith

답변:


8

내 iMac (macOS 10.12.6)에서는 위에서 언급 한 솔루션이 작동하지 않습니다. ioreg 매뉴얼 페이지를 읽은 후 . 내 컴퓨터에서 작동하는 솔루션은 다음과 같습니다.

// the -r option is used to reduce output
// the -l option is used to display properties for all object
// by default some object properties are not shown
// the -c specify device class, the class could be specific or general
ioreg -c AppleDeviceManagementHIDEventService -r -l
ioreg -c AppleDeviceManagementHIDEventService -r -l | grep -i battery

// instead of using device io class, you could also use a property key to query
// you need to know one of target device's property key(-k), for example it is BatteryPercent for Bluetooth keyboard and mouse
// any device with this property will be listed
ioreg -r -l -k "BatteryPercent"
ioreg -r -l -k "BatteryPercent" | grep -i battery

-c 인수를 시도 할 다른 디바이스 클래스가 있습니다. AppleHSBluetoothDevice AppleHSBluetoothHIDDriver AppleMultitouchMouseHIDEventDriver AppleHIDKeyboardEventDriverV2 는 다른 출력을 제공합니다.


7

을 사용해야 ioreg합니다. 장치 이름을 알아야합니다. 안내서를 따르십시오 .

요컨대, 가이드는 기본적으로 ioreg -c <devicename> |grep '"BatteryPercent" ='

예:

ioreg -c BeatsBluetoothHeadset |grep '"BatteryPercent" ='

여기에 이미지 설명을 입력하십시오

또한 다음을 통해 더 넓은 배터리 정보를 검색 할 수 있습니다.

ioreg -c BeatsBluetoothHeadset |grep Battery

2
답변 감사합니다! 무선 키보드 및 트랙 패드의 배터리 수준에 액세스 할 수 있으므로이 문제는 Beats 헤드폰에만 해당되는 것 같습니다. 원래 질문을 업데이트합니다!
pingo

그것은 나를 위해 작동하지 않습니다
Jadda

1

방금 Mac에서 Powerbeats 3의 배터리 잔량을 확인하려면 화면 오른쪽 상단의 아이콘 영역에서 Bluetooth 메뉴로 이동하여 연결된 Powerbeat 위로 마우스를 가져간 다음 바로 배터리 잔량을 표시합니다. 희망이 도움이됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.