M5StickCの消費電流 その2

省電力系の設定を計測してみました。

現時点の情報ですので最新情報はM5StickC非公式日本語リファレンスを確認してください。

概要

USB接続のテスターを利用して、消費電流を計測しています。供給電圧は5Vですので、内部的にDCDCなどを経由してロスがでています。

充電機能は基本的にAXP経由で止めていますが、止めても少しだけ流れています。また、動作時の温度などで消費電流が変わる気がしますので絶対値ではなく、オプションを変更した場合の増減値を参考値として利用してください。

測定値は瞬間電流を目でみて記録していますので、精度は低いです。

CPU周波数

周波数(MHz)消費電流(mA)増減(mA)
24095.50.0
16082.1-13.4
8074.4-21.1
4065.7-29.8
2060.5-35.0
1059.0-36.5

標準が240MHzで、下げた場合の消費電流の推移です。10と20だとほとんど差がないんですね。

スリープ

状態消費電流(mA)増減(mA)
電源OFF13.30.0
DeepSleepEXT0WakeUp17.03.7
DeepSleepEXT1WakeUp17.23.9
DeepSleepTimerWakeUp17.84.5
DeepSleepTouchWakeUp17.03.7
DeepSleepULPWakeUp17-33
LightSleepEXT0WakeUp18.45.1
LightSleepEXT1WakeUp18.24.9
LightSleepGPIOWakeUp18.35.0
LightSleepTimerWakeUp18.24.9
LightSleepTouchWakeUp18.24.9
LightSleepULPWakeUp18.2-19.3
WAKE98.885.5

ソースコードはGitHubのサンプルを利用しています。DeepSleepとLightSleepはもっと差があると思いましたが、こんなに差が少ないんですね。

ULPは動作していないときには省電力ですが、起動時には結構電力使っていました。LightSleepは増減が少なかったのですが、DeepSleepは非常に電力使っていたのでちょっと気になります。

スリープ設定

状態消費電流(mA)増減(mA)
標準17.00.0
PERIPH OFF17.00.0
SLOW_MEM OFF16.8-0.2
FAST_MEM OFF16.8-0.2
ALL OFF16.8-0.2

下記コードを使って設定値をコメントアウトしながら計測しました。GPIOをPULLUPやHIGH設定にしていないので、周辺機器を切っても電流に差はありませんでした。

メモリはどちらかを切ると消費電流が下がりましたが、両方切っても変わらない謎の動きです。

void setup() {
  esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH  , ESP_PD_OPTION_OFF);
  esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_SLOW_MEM, ESP_PD_OPTION_OFF);
  esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_FAST_MEM, ESP_PD_OPTION_OFF);
  esp_deep_sleep_start();
}
void loop() {
}

AXPスリープ

状態消費電流(mA)増減(mA)
通常99.70.0
AxpSleep67.9-31.8

AXPのスリープです。主に画面への電源供給が止まります。画面の明るさを7とかにしたのとそれほど変化がなかったです。

まとめ

スリープの消費電流の結果が意外でした。GPIOのpinModeを変更した場合や、通信をした場合の計測もしていきたいと思います。

続編

コメント

  1. hsenshu より:

    いつも参考にしております。

    さて、現在、私は M5StickCplus2を用いて、内蔵バッテリーで
    長時間稼働させるプロジェクトに取り組んでおります。

    1. WiFiを使用する
    2.日に数回、1分間程度動作し、動作完了後は deep_sleepする
    4. Aボタンで起床させる
    5. 省エネ化の為、80MHzで動作させる

    このように動作させても2日程度しか動作しません。USBケーブル
    にUSB電流計測器を挿入し、スリープには0mAになること、240MHz
    動作に比べ、80MHzでの動作は省エネであることは確認しました。

    後は何ができるでしょうか。アドバイスをいただけると
    ありがたいです。

  2. hsenshu より:

    たなかまさゆき さん、アドバイスに感謝申し上げます。

    電源OFFが望ましいのは同意ですが、電源スイッチの操作は結構面倒です。

    初めて使う方はONに出来ない気がします。

    とりあえず、モバイルバッテリーに接続して使うことにしました。

    M5StickCPlus2は小さすぎるので、モバイルバッテリーと組でちょうど
    よい大きさ(重さ)になると考えることにします。

    • たなかまさゆき より:

      USB端子か5V INから電源供給することでも起動できたと思います
      省電力用の設計をすると普通に使うときに不便になったりと、なかなかぴったりのボードがないんですよね