Avance.Lab

技術紹介

M5Stackでお手軽にIoT開発をしてみよう

公開日:2025.10.10 更新日:2025.10.10

tag: ArduinoIoT組み込み

こんにちは!Matsuです。

過去、社内備品管理システムを作ったり、その他の業務などでM5Stackを使ってみたところ、簡単にIoT機器を開発できる便利なものでしたので、ご紹介したいと思います。

M5Stackってなに?

M5Stack(エムファイブスタック)は、ESP32という人気マイコンをベースにした小型コンピュータです。
「マイコン」と聞くと難しそうに思うかもしれませんが、要は「小さな頭脳」。
この頭脳にプログラムを書き込むことで、いろんなモノを動かすことができます。

例えば、マイコン開発ではこんなことができます。

  • 温度センサーをつないで部屋の気温を測ってスマホに送信
  • LEDを好きな色で光らせてインテリアライトにする
  • ボタンを押して家電を操作
  • モーターを制御してミニロボットを走らせる
  • Wi-Fi経由でクラウドにデータを送る

M5Stackは、こういった「マイコン遊び」をめちゃくちゃ手軽にしてくれる頼れる存在です。

M5Stackの種類

M5Stackにはいろいろなモデルがありますが、そのうち一部のモデルを紹介します。

  • CoreS3 モニター、ボタン、各種センサがたっぷり入った上位版
  • Core2 v1.1 タッチ液晶つきの定番モデル
  • Tab5 5型の大型モニタを搭載したモデル
  • StickC-Plus2 コンパクトなスティック型

多くのモデルに液晶画面やボタン、スピーカー、Wi-Fi機能などが最初から入っています。さらに、多機能なモデルでは、加速度センサや照度センサ等いろいろなセンサが標準で付いていたりします。
まずは Core2StickC Plus あたりが入門にはおすすめです。

M5Stackの豊富なオプション

M5Stackには、いろいろな拡張モジュールが用意されています。M5Stack用の拡張モジュールには、温度センサや光センサ、外部ディスプレイやキー、ダイヤル、GPSやカメラ、4G通信などなど、さまざまなものが用意され、それがGrove端子というもので簡単に接続できます。
これらを組み合わせることで「小さなIoT家電」を作ることができます。

拡張モジュールはとてもたくさんありますが、一例を紹介します。

M5Stack Core2に重量計接続用ユニットを介して市販の重量計を接続し、重量を測っているところ

M5Stackの開発環境

M5Stackの開発環境は代表的には以下のようなものがあります。

  • Arduino IDE:基本。C/C++言語をベースとした”Arduino言語”で書く。サンプル豊富。大規模開発は苦手だけどまずはこれから始めるとよい。
  • UIFlow:M5Stack社が開発している、ブロックタイプのビジュアル開発環境。ブロックをつなぐだけでOK。
  • MicroPython:Pythonで書ける。簡単で試作に向く。
  • PlatformIO:VSCode統合の開発環境。豊富なコード補完などが使えるモダンで便利な環境。

最初に触ってみるものとしては、プログラミング経験者は Arduino IDE 、プログラミング未経験者はUIFlowがいいかなと思います。

M5Stackを動かす流れ(超ざっくり)

ここではArduino IDEを例にM5Stackを動かすまでの流れをざっくり紹介します。

  1. Arduino IDEをPCにインストール
  2. ESP32ボード定義を追加
  3. M5Stack用ライブラリを入れる
  4. USBケーブルでPCにM5Stackを接続
  5. サンプルプログラム(Hello World)を書き込む
  6. 液晶に文字が出たら成功!

簡単ですね! これだけで「自分でIoTガジェットを動かせた!」という体験ができます。

Arduino IDE画面

まとめ

M5Stackは、「買ってすぐに動かせる小さなIoT開発ボード」です。
マイコンに興味はあるけど難しそう…と思っていた人でも、M5Stackなら始めやすいはず。

  • オールインワンで完成度高い
  • 開発方法を自由に選べる
  • いろんな機能がかんたんに試せる
  • すぐにIoT作品づくりを体験できる

気になったら、まずはM5StickC Plusなど小さいモデルを手にとって遊んでみるのがおすすめです。

Matsu

最近ガレージをつくってDIYにハマってしまう。
無限に欲しくなる電動工具が怖い。

関連記事