はじめに
1年ほど放置していたM5Stackを使って、開発環境作成/Wifi接続、HttpClient動作を試してみました。
(積ん読、積みゲー、買ったデバイスなり基盤を使わない放置状態って単語あるんですかねぇ)
情報も色々とある事と、チュートリアルドキュメント、ArduinoIDEのスケッチブック機能のおかげで、1時間掛からずに開発環境構築、HttpClient動作まで漕ぎ着けたのでやりたい事を形にするのが手っ取り早くてよいですね。
小さいですがボタンが3つ付いているのでリモートワークが板についてきた所で、離席中である事をSlackに通知するThingを作ってみたいと思います。
出来たもの
こちらのブログのRSS情報を取得して表示してみました。 (日本語化けしてます)
M5Stackの紹介記事は沢山出てきますので割愛します。
https://m5stack.com/
目次
手順の概要
- ドライバインストール
- ArduinoIDEインストール
- ArduinoIDE内のBoardManagerへM5 Stackを追加
- ArduinoIDE内のLibraryManagerへM5 Stackを追加
- ArduinoIDEでボード(M5Stack-Core-ESP32)/シリアルポート選択(/dev/cu.SLAB_USBtoUART)
- コード書く
- コンパイル&M5Stackへ転送
全て下記公式ドキュメントに沿って実施
https://docs.m5stack.com/#/en/arduino/arduino_development
接続したM5Stackが認識されているか確認
※ドライバインストール後
1 2 3 4 5 6 7 | 接続前 ~ $ ls -la /dev | grep UART 接続後 ~ $ ls -la /dev | grep UART crw-rw-rw- 1 root wheel 18, 19 4 9 12:42 cu.SLAB_USBtoUART crw-rw-rw- 1 root wheel 18, 18 4 9 12:42 tty.SLAB_USBtoUART |
実行環境
MacOS上で実施しました。
手順
コードについて予め用意されているスケッチブックから下記を参考に作成しました。
- BasicHTTPClient
- Display
コード
※10秒毎にHTTPリクエストが実施されます
追記: 内蔵スピーカーから高音がピーピーなるため、おまじないとしてSperkerOff命令を追記
コンパイル
左上のチェックマークのボタンを押下
M55Stackへ転送
左上の右矢印ボタンを押下
まとめ
やりたい事をシンプルに実装できるため。PoC作成等が捗りそうです。
LCD周りのライブラリについても、画像表示、QRコード表示ライブラリ等も最初から実装されており、夢が広がりますね!
https://github.com/m5stack/m5-docs/blob/master/docs/ja/api/lcd.md
一方で、一般的なマイコン等でボタン押下処理等に使われる割り込み機能等は少し調べてもあまりサンプル等が出ていないので搭載されているESP32チップについてもう少し知る必要がありそうです。
次はボタンを押したら、Slackへメッセージ送信を実施してみたいと思います。