BCLM adalah pembungkus untuk membaca dan menulis nilai level baterai max (BCLM)/CHWA ke System Management Controller (SMC) pada komputer Mac. Ini mendukung silikon Intel dan Apple. Proyek ini terinspirasi oleh beberapa solusi manajemen baterai, termasuk manajemen kesehatan baterai Apple sendiri.
Tujuan membatasi muatan baterai adalah untuk memperpanjang kesehatan baterai dan untuk mencegah kerusakan pada baterai. Berbagai sumber menunjukkan bahwa rentang muatan optimal untuk pengoperasian baterai lithium-ion adalah antara 40% dan 80%, biasanya disebut sebagai aturan 40-80 [1] [2] [3]. Proyek ini sangat membantu orang yang meninggalkan Mac mereka di pengisi daya sepanjang hari, setiap hari.
Metode termudah untuk menginstal BCLM adalah melalui brew .
BCLM ditulis dengan cepat dan juga sepele untuk dikompilasi. Saat ini, hanya dapat dikompilasi pada macOS catalina (10,15) atau lebih tinggi tetapi dapat berjalan pada OS X Mavericks (10,9) atau lebih tinggi.
Zip rilis juga dilengkapi dengan biner yang ditandatangani dan diabaikan untuk mereka yang tidak memiliki alat pengembangan atau pada versi macOS yang lebih lama.
$ 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
Catatan: Untuk versi MacOS yang lebih lama, mungkin perlu menginstal dukungan runtime Swift 5 untuk alat baris perintah jika Anda mendapatkan kesalahan berikut: 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.
Untuk mesin Intel, saat menulis nilai, macOS menagih sedikit di luar nilai yang ditetapkan (~ 3%). Untuk menampilkan 80% ketika terisi penuh, disarankan untuk mengatur nilai BCLM menjadi 77%. Saat pengisian saat sistem ditutup atau tidur, pengisian daya dapat melampaui nilai set lebih dari rata -rata 3%.
$ sudo bclm write 77
$ bclm read
77
Untuk mesin Apple Silicon, hanya nilai 80 dan 100 yang didukung dan firmware> = 13.0 diperlukan.
Perhatikan bahwa untuk menulis nilai, program harus dijalankan sebagai root. Ini tidak diperlukan untuk nilai membaca.
SMC dapat diatur ulang dengan jalan pintas startup atau berbagai alasan teknis lainnya. Untuk memastikan bahwa BCLM selalu pada nilai yang dimaksudkan, itu harus bertahan.
Ini akan membuat plist baru di /Library/LaunchDaemons dan memuatnya melalui launchctl . Ini akan bertahan dengan nilai BCLM saat ini dan akan memperbarui penulisan BCLM berikutnya.
$ sudo bclm persist
Demikian juga, itu bisa tidak bersyarat yang akan menurunkan layanan dan menghapus plist.
$ sudo bclm unpersist