新しく取り付けられたバッテリーのバッテリー残量率の報告が不正確な状況をデバッグしています。
~について前の質問への回答、さまざまなツールがバッテリー自体から直接バッテリー情報を照会します。ただし、バッテリ電圧の出力は/sys/class/power_supply/BAT1/voltage_now
次のように異なりますupower
。
# upower
voltage: 10.974 V
# /sys/...
10500000
また、統計は2分ごとにリアルタイムでupower
更新されるようです。/sys/class/power_supply/BAT1/voltage_now
これはまた、両方のデータソースのソースが異なる可能性があることを示唆している。
それでは、これら2つのデータソースのデータソースは何ですか?
ベストアンサー1
ただし、バッテリ電圧の出力
/sys/class/power_supply/BAT1/voltage_now
はupower
これがあなたの問題です。
また、upowerは2分ごとに統計を更新します。
ここに直接答えました。。更新時間だけです。更新時にcat voltage_now
実行すると、upower
同じ結果が得られます。
$ upower -i /org/freedesktop/UPower/devices/battery_BAT1 |egrep 'updated|voltage'; cat /sys/class/power_supply/BAT1/voltage_now
updated: Mon 17 Feb 2020 07:07:31 AM CAT (0 seconds ago)
voltage: 17.156 V
17156000
その際に参考にしてください修正する時間は0秒前、その値は同じです。コマンドを複数回試すと、時間が異なると大きな違いが見られます。120秒前。
更新された値をすぐに提供するには、upower
次のように強制的に更新できます。
dbus-send --print-reply --system --dest=org.freedesktop.UPower /org/freedesktop/UPower/devices/battery_BAT1 org.freedesktop.UPower.Device.Refresh; upower -i /org/freedesktop/UPower/devices/battery_BAT1 |egrep 'updated|voltage'
それでは、これら2つのデータソースのデータソースは何ですか?
データソースupower
はですupowerd
。upowerd
からデータを読み取り、/sys/.../BAT1/*
履歴をに保存します/var/lib/upower/
。設定されたポーリング時間より前にupower
要求が送信されると、応答が行われ、履歴値が返されます。Upower
upowerd
limiting data to last 120 seconds