購入
ATOM Lite/Matrixはマイコン界隈においてESPr Developerを超える衝撃かも。4/10にスイッチサイエンスの発売ニュースを見て購入即決。
4/10の営業時間後に注文し、届いたのは本日4/14の正午くらい。
コロナ騒動で自宅待機するにはぴったりのオモチャだ。
今スイッチサイエンスの在庫を見たら品切れだったので、注文が間に合ってよかった。
今まではM5Stackは高価なので見送り、M5StickCもADCが少ないのでArduino Nano互換 + ESP8266かPi Zero Wで十分だと考えていた。
対してATOMは安価・小型かつADCも多く、上記のマイコンではカバーできない新しいWifi対応のデバイス開発の道が開けそう。
環境構築
Arduino環境で動作確認するまで多少手間取ったので、要点を以下にまとめる。
太字下線部分はハマった部分。
- 環境
- OS:Windows 10 64bit
- Arduino 1.8.12 64bit (zip版)
- USB-Serial Driver
- CP210x_VCP_Windows.zip
- https://m5stack.com/pages/download
- 上記リンクの「CP2014 Driver」の横のDownload
- スイッチサイエンスのATOMのページのクイックスタートから辿れる
- M5公式のページではなぜかリンクされていない・・・
- Arduino設定
- zipを適当な作業場所に展開
- Arduinoを起動し、ツールバーの「ファイル」⇒「環境設定」を開く
- 追加のボードマネージャのURLに以下を追加
- ツールバーの「スケッチ」⇒「ライブラリをインクルード」⇒「ライブラリを管理」を開く
- 「M5Atom」と「M5StickC」と「FastLED」を導入
- FastLEDはMatrixでもLiteのLEDでも必須のようなので注意
- Serialの速度は115200bpsにする
- 速すぎるとうまく書き込めない
- ボードは「ESP32 Dev Module」にする
- 他の設定は変更しない(周波数など)
- Arduinoのスケッチ例
- LEDDisplayは動かない(他の方の記事でも言及あり)
- LEDSet/Buttom/MPU6886は動く
- 上記はATOM Lite/Matrixの両方とも
ESP8266などでAVR以外をArduinoで開発したことがあれば、ほとんどの作業は手間取らないと思う。
以下、M5に詳しい方には常識っぽいが、ArduinoやRaspberry Piしか知らない方へのコード説明。
>#include "M5Atom.h"
ここにM5クラスなどが入っている。
>M5.dis.drawpix(<LEDのID>, <COLOR>);
LEDやMatrixに書き込む関数。
LEDのIDは、Liteは0固定。Matrixは0~24の整数値で場所を指定する。
数値と場所の対応は、USBを下側にして左上が0、右上が4、左下が20、右下が24の順。
COLORは「GRB」それぞれが0x00~0xFFとなる。
0x000000で全消灯、0xFFFFFFで白色の全点灯となる。
全点灯でも目視して目が痛くはない程度。発熱も数分程度なら平気だった。
(というより、Matrixのほうは消灯していてもUSBを繋ぐと結構温かくなる)
>M5.begin(true, false, true)
シリアルやLCDなどの機能のON/OFFを設定する。
M5の機能を使うためにこれを setupで呼んでおく。
>M5.update()
ボタンなどの各種情報を更新する。
これらが使いこなせれば、あとは他のArduino基板と似たように使える。
delayのような慣れ親しんだ関数もOK。
ひとまず今日はここまで。