【M5】ATOM LiteをM5StickCの代替えにした<ほぼそのまま動く>

 

M5StcikCを5個もそろえてしまったが、クランクに仕込むには、液晶DISPLAYはいらないし、サイズが未だ大きすぎなので、今春発売になったATOM Liteを試してみました。1個980円なので、M5StickC(1800円)1個分で2個弱買えるので抜群のコストパフォーマンスです。M5StickCかM5Stackをお持ちの方なら、2個めからATOMを複数個そろえると、並み居る自作CPUの中でもコストパフォーマンス最高に使えると思います。ただし、ESP32ベースなので全体的に電池食いますので、LiPo電池前提です。
SwitchScienceさんのページ

※2021年5月末追記
M5Atom liteいじりだしてから1年経過、所有数12個となりました。ピン数が多いのでM5シリーズで拡張性は一番良いと思います。シリアル多CH受信する場合のために、M5Atomのピンでシリアルが使えるピンを調べてみました。2本以外は全部つかえました。私は、SPI1本とシリアルRx2本とADC1本を同時につかってます。

【M5】M5Atom liteのUART用ピン探し<21,25は使えない>

■私の使い方で使えるか確認してみました。
私の使い方は無線システムとしてM5Stackと2台のM5StickC
をESP-NOWで接続して同時に2個からの高速データ通信を1台のM5Stackで受信する用途です。ここ3年間Xbee、BlueToothでトライしてできなかったのですが、ESP-NOWで同期精度と信頼性を実現できてます。


25x25x10というけど相当小さいです。使い出がありそうです。
下手な無線モジュール独立でつけるより、EPS32-pico-D4のほうがサイズパフォーマンス良いので、実装を小さくしたい場合はよいです。

●ATOMとM5StickCの違いの解説がありました。
https://lang-ship.com/blog/work/m5stack-atom-matrix-atom-lite/

CPUが同じでフラッシュも同じで、その他がついてない
GPIOピンがM5StickCより2本多いので、SPIとi2cが使えそう。(要確認)

 

 

●ATOM LiteをM5StickCの代替えで使う場合の注意
M5社では、まだ、ArduinoIDE用のATOMライブラリーが完成できてないみたいです。一応ライブラリーでM5Atomはインストールするのですが、そのままで、include <M5Atom.h>は動作しませんでした。=>あと数か月で動作するようになると思います本日が6月30日だから夏秋ごろかな。
このような場合、WEBで検索して無理やりさがして使いこなす努力はしないことにしてます。現在使っている方法で、使えなければ、使えるようになるまで放置しておくことにして、無駄な時間をかけないようにしてます。
■mbedも放置状態
mbedStudioですが、これは2年待ってますがまだまともになってきません。mbedは,OS2ユーザーが切り捨てられる傾向にあって、昔のプログラムが動作しなくなってきてます。そうなると、過去資産が使えなくなるので、ユーザーは減ると思います。ARM社の凋落に比例してます。新たなRTOSのプログラムを作るときだけ使ってARMの将来があるのかウォッチしていきます。
=>ということで、今まで使っていた、include <M5StickC.h>を使って動作するか試してみました。
現在のM5StickCで動作させているESP-Nowが動作するか確認しました。

 

●LangShip様のESP-Nowのサンプルプログラムで変更箇所
https://lang-ship.com/blog/work/m5stickc-esp-now-1/
M5StickCの場合は、一切変更しないで、上記リンクのブログ記事からコピペして、コンパイルOKで動作したのですが、
 AtomLiteの場合もコンパイルOKで一応動作します。
しかし、メインボタンのGPIO番号が違うのでそこだけ変更すれば、完全互換でOKでした。

ボタンの違い M5StickC Atom Lite
メインボタン
(真ん中にある大きい)
M5.BtnA=>GPIO37 GPIO39
右ボタン
(右側にある小さい)
M5.BtnB=>GPIO39 無し

 なので、ESP-Nowsend動作ボタンの指定を
if ( M5.BtnA.wasPressed() ) {  //M5StickC用

if ( M5.BtnB.wasPressed() ) {  //M5Atom用

に変更しておけば、他は、完全に同じで動作しました。DIPLAYはないので、M5.Lcd命令は無視されます

●動作確認
上記ボタン文だけ変更して、それぞれに書き込んでボタンを押すとFF6
個(ブロードキャスト相当)を送信します。受信して、送信元のMACアドレスをTeraTermへSerial.printしてくれます。

●以後
  ATOM Liteをあと3個購入して、クランクとフレームについているM5Stcikと交換します。

※追記2021年2月7日
とうとうM5Atomite 10個になってしまいました。あれこれ用途専用に使うと増殖していきます。
1000円切っていると消耗品的な扱いができて従来のマイコン感覚ではなくなんでもできるデバイス扱いです。
代用品として、
①BlueTooth、XbeeなどSPP無線モジュールが不要になりました。
②USBシリアルモジュールも不要になりました。
最新の使い方は、SDカード付のM5Atom ATOMIC TFキットです。面倒ではまりやすいSPI結線無しで安全に
SDカード使えてしかも、ケースからSDカードが取出し安くて取り付け方も考えられている優れものです。

【M5】ATOMIC TFカードキットいじってみた<テストプログラム動作OK>

※追記 2020年9月
M5ATOM lite5個ゲットして、いろいろ活用してます。
安くて小さいので、従来のXbee,BlueToothのSPPモジュールの代わりに
無線SPPモジュールとして作ってみました。
マイコン、センサ、計測器のシリアルデータをM5AtomSPPに接続する
ことで、無線データ通信が簡単に構築できる点がメリットです。

【M5】M5AtomliteをESP-NOW通信SPPモジュール化した<手頃な無線>

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です