はじめに
M5Stack Core2で使える開発環境についてのまとめです。以下の4つの言語(プラットフォーム)の開発環境についてまとめています。
各開発環境のポイントや、入手先もまとめているので「M5Stackには興味があるけど、どんな環境で始めたらいいかわからない」といった方の参考になればうれしいです。
※ クリックすると内容にジャンプできます。
環境
この記事は以下の環境を想定して作成しています
環境 | バージョン | 備考 |
M5Stack | M5Stack Core2 | |
開発用PCのOS | Windows10 | Mac・Linuxにも対応している開発環境もあります。詳細はリンク先をご覧ください。 |
① MicroPython
UIFlow
- 公式の開発環境
- ブラウザを使ったオンライン版・アプリでのオフライン版がある
- UIエディタ・Units追加機能が強力
- VisualStudio Codeほどのカスタマイズ性はなし
- UIも作りたい。これからMicroPythonに入門したい人向け
M5Stackの公式開発環境です。ブラウザを使うオンライン版・アプリをインストールするオフライン版の両方があります。プログラムの読み書き・コードの補完など、開発に必要な機能は十分です。オンライン版はWifiで開発をおこなうこともできます。
UIFlowの最大の特徴は、UIエディタとUnitブロックの機能です。ボタンやラベル・Unitと呼ばれる外部センサなどもドラック&ドロップで簡単に扱うことができます。
「組み込み/IoTだけど、UIにもこだわりたい」「これからMicroPythonに入門したい」という方向けの開発環境です。
Visual Studio Code (vscode-m5stack-mpy)
- 公式でも紹介・セットアップの開発あり
- 使い慣れた環境でカスタマイズ性あり・インストールも簡単
- 画面レイアウト機能なし。USB接続のみ
- UIは不要。使い慣れた環境が一番!という中級~上級者向け
VisualStudio Codeの拡張機能「vscode-m5stack-mpy」を使って、MicroPythonでプログラムする開発環境です。インストールは簡単で、設定方法もM5Stackの公式サイトで解説されています。
残念ながら、UIエディタやUnitの追加に関しての機能は搭載していないため、自力でコードを書ける中級~上級の方向けの開発環境です。
② スケッチ
Arduino IDE
- 公式サイトに解説・公式ライブラリあり
- 必要な機能は一通り存在。情報も多い
- UI関連の機能はなし。組み込み的な開発向け
- Arduinoボードみたいなことをしたい・これからスケッチに入門したい人向け
Arduinoボードの開発ではおなじみの開発環境です。ステップ実行やシリアル通信など、開発に必要な機能は十分備えています。
インストールや設定も簡単で、公式サイトにも設定方法・サンプルの実行方法が掲載されています。IDEの使い方の情報も豊富です。
UI作成に関する機能はありませんが、「ArduinoボードライクにM5Stackを使いたい」「これからスケッチに入門したい」という方にはピッタリな開発環境です。
③ .NET nanoFramework(C#)
VisualStudio
- 公式ライブラリあり
- 組み込み系でC#が使える。
- .NET nanoFrameWork自体の情報が少ない
- 絶対C#で開発したい。イベント等は大体わかる。という上級者向け
.NET nanoFrameWorkを使って、C#でM5Stack Coreを扱う開発環境です。GitHubのM5Stack公式ライブラリのページの内で使い方も解説されています。
組み込み系では珍しくC#を使える環境ですが、nanoFrameWork自体が情報が少なく、UIエディタ等も存在しないため、コントロールやイベントなどの仕組みを熟知していて、自力でゴリゴリと開発できる方向けの開発環境です。
④ ビジュアルプログラミング (Blockly)
UIFlow(Blockly)
- 公式の開発環境
- ブロックの組み合わせでプログラムが作れる
- ブラウザを使ったオンライン版・アプリでのオフライン版あり
- UIエディタ・Units追加機能
- ⇒ プログラミング未体験の方~中級者まで幅広く使える
人気のScratchのように、ブロックをつなぎ合わせてM5Stackのプログラミングをする開発環境です。マウスのみでもプログラムを作ることができます。
Scratchはゲームなどの「パソコンの中だけのプログラム」にとどまりますが、UIFlowでは「M5Stackから音を鳴らす」「振動させる」など、より体感的で身近なプログラムを作ることができます。
子供向けのようにも見えますが、ブロックだけでもかなり細かい処理や、外部センサ(Unit)までを扱うことができるので、入門者~中級者まで幅広く使える開発環境です。
ブロックからMicroPythonのコードに切り替え(変換)ができるので。自力でコードを書く際のヒントにも使えます。
ブロックからMicroPythonのコードに切り替え(変換する)こともできます。自力でコードを書く際のフレームやヒントにも使えます。入門者~中級者の方まで幅広く使える開発環境です。
このブログでも、UIFlowの使い方について解説しています。興味がある方は以下もご覧ください。
まとめ
M5Stack Core2で使える開発環境についてのまとめてみました。特に初心者・入門者の方にとって、最初に使う開発環境は、その後の学習や挫折に大きく影響を与える要素だと思うでの、始める前の参考になればうれしいです。また、M5Stackを初めてみたい方のきっかけや後押しにもなってもらえればうれしいです。
M5Stack Core2 をはじめよう
M5Stack Core2は、USBケーブル(TypeA-TypeC)も付属なので、すぐに始めることができます。セットアップ方法については、こちらの記事をご覧ください。
こちらの記事で「おすすめ工具」も紹介しています。
M5Stackを詳しく知るには
M5Stackをより詳しく知りたい方は、こちらの書籍がおおすすめです。書籍の中で使われているのは、M5Stack Basic + Arduino言語ですが、M5Stackの概要・構成などをより詳しく学べます。
質問・要望 大歓迎です
「こんな解説記事作って」「こんなことがしたいけど、〇〇で困ってる」など、コメント欄で教えてください。 質問・要望に、中の人ができる限り対応します。
使えたよ・設定できたよの一言コメントも大歓迎。気軽に足跡を残してみてください。記事を紹介したい方はブログ、SNSにバシバシ貼ってもらってOKです。