Thinkpad在linux(ubuntu)下修改电池充电阈值,成功解决Thinkpad在Linux

2019-07-14 03:37发布

look this for more info: http://www.thinkwiki.org/wiki/Tp_smapi 安装tp-smapi: # aptitude install tp-smapi-dkms # modprobe tp_smapi 更改充电阈值: 设置开始充电阈值,如从“60%”开始充电: # 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