はじめに
以前、MacBook Pro 2019 で
スリープしたはずなのに翌日にはバッテリーが空になっている
という問題に悩まされていました。
特に、
- 夜に蓋を閉じる
- 翌朝開く
- バッテリー残量0%
という状態が何度も発生していて、かなり困っていました。
以前の記事では、
- Google Chrome を終了してみる
pmsetコマンドを試してみる
という対策を紹介していました。
そして数日使ってみた結果…
結論:pmset設定でかなり改善しました
現在は、以前のような
- 一晩でバッテリーが空になる
- スリープ中に本体が熱くなる
という症状がほぼ発生しなくなりました。
完全にゼロではありませんが、体感ではかなり改善しています。
実際に試した内容
参考にしたのはこちらの記事です。
この記事を参考に、Macの電源管理設定を変更しました。
実行したコマンド
ターミナルで以下を実行しました。
$ sudo pmset -b standbydelayhigh 1800 standbydelaylow 600
$ sudo pmset -a hibernatemode 25
必要に応じてパスワード入力があります。
この設定で何が変わる?
tcpkeepalive は、Macがスリープ中でもネットワーク通信を維持するための機能らしく、
これが原因で完全にスリープできず、バッテリーを消費しているケースがあるようです。
特にIntel世代のMacBookでは、
- スリープ中に発熱する
- ファンが回る
- 朝には電池切れ
という症状が起きることがあるようでした。
今回この設定をOFFにしたことで、深いスリープ状態に入りやすくなったのかもしれません。
Chromeを起動したままでも改善
以前は、
Chromeを開いたままスリープすると危ない
という情報を見て、毎回Chromeを閉じるようにしていました。
ただ、今回の設定後はChromeを起動したままでも異常なバッテリー消費がかなり減りました。
もちろん環境差はあると思いますが、同じ症状の人は一度試してみる価値はあると思います。
現在の状況
設定変更後の現在は、
- 一晩で数%程度の減少
- 本体の異常発熱なし
- 翌朝すぐ使える
という状態になっています。
以前は100%→0%近くまで減ることもあったので、かなり快適になりました。
元に戻したい場合
もし元の設定に戻したい場合は、以下のコマンドで戻せます。
sudo pmset -a tcpkeepalive 1
まとめ
今回試して効果があった対策はこちらです。
効果があった対策
$ sudo pmset -a hibernatemode 25- $ sudo pmset -b standbydelayhigh 1800 standbydelaylow 600
- Chromeのバックグラウンド動作を減らす
Intel Mac系で、
- スリープ中の異常バッテリー消費
- 発熱
- 翌朝バッテリー0%
に悩んでいる人は、一度試してみても良いかもしれません。
同じ症状の方の参考になれば幸いです。


コメント