答案1
不幸的是,充电阈值是特定于固件和供应商的。
联想ThinkPad幸运的是,用户得到了一个解决方案思考维基。
它基本上说你必须安装并加载tp_smapi
内核模块:
sudo apt-get install tp-smapi-dkms
sudo modprobe tp_smapi
并将所需的充电阈值写入虚拟文件/sys/devices/platform/smapi
:
echo 40 | sudo tee /sys/devices/platform/smapi/BAT0/start_charge_thresh
echo 80 | sudo tee /sys/devices/platform/smapi/BAT0/stop_charge_thresh
然后,一旦电量达到 80%,它就会停止充电,并且只有当电量降至 40% 以下时才开始充电。
东芝和其他公司可能拥有类似的内核模块,可将固件功能公开给/sys
或/proc
空间,但由于专利问题,这种可能性很小。出于同样的原因,可以处理此问题的应用程序要么是 Thinkpad 专用的,要么只针对少数特定供应商。
答案2
Ubuntu(和其他发行版)现在有一款更好的应用程序:
TLP 为您带来了 Linux 高级电源管理的好处,无需了解每个技术细节。TLP 附带已针对电池寿命优化的默认配置,因此您可以直接安装并忘记它。不过,TLP 具有高度可定制性,可以满足您的特定要求。
它控制的参数之一是维持电池充电限制。正如@tanius 在评论中指出的那样(请点赞!),虽然 TLP 以前只适用于 Thinkpad,但最新版本支持来自多个供应商的设备,并且考虑到项目的性质 - 如果其他设备的适当驱动程序可用,则很可能也会集成到此项目中。因此,如果您几年后阅读此评论,请检查文档,也许您的设备现在已受支持。
Ubuntu 软件包可用在官方存储库中。
答案3
接受的答案不适用于我的新联想 T440s。显然固件发生了变化。以下http://www.thinkwiki.org/wiki/Tpacpi-bat,我做到了
git clone https://github.com/teleshoes/tpacpi-bat.git
cd tpacpi-bat/
./install.pl
sudo ./tpacpi-bat -s ST 1 15 # load internal battery when below 15%
sudo ./tpacpi-bat -s SP 1 95 # stop charging at 95%
sudo ./tpacpi-bat -g ST 2 # when is external battery loaded?
作为参考,我在 Debian 上进行了此测试,但我确信它在 ubuntu 上也同样有效。
答案4
在运行 Windows 8.1 的东芝 R830 上,我安装了东芝省电应用程序,以将电池电量限制在 80%
当我在 Linux(Ubuntu、Mint 等)上启动时,最大充电量仍然限制在 80%。
因此,东芝节能器似乎将其配置存储到 BIOS 中。
唯一的缺点是,如果我想带着充满电的电池旅行,我必须重新启动 Windows 并更改省电模式配置。