Isto está em um Macbook 2.1 com dual boot Arch Linux e OS X Leopard.
Eu uso um script conky para descrever meu percentual de bateria com:
${battery_percent BAT0}
Recentemente, ele mudou de exibir valores coerentes para algo como (sua saída atual):
2147483648
Eu verifiquei / sys / class / power_supply / BAT0 diretamente, pois acredito que é isso que o conky usa para calcular seus valores. Os arquivos que eu conheço costumavam ter valores coerentes se tornaram 0.
Eu dual boot com OS X e por um capricho eu tentei reiniciar a partir do Linux - > OS X - > Linux. Eu estava morando no Linux (principalmente suspendendo pm, mas ocasionalmente desligando / reiniciando, mas somente do Linux - > Linux). Funcionou. Agora tenho valores nos arquivos novamente e conky está funcionando. Aqui está uma tabela de valores pré-postagem:
All files from /sys/class/power_supply/BAT0
| File | Pre-Reboot | Post-Reboot |
|--------------------+-------------+-------------|
| energy_full | 0 | 41660000 |
| energy_full_design | 0 | 50200000 |
| energy_now | 0 | 35870000 |
| power_now | 0 | 15988000 |
| voltage_now | 0 | 11757000 |
| present | 1 | 1 |
| status | Discharging | Discharging |
|--------------------+-------------+-------------|
Nem tudo foi inútil. Ele sabia que estava descarregando e presente, mas é isso.
Por que a reinicialização do OS X alteraria os valores dos arquivos no Linux em / sys / class / power_supply / BAT0? Existe algum tipo de hardware / firmware na bateria que o OS X mexer com? Em outras palavras, por que uma reinicialização do Linux - > Linux não funcionaria, mas Linux - > OS X - > Linux faz.