原文地址:Thinkpad在GUN/linux(ubuntu)下修改电池充电阈值作者:星海拾贝者
详见 http://www.thinkwiki.org/wiki/Tp_smapi
ref: https://www.2daygeek.com/check-laptop-battery-status-and-charging-state-in-linux-terminal/
-
设置电池
#sudo add-apt-repository ppa:colin-king/powermanagement
#sudo apt-get install powerstat
-
查看电池情况1
# upower -i /org/freedesktop/UPower/devices/battery_BAT0 -
查看电池情况2
# sudo apt-get install tlp tlp-rdw
# sudo tlp-stat -b
# sudo tlp-stat -s -
查看电池情况3
#sudo apt-get install acpi
#acpi
#acpi -V
# cat /sys/class/power_supply/BAT0/*
# aptitude install tp-smapi-dkms
# modprobe tp_smapi
# echo 60 > /sys/devices/platform/smapi/BAT0/start_charge_thresh
设置停止充电阈值,如到“100%”停止充电:
# echo 100 > /sys/devices/platform/smapi/BAT0/stop_charge_thresh
查看充电阈值:
# cat /sys/devices/platform/smapi/BAT0/*_charge_thresh
To prevent charging for 17 minutes (regardless of thresholds):
# echo 17 > /sys/devices/platform/smapi/BAT0/inhibit_charge_minutes
To cancel charging preventation:
# echo 0 > /sys/devices/platform/smapi/BAT0/inhibit_charge_minutes
To force battery discharging (even if connected to AC):
# echo 1 > /sys/devices/platform/smapi/BAT0/force_discharge
To cancel forced discharge:
# echo 0 > /sys/devices/platform/smapi/BAT0/force_discharge
It is not necessary to create your own init.d script or modify /etc/rc.local - you just need the package sysfsutils:
# apt-get install sysfsutils
# sudo gedit /etc/sysfs.conf
把下面的放在文件 /etc/sysfs.conf后面:
# cat >> /etc/sysfs.conf << EOF
# For a LiIon battery in a Thinkpad
devices/platform/smapi/BAT0/start_charge_thresh = 50
devices/platform/smapi/BAT0/stop_charge_thresh = 80
EOF
The init script supplied by sysfsutils will load these settings on each boot.
To view extended battery status such as charging state, voltage, current, capacity, cycle count and model information:
# cat /sys/devices/platform/smapi/BAT0/installed
# cat /sys/devices/platform/smapi/BAT0/state # idle/charging/discharging
# cat /sys/devices/platform/smapi/BAT0/cycle_count
# cat /sys/devices/platform/smapi/BAT0/current_now # instantaneous current
# cat /sys/devices/platform/smapi/BAT0/current_avg # last minute average
# cat /sys/devices/platform/smapi/BAT0/power_now # instantaneous power
# cat /sys/devices/platform/smapi/BAT0/power_avg # last minute average
# cat /sys/devices/platform/smapi/BAT0/last_full_capacity
# cat /sys/devices/platform/smapi/BAT0/remaining_percent
# cat /sys/devices/platform/smapi/BAT0/remaining_running_time
# cat /sys/devices/platform/smapi/BAT0/remaining_charging_time
# cat /sys/devices/platform/smapi/BAT0/remaining_capacity
# cat /sys/devices/platform/smapi/BAT0/design_capacity
# cat /sys/devices/platform/smapi/BAT0/voltage
# cat /sys/devices/platform/smapi/BAT0/design_voltage
# cat /sys/devices/platform/smapi/BAT0/manufacturer
# cat /sys/devices/platform/smapi/BAT0/model
# cat /sys/devices/platform/smapi/BAT0/barcoding
# cat /sys/devices/platform/smapi/BAT0/chemistry
# cat /sys/devices/platform/smapi/BAT0/serial
# cat /sys/devices/platform/smapi/BAT0/manufacture_date
# cat /sys/devices/platform/smapi/BAT0/first_use_date
# cat /sys/devices/platform/smapi/BAT0/temperature # in milli-Celsius
# cat /sys/devices/platform/smapi/ac_connected
The raw status data is also available, including some fields not listed above (in case you can figure them out):
# cat /sys/devices/platform/smapi/BAT0/dump
- 安装tp-smapi:
- 更改充电阈值:
- 设置开始充电阈值,如从“60%”开始充电:
- 其他:
- 让设置在启动时生效(只用同一块电池):
- 其他电池状态信息: