概要

- M5StickC Plus(スイッチサイエンス)
- M5StickC PLUS ESP32-PICO Mini IoT Development Kit(公式ストア)
スイッチサイエンスさんはすでに品切れです。公式ストアは送料高いのでおすすめしません。AliExpressの公式ストアは一ヶ月かかるのですがまだ追加されていませんでした。Digi-Keyで今後販売されるかな?
今回は本体のみで付属品なしです。そのため袋に入れた状態で販売されています。ATOMの際にパッケージにシール貼ってあったのが不評だったからかな?

スッキリなパッケージです。ケーブルがついていないので、USB Type-C端子のケーブルがないと接続できません。

裏にはシリアルが書いてあります。

今回は画面とバッテリーが大きくなりましたが、筐体のサイズは変わっていません。

無印と並べたところです。IMUは同じMPU6886ですが色が変わっていますね。

こちら側は変更無し。

本体に張ってあるシリアルがなくなっています。また、GPIO36が入力専用だったので、GPIO25も同じ端子に出ています。

画面の大きさはこんな感じで、結構違います。
開発環境
なんと、いままでと違うライブラリになりました。しかも中身がちょっと古いですね。

GitHubからCodeをクリックして、中にある「Download ZIP」でファイルをダウンロードします。

Arduino IDEの「スケッチ」→「ライブラリをインクルード」→「.ZIP形式のライブラリをインストール」からダウンロードしたZIPファイルを選択すれば使えるようになります。
スケッチ例
FactoryTestしかいまは入っていません。ボタンを押すことで音がなって画面が切り替わります。

ブザーの使い方
#include "M5StickCPlus.h" void setup() { M5.begin(); M5.Beep.setBeep(4000, 100); // ビープ音設定(初期値) } void loop() { M5.update(); // ボタンの状態更新 M5.Beep.update(); // tone関数で鳴らした音が指定時間経過していたら止める if (M5.BtnA.wasPressed()) { // ピーと鳴らす M5.Beep.beep(); } if (M5.BtnB.wasPressed()) { // 音の周波数と長さを指定して鳴らす M5.Beep.tone(440, 500); } }
M5.Beepクラスが追加されています。
tone()関数はPWMを使って音を鳴らします。PWMのチャンネル0を内部で使っているので、他の用途にPWMを使う場合には注意してください。ノンブロック関数で音を鳴らしたら即終了します。音を止めるのは定期的にM5.Beep.update()を呼び出す必要があるので注意してください。
beep()関数でピーと音がでます。setBeep()関数で違う音にもできます。デフォルトは4000Hzを100ミリ秒になっていました。内部はtone()関数を呼び出しているだけです。M5.Beep.tone(4000, 100)と同じ結果になります。
音は結構きれいなのですが、GPIO25ではないのでボイスなどの再生はできません。外にでているGPIO25がここに繋がっていればよかったのに、、、
まとめ
個人的にはライブラリがライブラリマネージャーからダウンロードできないことと、既存と別になっていて、中身のバージョンが微妙に違うので今後ちゃんと整備されていくのかが心配です。。。
もうちょっと突っ込んだ解析も今後していきたいと思います。
コメント
バッテリーについて。
バッテリー容量がオリジナルの1.5倍の120mAhになっているので、充電電流がオリジナルの
1.5倍の150mA流せると思います。そうなればモバイルバッテリーの選択肢が増え、長時間駆動が可能になるかもしれません。
オリジナルでは充電電流が100mA(リチュームイオン電池の上限)しか流せず、大容量のモバイルバッテリーは継続して充電できませんでした。axp192の充電電流設定を変更する必要があるかもしれません。
たしかに定期的に電流流さないと出力止めちゃうモバイルバッテリーばかりですもんね
バッテリー周りはまた検証してみたいと思います