M5stickC + mruby/c のための開発環境構築
テクノロジー
mruby/c でIoTプログラミングを行うにあたり、環境構築は第一のつまずきポイントだと思います。 そんな状況を打破すべく、
mruby/c プログラミングを行うための環境構築手順を公開します。
ターゲットとしているデバイス 「M5stickC」 も ¥1,980 とお求めやすいデバイスなので、ぜひこの機会にお気軽にお試しください。
システムアップデートを行う
$ sudo apt update
$ sudo apt upgrade
Docker を利用するための前提条件となるパッケージをインストールする
$ sudo apt-get install curl apt-transport-https ca-certificates software-properties-common
Docker リポジトリを追加する
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
$ sudo apt update
Docker をインストールする
$ sudo apt install docker-ce
Docker の状態を確認する
$ sudo systemctl status docker
=> Sample Output:
Git をインストールする
$ sudo apt-get install git -y
Git から mruby/c 環境設定用のリポジトリを clone する
$ git clone https://github.com/paul-ml/esp32-dev-on-docker.git
Git から esp-idf のリポジトリを clone する
$ git clone --recursive https://github.com/espressif/esp-idf.git --branch release/v3.2
Docker イメージをビルドする
$ cd esp32-dev-on-docker
$ sudo docker build -t esp-image .
M5StickC をホストPCに接続する
デバイスを確認する
$ ls /dev/tty*
=> デバイスファイルの一覧が表示される
M5StickC をホストPCに接続する
デバイスを確認する
$ ls /dev/tty*
=> 1 で実行した結果と比較し増えているデバイスが M5StickC に該当する
(/dev/ttyUSB0 などと表示されるはず)
上記手順で M5StickC が表示されなかった場合
デバイスを確認する
$ ls /dev/tty*
GitHub から mruby/c 用のテンプレートリポジトリを clone する
$ git clone https://github.com/pauljoegeorge/m5stickc-mrubyc-template
Docker コンテナにアクセスする
$ sudo docker run --rm -it -v {WORK_DIR}/m5stickc-mrubyc-template:/proj --device=/dev/ttyUSB0 --entrypoint /bin/bash esp-image
プログラムをコンパイルし、M5stickC で実行する
$ make
$ make flash
$ make monitor
これで晴れて mruby/c + M5StickC でプログラミングを行える環境が整いました。 プログラミングは VM (Ubuntu) もしくは VirtualBox の共有フォルダ機能を使用してホストPC場で行うことができ、コンパイルは Docker 上で行うことができます。
それでは、Happy Hacking!