M5StickC シリーズで電源OFF (M5Unifiedで)

M5Stack

 M5StickCシリーズ(Plus、Plus2含む)で1つのバイナリで動くプログラムを作っている(M5Burnerで書き込めるように)。一定時間ボタン操作がなかったら電源を切りたい。バッテリを長持ちさせるため。

 どんな方法あるか調べる。結局、M5Stack公式のサポートにあるチャットで聞きながら、試す。

 USB接続のまま使うことは想定しないので、とりあえずpowerOff()でいけた。

 Claudeに聞いたら「powerOFF()」とか言ってきて、そんなのないとコンパイルでエラーになった(OFFが全部大文字だったので)ので、公式に聞くに至った次第。以前「M5StickC Plusで電源OFF」なんてのを書いてたけど、すでに意味がない。そんなこんなで。

 以下、チャットからの情報をメモ。

M5UnifiedライブラリではM5.Power.powerOff()を使用できます。M5StickCシリーズでの機種ごとの主な違いと使用方法は以下の通りです。

基本的な使用方法(共通)

M5UnifiedではM5.Power.powerOff()で電源を完全に切断できます。

#include <M5Unified.h>

void setup() {
  auto cfg = M5.config();
  M5.begin(cfg);  // 初期化
  
  M5.Display.print("3秒後に電源オフ");
  delay(3000);
  
  M5.Power.powerOff();  // 電源切断
}

void loop() {}

M5StickCシリーズの機種ごとの違い

1. M5StickC / M5StickC Plus

  • PMICチップ:AXP192を搭載
  • 動作条件:USBケーブルを抜いた状態(電池駆動時)のみpowerOff()が有効
    → USB接続中は電源を切断できず、画面が消えるのみ(ハードウェア制限)。

2. M5StickC Plus2

  • PMICチップ:なし(ESP32の低電力モードを使用)
  • 動作条件:USB接続中でもpowerOff()が有効
    → 電源切断後、電源ボタンを長押しすると再起動します。

注意点

  1. USB接続時の挙動
    • M5StickC/C Plus:USB接続中はpowerOff()できないため、事前にUSBを抜く必要があります。
    • M5StickC Plus2:USB接続中でも電源を切断可能です。
  2. 電池残量
    電池残量が極端に低い場合は、powerOff()が正常に動作しないことがあります。
  3. 再起動方法
    • M5StickC/C Plus:電源ボタンを長押し(約5秒)で再起動。
    • M5StickC Plus2:電源ボタンを短押しで再起動。

コメント

タイトルとURLをコピーしました