BCLM은 MAC 컴퓨터의 SMC (System Management Controller)에 배터리 충전 레벨 MAX (BCLM)/CHWA 값을 읽고 쓰는 래퍼입니다. Intel과 Apple Silicon을 모두 지원합니다. 이 프로젝트는 Apple의 자체 배터리 건강 관리를 포함한 여러 배터리 관리 솔루션에서 영감을 얻었습니다.
배터리의 최대 충전을 제한하는 목적은 배터리 건강을 연장하고 배터리 손상을 방지하는 것입니다. 다양한 소스에 따르면 리튬 이온 배터리의 작동을위한 최적의 전하 범위는 40%에서 80% 사이이며 일반적으로 40-80 규칙 [1] [2] [3]라고합니다. 이 프로젝트는 특히 매일 매일 충전기에 Mac을 남겨 두는 사람들에게 도움이됩니다.
BCLM을 설치하는 가장 쉬운 방법은 brew 통한 것입니다.
BCLM은 Swift로 작성되었으며 컴파일하기 위해 사소한 것입니다. 현재 MacOS Catalina (10.15) 이상에서만 컴파일 할 수 있지만 OS X Mavericks (10.9) 이상에서 실행할 수 있습니다.
릴리스 ZIP에는 개발 도구가 없거나 이전 MACOS 버전에있는 사람들을위한 서명 및 공증 된 바이너리가 제공됩니다.
$ 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
참고 : 이전 버전의 MACOS의 경우 다음 오류가 dyld: Symbol not found 하면 명령 줄 도구에 대한 Swift 5 런타임 지원을 설치해야 할 수도 있습니다.
$ 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.
인텔 머신의 경우 값을 쓸 때 MACOS는 설정 값 (~ 3%)을 초과합니다. 완전히 충전 된 경우 80%를 표시하려면 BCLM 값을 77%로 설정하는 것이 좋습니다. 시스템이 종료되거나 수면 중에 충전 될 때 충전은 세트 값을 평균 3%이상으로 넘어갈 수 있습니다.
$ sudo bclm write 77
$ bclm read
77
Apple Silicon Machines의 경우 80과 100 값 만 지원되며 펌웨어> = 13.0이 필요합니다.
값을 작성하려면 프로그램을 루트로 실행해야합니다. 이것은 값을 읽는 데 필요하지 않습니다.
SMC는 스타트 업 단축키 또는 기타 다양한 기술적 이유로 재설정 할 수 있습니다. BCLM이 항상 의도 된 값인지 확인하려면 지속되어야합니다.
이렇게하면 /Library/LaunchDaemons 에 새로운 명성이 생겨서 launchctl 통해로드 할 것입니다. 현재 BCLM 값으로 지속되며 후속 BCLM 쓰기에서 업데이트됩니다.
$ sudo bclm persist
마찬가지로, 서비스를 내리고 PLIST를 제거 할 수있는 것은 풀릴 수 있습니다.
$ sudo bclm unpersist