📒

Quest/PICOシリーズからadb経由でバッテリー情報を取得する

2024/05/04に公開

WSL2環境のubuntuからadbコマンドを叩くとバッテリー数値のみ抜き出せて楽チンです。
ここではMeta Quest Developer Hubに同梱のadbを叩いていますが、任意のadbに変えても動くはずです。
対象のHMDは開発者モードに設定する必要があります。

WiFi経由でも取れます。以下のコマンドを先に打ってTCPIP経由で繋げておきます。
USBは叩かなくてOK

adb devices
adb tcpip 5555
adb connect [HMDのIPアドレス]:5555

単発でバッテリー残量を取得するスクリプト。UNIXTIMEの時間付きです。

getBatteryLevel.sh
#!/bin/bash
echo `date +%s`,"$("/mnt/c/Program Files/Meta Quest Developer Hub/resources/bin/adb.exe" shell dumpsys battery | grep -oP '(?<=level: )\d+')"

watchコマンドと組み合わせると定期的に残量を取得し、ログに残せます。

runBatteryLogger.sh
#!/bin/bash
log_file="$(date +'%Y%m%d%H%M').log"
watch -t -n 10 "./getBatteryLevel.sh | tee -a $log_file"

Discussion