だからラップトップ用の新しいバッテリーを購入しましたが、最初から問題が発生しました。
メーカーはバッテリーをほぼ完全に放電したままにします。コンピュータに接続しましたが、バッテリーの充電速度がゼロと報告され、「フル充電」に達しません。
数分後、X11がクラッシュし、現在次の状態になります(upower -i /org/freedesktop/UPower/devices/battery_BAT0
)。
native-path: BAT0
vendor: Hewlett-Packard
model: Primary
power supply: yes
updated: Fri 21 Oct 2016 08:28:33 AM CEST (106 seconds ago)
has history: yes
has statistics: yes
battery
present: yes
rechargeable: yes
state: charging
warning-level: none
energy: 17.8704 Wh
energy-empty: 0 Wh
energy-full: 24.192 Wh
energy-full-design: 95.04 Wh
energy-rate: 0.0996923 W
voltage: 15.947 V
percentage: 73%
capacity: 25.4545%
technology: lithium-ion
icon-name: 'battery-full-charging-symbolic'
したがって、バッテリーは設計されたエネルギー容量の約4分の1だけを使用して充電しています(バッテリーが数日しか使用されていないにもかかわらず)、充電率は73%であり、充電速度が小さすぎてどれくらいかかるかを報告しません。完全に充電するには。
今は数時間充電してから放電し、再充電してバッテリーを「補正」できることを知っています。
しかし、これは正しいことではないようです。スマートデータに直接アクセスできないかどうか疑問に思います。中小企業バス。
i2cdetect -l
レポート:
i2c-0 smbus SMBus I801 adapter at 8000 SMBus adapter
i2c-1 i2c NVIDIA i2c adapter 0 at 1:00.0 I2C adapter
i2c-2 i2c NVIDIA i2c adapter 2 at 1:00.0 I2C adapter
i2c-3 i2c NVIDIA i2c adapter 3 at 1:00.0 I2C adapter
i2c-4 i2c NVIDIA i2c adapter 5 at 1:00.0 I2C adapter
それでSMBus()を調べてみましたi2cdetect -r 0
。
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-0 using read byte commands.
I will probe address range 0x03-0x77.
Continue? [Y/n] y
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
私が見るには奇妙に見えます。バスに何も接続されていないという意味ですか?
どのアドレスをダンプしようとしても、結果は常に同じです。
i2cdump 0 0x03
(他のすべての有効なアドレスは同じ出力を生成します):
No size specified (using byte-data access)
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-0, address 0x1a, mode byte
Continue? [Y/n] y
0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
00: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
10: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
20: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
30: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
40: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
50: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
60: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
70: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
80: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
90: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
a0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
b0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
c0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
d0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
e0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
f0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
それが私がどれだけ遠くに来たかです。
システムは以下からバッテリー情報を取得します。どこかにが、どうやって、どこからなのかわかりません。
バッテリーへのI²C / SMBusアクセスについては:私が何か間違っているのか、それが不可能なのかわかりません。
i2cset
スマートバッテリーデータにアクセスする方法、設定方法(おそらく使用するため)、フォーマットが何であるか(どのデータがどの情報をエンコードするかなど)を知りたいです。
acpi -V
より混乱した点は次のとおりです。
Battery 0: Unknown, 73%
Battery 0: design capacity 6600 mAh, last full capacity 1680 mAh = 25%
Adapter 0: on-line
(誤った設計能力報告など)
私が考えることができる最後の情報はdmidecode
出力です。
Handle 0x0010, DMI type 39, 22 bytes
System Power Supply
Location: OEM_Define0
Name: OEM_Define1
Manufacturer: OEM_Define2
Serial Number: OEM_Define2
Asset Tag: OEM_Define3
Model Part Number: OEM_Define4
Revision: OEM_Define5
Max Power Capacity: 75 W
Status: Present, OK
Type: Regulator
Input Voltage Range Switching: Auto-switch
Plugged: No
Hot Replaceable: No
そこから「OEM_Define2」などの文字列をすべて見ることができますが、多くのことを教えてくれません。
dmidecode -t connector
レポート:
Getting SMBIOS data from sysfs.
SMBIOS 2.4 present.
答え1
SBS(スマートバッテリー仕様)バスは、オペレーティングシステムから直接アクセスできません。ただし、バッテリーピンに直接接続されたUSB-I2Cアダプターを介してバッテリーと直接通信することは可能です。
編集する: https://media.blackhat.com/bh-us-11/Miller/BH_US_11_Miller_Battery_Firmware_Public_WP.pdf
編集2:個人的には、Raspberry PIのi2cピンと呼ばれるコマンドを使用してバッテリーと直接通信することができました。
答え2
メーターには何の問題もありません。バッテリーに欠陥があるため、返品して交換を依頼してください。完全に充電された4セルリチウムイオン電池の電圧は4.2 x 4 = 16.8Vです。 15.9に過ぎず、充電がほとんど維持されないという事実は、1つ以上のバッテリーが損傷していることを示しています。
smiとacpiのデータが正確ではないという事実は、このラップトップメーカーが単にラップトップを作るのに気を付けなかったことを意味するので、可能であれば払い戻しのために返品し、再度購入することはありません。
答え3
スマートバッテリーは正しいですか?私のHP Pavilionにいるのはそうではありません。
バッテリーのソースも重要です。デルで動作するバッテリーを入手し、安価なバッテリーを購入するには、3回の試みが必要でした。いよいよラッキーだったhttp://drpowerglobal.com/drbattery/ところが、それが数年前のことなので、今は古くなってしまいました。