ブロックチェーン・AI・システム開発の株式会社INDETAIL

ちっちゃくてもパワフル!運よく手に入ったM5Stackを触ってみよう

2018.05.14
tacck

GW明けましたが、なかなか気温の上がらない札幌です。
そろそろ、会社近くの大通公園で色々なイベントが始まる季節になったなぁ、と感じるtacckです。

今回は、組み込み系のガジェット界隈で一世を風靡している"M5Stack"をようやく入手しましたので、こちらの紹介をしてみたいと思います。

M5Stackとは

こちらがオフィシャルのサイトです。
http://m5stack.com/
開発元は中国のようで、オフィシャルからは"AliExpress"での購入となるようです。

国内での販売は、みんな大好き"Switch Science"さん。私もこちらで購入しました。
https://www.switch-science.com/catalog/3647/

私が購入したのは、上記の"M5Stack Basic"と"M5Stack Gray(9軸IMU搭載)"の二つです。
https://www.switch-science.com/catalog/3648/
※人気があるので、タイミングによっては品切れとなっています。ご了承ください。

どんな製品かというのは、Switch Scienceさんの文から引用させていただきます。

M5Stackは、320 x 240 TFTカラーディスプレイ、microSDカードスロット、スピーカーを備えたコンパクトで便利な開発モジュールです。ESP32を搭載しているため、Wi-FiおよびBluetooth通信を扱え、Arduino環境での開発が可能です。

つまり、この小さい一台で、画面操作も、音の再生も、通信も、なんでもできちゃう!という、大変素晴らしいものです。

セッティング

http://m5stack.com/assets/docs/index.html
基本的にはこちらに沿った流れで作業を進めます。

環境

環境は下記となります。

  • マシン: MacBook Pro (13-inch, 2017, Touch Barの無いモデル)
  • macOS: High Sierra 10.13.4

USBドライバインストール

https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers
こちらから、該当するOSのドライバをダウンロードし、インストールを行ないます。

私の環境ではインストール途中にセキュリティの確認ダイアログが出たので、許可して先に進めています。
これ自体は、特に迷うことなく終了しました。

Arduino IDEインストール

https://www.arduino.cc/en/Main/Software
開発環境であるArduino IDEをこちらからダウンロードします。
執筆時点(2018年5月10日)の最新版である、1.8.5をダウンロードします。

こちらも、インストールは特に問題なく終了できました。
インストールが終わったら、一度起動します。

起動完了したら、一旦終了します。

続けて、ESP32 Arduino Coreをコマンドでインストールします。
Macの場合は、こちらに書かれてある通りのコマンドを実行します。
https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/mac.md#installation-instructions-for-mac-os

実行した結果は、下記のようになります。

この状態になったら、再度Arduino IDEを起動しましょう。

M5Stack接続してシリアルポート選択

M5Stackへプログラムを転送する場合、シリアルポートを正しく選択する必要があります。
これについては、先にやった"USBドライバ"によってインストール済みなので、すぐに使えるはずです。

まずは、M5StackをMacと接続します。

接続できたら、Arduino IDEの "ツール" -> "シリアルポート" で/dev/cu.SLAB_USBtoUARTを選択します。

ライブラリのインストール

引き続き、Arduino IDEでM5Stackのライブラリをインストールします。

"スケッチ" -> "ライブラリをインクルード" -> "ライブラリを管理" を選択します。

ダイアログが出てくるので、テキストボックスに"m5stack"と入れて絞り込みを行ないます。
その後、M5Stack by M5Stackを選択して、"インストール"をクリックしてライブラリのインストールを行ないます。

ボード選択

続けて、使用する"ボード"を選びます。
Arduinoは、今回のM5Stackのような互換機を含めて、多くの種類(ボード)があります。
それらの中でどのボードを使うかを、正しく選んでおく必要があります。

今回は、 "ツール" -> "ボード" から M5Stack-Core-ESP32 を選択します。

サンプルスケッチ実行

さて、これで準備が整いました。
標準で添付されているサンプルコードを、いくつか確かめてみましょう。

Hello World

やはり、最初は"Hello World"ですよね。

開いたら、実行ボタンを押して実行してみましょう。
実行すると、M5Stackでこのように表示されます。

MPU9250BasicAHRS

今回、9軸IMU搭載のM5Stackも買っているので、そちらのセンサーを確かめられるサンプルコードも試してみます。
乗っているチップはMPU9250で3軸加速度、3軸ジャイロ、3軸コンパスセンサ(磁気センサ)が使えます。

実行すると、このように表示されます。

M5Stackを動かすと、中の数字も色々と変わっていきます。

Flappy Bird

ゲームのサンプルコードもあります。
今回はFlappy Birdを試してみましょう。

せっかくなので、こちらは動画で観てみたいと思います。

私が下手すぎてすぐ終わりましたが、ゲームも作ることができそうですね。

まとめ

いかがでしたでしょうか。
M5Stack一台あれば、画面表示含めたプログラムを作ってみることが可能です。
センサーを接続しやすい作りにもなっているので、色々と拡張もしやすく作り手にとってとても嬉しいものです。

これから、しばらくこちらで遊んでみたいと思います。

関連タグ:

tacck Takuya KIHARA

エンジニア (モバイルアプリ、フロントエンド、バックエンド、インフラ) 得意なことは、領域をまたいで考え、開発すること。 ブログでは、主にAnsible、Docker、Raspberry Piのことを書いています。 好きなフィギュアスケートの技は、スプレッド・イーグルです。