BCLM ist ein Wrapper zum Lesen und Schreiben von Batterieladungsniveau MAX (BCLM)/CHWA -Werten an den Systemverwaltungscontroller (SMC) auf Mac -Computern. Es unterstützt sowohl Intel als auch Apple Silicon. Dieses Projekt wurde von mehreren Lösungen zur Batteriemanagement inspiriert, einschließlich der eigenen Batteriegesundheitsmanagement von Apple.
Der Zweck der Begrenzung der maximalen Ladung der Batterie besteht darin, die Gesundheit der Batterie zu verlängern und Schäden an der Batterie zu vermeiden. Verschiedene Quellen zeigen, dass der optimale Ladungsbereich für den Betrieb von Lithium-Ionen-Batterien zwischen 40% und 80% liegt und allgemein als 40-80-Regel bezeichnet wird [1] [2] [3]. Dieses Projekt ist besonders hilfreich für Menschen, die jeden Tag ihren Macs den ganzen Tag auf dem Ladegerät lassen.
Die einfachste Methode zur Installation von BCLM ist das brew .
BCLM ist in Swift geschrieben und ist auch trivial zu kompilieren. Derzeit kann es nur auf MacOS Catalina (10.15) oder höher kompiliert werden, aber es kann unter OS X Mavericks (10.9) oder höher ausgeführt werden.
Ein Release -Reißverschluss wird auch mit einer signierten und notariell beglaubigten Binärdatum für diejenigen versehen, die keine Entwicklungswerkzeuge haben oder sich auf einer älteren MacOS -Version befinden.
$ brew tap zackelia/formulae
$ brew install bclm
$ make build
$ make test
$ sudo make install
$ unzip bclm.zip
$ sudo mkdir -p /usr/local/bin
$ sudo cp bclm /usr/local/bin
Hinweis: Für ältere Versionen von macOS kann es erforderlich sein, die Swift 5 -Laufzeit -Unterstützung für Befehlszeilen -Tools zu installieren, wenn Sie den folgenden Fehler erhalten: dyld: Symbol not found
$ bclm
OVERVIEW: Battery Charge Level Max (BCLM) Utility.
USAGE: bclm <subcommand>
OPTIONS:
--version Show the version.
-h, --help Show help information.
SUBCOMMANDS:
read Reads the BCLM value.
write Writes a BCLM value.
persist Persists bclm.
unpersist Unpersists bclm.
See 'bclm help <subcommand>' for detailed help.
Bei Intel -Maschinen lädt MacOS beim Schreiben von Werten leicht über den festgelegten Wert hinaus (~ 3%). Um 80% bei vollem Aufladen anzuzeigen, wird empfohlen, den BCLM -Wert auf 77% festzulegen. Beim Ladung während des Systems oder im Schlafengehen kann das Laden über den Wert von mehr als durchschnittlich 3%eingestuft werden.
$ sudo bclm write 77
$ bclm read
77
Für Apple Silicon -Maschinen werden nur die Werte 80 und 100 unterstützt und Firmware> = 13.0 ist erforderlich.
Beachten Sie, dass das Programm als Root ausgeführt werden muss, um Werte zu schreiben. Dies ist für das Lesen von Werten nicht erforderlich.
Der SMC kann durch eine Start -Abkürzung oder verschiedene andere technische Gründe zurückgesetzt werden. Um sicherzustellen, dass der BCLM immer ihren beabsichtigten Wert hat, sollte sie bestehen bleiben.
Dadurch werden eine neue Plist in /Library/LaunchDaemons erstellt und über launchctl geladen. Es wird mit dem aktuellen BCLM -Wert bestehen und über nachfolgende BCLM -Schreibvorgänge aktualisieren.
$ sudo bclm persist
Ebenso kann es unpersistiert werden, wodurch der Dienst entlädt und den Plan entzieht.
$ sudo bclm unpersist