SSブログ

ESP-WROOM-02 のWiFiを止めるには? [Arduino]

ESP-WROOM-02(ESP8266) は値段の割には計算能力もメモリも豊富な魅力的なマイコンモジュールです。


ESP-WROOM-02.jpg


ただ、WiFiが搭載されているため消費電力が大きく、小さなバッテリで駆動するには少し厳しい。単体での消費電流を確認するため、下記の単純なスケッチを動かしてみます。

int Counter = 0;

void setup() {
  Serial.begin(115200);
}

void loop() {
  Serial.print("Count:");
  Serial.println(Counter);
  ++Counter;
  delay(1000);
}



このスケッチを動かしたときの消費電流は60mA。私の手持ちの110mAhのバッテリで駆動するのはかなり厳しい。


DSC04072.JPG


ESP-WROOM-02のWiFiをオフにできれば少しは電力をセーブできるかも知れません。グーグル師匠に問い合わせてみたところ、下記のスレッドを紹介されました。


Turn Wifi on/off #644
https://github.com/esp8266/Arduino/issues/644


上記スレッドのやりとりを参考に、起動時にWiFiをオフにするスケッチを書いてみました。


#include <ESP8266WiFi.h>

int Counter = 0;

void setup() {
  Serial.begin(115200);
  WiFi.disconnect();
  WiFi.mode(WIFI_OFF);
  WiFi.forceSleepBegin();
}

void loop() {
  Serial.print("Count:");
  Serial.println(Counter);
  ++Counter;
  delay(1000);
}



ところが、WiFi.forceSleepBegin() の定義がないとコンパイル・エラーが出てしまいました。もしやライブラリが古いのかな?と、”Board Manager”を開き、新しいライブラリがあるか確認をしてみました。


BoardManager200.png


新しいバージョンがあるようなので、迷わず更新ボタンを押しました。


BoardManager220.png


無事バージョンアップができたようです。新しいライブラリを使って、無事マイコンへの書き込みまで出来ました。さて、どれだけ消費電流が減っているか確認してみましょう。


DSC04073.JPG


おぉ、だいたい10mA。素晴らしい!想像以上の節電です。これであれば周辺センサーをつけても無事動作しそうです。

まだ起動時の突入電流に手持ちのバッテリーが耐えられるか心配ですが、ひとまず省電力で使えることはわかりました!
(^_^)/





ESP-WROOM-02実装済みmikroBUS(R)対応ブレークアウトボード

ESP-WROOM-02実装済みmikroBUS(R)対応ブレークアウトボード

  • 出版社/メーカー: マイクロテクニカ
  • メディア: おもちゃ&ホビー



FTDI USBシリアル変換アダプター(5V/3.3V切り替え機能付き)

FTDI USBシリアル変換アダプター(5V/3.3V切り替え機能付き)

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス



Adafruit Pro Trinket バッテリーモジュール

Adafruit Pro Trinket バッテリーモジュール

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス




nice!(48)  コメント(0)  トラックバック(0) 
共通テーマ:趣味・カルチャー

nice! 48

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。