#はじめに
Raspberry PiやArduino UNOなどは電子工作など様々な用途で使用されているマイコンとして、非常に有名ですが、これらよりもはるかに使いやすいM5Stackというマイコン端末があることを知り、触れてみることにしました。
#M5Stackとは
M5Stack(エムファイブスタック)とは、マイコン(ESP32)と、SDカードスロット、ボタン、USBやGroveのコネクタを5cm四方の基板に搭載し、ディスプレイや電源までを樹脂のケースに詰め込んであるマイコン端末です。
ESP32だけで、Wi-FiとBluetoothをつかった無線通信ができるので、IoTデバイスとしても人気です。
#スペック・内容物
私が購入した以下のサイトにM5Stackの詳細なスペックが記載されています。
https://www.switch-science.com/catalog/3647/
処理能力だとRaspberry Pi > M5Stack >Arduino UNOといった感じです。
内容物はこんな感じで、梱包されていた箱に一言メッセージが入っていました!
本体+専用の樹脂ケースに、USBケーブルやジャンパワイヤ(オス~メス)、ステッカー、説明書が同梱されています。
本体
#ディスプレイにHello Worldを表示させる。
###Hello Worldを表示するまでの手順
1.Arduino IDEをPCにインストール
2.USBシリアルドライバのインストール
3.ESP32ボードマネージャのインストール
4.ボードの設定
5.M5Stackライブラリのインストール
6.「Hello World」のスケッチ(プログラム)を記述
7.ビルド&マイコンボードへの書き込み処理
以上の手順でM5Stackの画面に任意の文字を表示することができます。
###1.Arduino IDEをPCにインストール
Arduino IDEでは効率よく開発できるよう、マイコン用のコンパイラ、アップローダ、ライブラリマネージャー、ボードマネージャなどの機能が入っているのでこちらを使用します。
まずは、Arduino公式サイトよりIDEをダウロードします。
https://www.arduino.cc/en/Main/Software
自分の環境にあったOSのリンクをクリックし、ダウンロード。今回はWindowd10で行います。(自宅PC)
auduino-1.8.33-Windows.exeをダウンロードし、インストールします。
※インストールは初期値のままで画面に従い、インストール。
インストールできたら、デスクトップに表示されるArudino IDEデスクトップアイコンをクリックしてIDEを起動。
###2.USBシリアルドライバのインストール
以下にアクセス
https://docs.m5stack.com/#/en/related_documents/Arduino_IDE
「4.Install USB Driver」をクリックし、Windows、Mac、Linuxいずれかのドライバをダウンロードし、PCにインストール。(私の場合はCP210x_VCP_Windows.zip)
これでUSBシリアルドライバのインストールは完了。
###3.ESP32ボードマネージャのインストール
IDEのファイルメニュー → 環境変数を開き以下のURLを設定。
https://dl.espressif.com/dl/package_esp32_index.json
OKをクリックし、次にツール → ボード:Arduino/Genuino UNO → ボードマネージャに表示されたESP32 by Espressif Systems をインストール。
ボードマネージャは閉じておきます。
###4.ボードの設定
ツールに以下が表示されていることを確認。(なければ選択)
・ボード:M5Stack-Core-ESP32
・Upload Speed:921600
・シリアルポート:COM7
###5.M5Stackライブラリのインストール
ツール → ライブラリをインクルード → ライブラリマネージャー
検索窓に「M5Stack」と入力し、検索 → M5Stack by M5Stackをインストール
これでM5Stackを使う準備は完了になります。
###6.「Hello World」のスケッチ(プログラム)を記述
ファイル → スケッチ例 → M5Stack → Basics → HelloWorld
または、以下をエディタに貼り付け。
#include <M5Stack.h>
// the setup routine runs once when M5Stack starts up
void setup(){
// Initialize the M5Stack object
M5.begin();
M5.Power.begin();
// LCD display
M5.Lcd.print("Hello World");
}
// the loop routine runs over and over again forever
void loop() {
}
###7.ビルド&マイコンボードへの書き込み処理
コードがかけたら、M5StackとPCをケーブルで接続し、
画面左上の「→」ボタンをクリックすれば、ビルドされた実行形式のファイルが、マイコンボードに書き込まれ、PGが実行される。
実行後
###まとめ
初期設定は意外とやることが多く、Raspberry Piなどと作業量は変わらないが、設定さえすれば、ハードケース、内蔵バッテリー、液晶やスピーカー、ボタンなどが既についているため、付属の部品を買わなくてもある程度遊ぶことができる。IoTや、電子工作で扱いやすいのがわかる気がしました。
個人的にはビルドに数分かかるので、設定を見直し、改善していきたいのと、他にも様々なライブラリがあるので色々触ってみようと思う。