M5Stack

【Windows】M5Stack Core2 言語ごとの開発環境まとめ

はじめに

M5Stack Core2で使える開発環境についてのまとめです。以下の4つの言語(プラットフォーム)の開発環境についてまとめています。

各開発環境のポイントや、入手先もまとめているので「M5Stackには興味があるけど、どんな環境で始めたらいいかわからない」といった方の参考になればうれしいです。

※ クリックすると内容にジャンプできます。

環境

この記事は以下の環境を想定して作成しています

環境バージョンなど 備考
M5Stack   M5Stack Core2
PCのOSWindows 10Mac・Linuxにも対応している開発環境もあります。詳細はリンク先をご覧ください。

① MicroPython

UIFlow

UIFlow(MicroPython)の画面イメージの紹介

UIFlow(オンライン版):
https://flow.m5stack.com/

UIFlow(オフライン版 UIFlow-Desktop-IDE):https://docs.m5stack.com/en/quick_start/m5core/uiflow

  • 公式の開発環境
  • ブラウザを使ったオンライン版・アプリでのオフライン版がある
  • UIエディタ・Units追加機能が強力
  • VisualStudio Codeほどのカスタマイズ性はなし
  • UIも作りたい。これからMicroPythonに入門したい人向け

M5Stackの公式開発環境です。ブラウザを使うオンライン版・アプリをインストールするオフライン版の両方があります。プログラムの読み書き・コードの補完など、開発に必要な機能は十分です。オンライン版はWifiで開発をおこなうこともできます。

UIFlowの最大の特徴は、UIエディタとUnitブロックの機能です。ボタンやラベル・Unitと呼ばれる外部センサなどもドラック&ドロップで簡単に扱うことができます。

「組み込み/IoTだけど、UIにもこだわりたい」「これからMicroPythonに入門したい」という方向けの開発環境です。

Visual Studio Code (vscode-m5stack-mpy)

Pico-Go+VS Codeを紹介する画像
  • 公式でも紹介・セットアップの開発あり
  • 使い慣れた環境でカスタマイズ性あり・インストールも簡単
  • 画面レイアウト機能なし。USB接続のみ
  • UIは不要。使い慣れた環境が一番!という中級~上級者向け

VisualStudio Codeの拡張機能「vscode-m5stack-mpy」を使って、MicroPythonでプログラムする開発環境です。インストールは簡単で、設定方法もM5Stackの公式サイトで解説されています。

残念ながら、UIエディタやUnitの追加に関しての機能は搭載していないため、自力でコードを書ける中級~上級の方向けの開発環境です。

② スケッチ

Arduino IDE

ArduinoIDEの画面イメージの紹介
  • 公式サイトに解説・公式ライブラリあり
  • 必要な機能は一通り存在。情報も多い
  • UI関連の機能はなし。組み込み的な開発向け
  • Arduinoボードみたいなことをしたい・これからスケッチに入門したい人向け

Arduino IDE 公式:

https://www.arduino.cc/en/software

M5Stack Core2を使う場合の解説ページ(公式)

https://docs.m5stack.com/en/quick_start/core2/arduino

Arduinoボードの開発ではおなじみの開発環境です。ステップ実行やシリアル通信など、開発に必要な機能は十分備えています。

インストールや設定も簡単で、公式サイトにも設定方法・サンプルの実行方法が掲載されています。IDEの使い方の情報も豊富です。

UI作成に関する機能はありませんが、「ArduinoボードライクにM5Stackを使いたい」「これからスケッチに入門したい」という方にはピッタリな開発環境です

③ .NET nanoFramework(C#)

VisualStudio

VisualStudioの画面イメージの紹介
  • 公式ライブラリあり
  • 組み込み系でC#が使える。
  • .NET nanoFrameWork自体の情報が少ない
  • 絶対C#で開発したい。イベント等は大体わかる。という上級者向け

.NET nanoFramework:

VisualStudioのメニュー欄「拡張機能」からインストールできます。

GitHubのM5Stackのプロジェクトページ:

https://github.com/nanoframework/nanoFramework.M5Stack

.NET nanoFrameWorkを使って、C#でM5Stack Coreを扱う開発環境です。GitHubのM5Stack公式ライブラリのページの内で使い方も解説されています。

組み込み系では珍しくC#を使える環境ですが、nanoFrameWork自体が情報が少なく、UIエディタ等も存在しないため、コントロールやイベントなどの仕組みを熟知していて、自力でゴリゴリと開発できる方向けの開発環境です。

④ ビジュアルプログラミング (Blockly)

UIFlow(Blockly)

UIFlow(Blockly)の画面イメージの紹介
  • 公式の開発環境
  • ブロックの組み合わせでプログラムが作れる
  • ブラウザを使ったオンライン版・アプリでのオフライン版あり
  • UIエディタ・Units追加機能
  • ⇒ プログラミング未体験の方~中級者まで幅広く使える

UIFlow(オンライン版):
https://flow.m5stack.com/

UIFlow(オフライン版 UIFlow-Desktop-IDE):https://docs.m5stack.com/en/quick_start/m5core/uiflow

人気のScratchのように、ブロックをつなぎ合わせてM5Stackのプログラミングをする開発環境です。マウスのみでもプログラムを作ることができます。

Scratchはゲームなどの「パソコンの中だけのプログラム」にとどまりますが、UIFlowでは「M5Stackから音を鳴らす」「振動させる」など、より体感的で身近なプログラムを作ることができます。

子供向けのようにも見えますが、ブロックだけでもかなり細かい処理や、外部センサ(Unit)までを扱うことができるので、入門者~中級者まで幅広く使える開発環境です。

ブロックからMicroPythonのコードに切り替え(変換)ができるので。自力でコードを書く際のヒントにも使えます。

ブロックからMicroPythonのコードに切り替え(変換する)こともできます。自力でコードを書く際のフレームやヒントにも使えます。入門者~中級者の方まで幅広く使える開発環境です。

このブログでも、UIFlowの使い方について解説しています。興味がある方は以下もご覧ください。

まとめ

M5Stack Core2で使える開発環境についてのまとめてみました。特に初心者・入門者の方にとって、最初に使う開発環境は、その後の学習や挫折に大きく影響を与える要素だと思うでの、始める前の参考になればうれしいです。また、M5Stackを初めてみたい方のきっかけや後押しにもなってもらえればうれしいです。

M5Stack Core2 をはじめよう

M5Stack Core2には標準でUSBケーブル(TypeA-TypeC)が付属しているので、買ってすぐに始めることができます。アマゾンで買えるので購入も簡単です。

「ポイントやチャージを使いたい」「日用品・他の買い物と合わせて買いたい」という方は以下のリンクをご利用ください。

2022年4月現在、円安と半導体不足の影響からか、M5Stack Core2も在庫小・価格上昇・長納期化が進んでいるようです。今後の動向は読めないので、購入予定の方は早めの行動をおすすめします。

こちらの記事で開発時に使えるおすすめツールも紹介しています。

¥5,990 (2022/03/30 18:04時点 | Amazon調べ)

今ならAmazonで、通常会員0.5~2% Prime会員なら最大2.5%のポイントが貰える「現金チャージ」も使えます。

もう少し安いやつないの?

WifiやBluetoothの機能はありませんが、H/W制御の特化の「RaspberryPi Pico」なら1000円程度で始めることができます。「激安でH/Wを動かしたい」という方にはRaspberryPi Picoがおすすめです。

応援・要望お待ちしてます

ブログを見ていて「この辺を詳しく知りたい」「このライブラリの使い方を知りたい」「こんなことで困ってる」...etc があれば、コメント・問い合わせ・Twitterで教えてください。質問・ご要望に合わせて解説記事を作ります。

ブログを気に入っていただけたり、「応援してもいいよ」という方がいたら、ブログやSNSでの紹介をお願いします。 あたたかい応援は、中の人の更新の大きな励みになります。

ABOUT ME
えす
現役のソフトウェアエンジニアです。 C++ C# Python を使ってます。10年ちょい設計/開発部門にいましたが、今はQAエンジニアっぽいことをしています。

COMMENT

メールアドレスが公開されることはありません。