# 事前準備 (2022年度：arduino-cli + VSCode) — IoT Programming ドキュメント

# 事前準備 (2022年度：arduino-cli + VSCode)

M5StickC Plus に、プログラムを書き込むには、 おもに以下の方法があります。

1. Arduino IDE

2. arduino-cli (Command-Line Interface)

3. PlatformIO

2021年度は1. の方法を用いましたが、初期設定が若干面倒なのと、エディタの編集機能が弱いので、今年は arduino-cli を用いる方法を推奨します。 ただし、arduino-cli はビルドと書き込みのみで、ファイル編集ができませんので、別途エディタとして Visual Studio Code を導入します。 余力がある人は、Visual Studio Code に Arduino拡張機能を追加して設定すると、ボタン一つで書き込みできる（Arduino IDEに近い）操作感を得ることができます。

注釈

M5StickC Plusは、2017年に発売されたM5StickC の後継版です。ディスプレイサイズと解像度、バッテリ容量が向上しています。また、ブザーも追加されているため、簡単な音を本体のみで鳴らすことができます。

注釈

UIFlowという、Webベースのブロックプログラミング環境もありますが、本実験では柔軟性と拡張性を重視し、Arduino/arduino-cli を使用します。Arduino/arduino-cli ではC言語でプログラムを記述します。

以下、こまかいですが、

1. arduino-cli のインストール

2. arduino-cli でボード情報とライブラリのインストール

3. サンプルファイルのコンパイルと転送

4. Visual Studio Code のインストール

5. Arduino拡張機能の追加と設定

の順に、説明します。

## (1) arduino-cli のインストール

arduino-cli をインストールします。

### Windows の場合

1. Git for Windows をインストールしてください。Setup時にいろいろ訊かれますが、すべてそのまま「Next」を押して進めて大丈夫です。

2. Git Bash を起動して、ターミナルに以下のコマンドを入力してください（図 1 ）。（この下の灰色のテキストエリアの右端の四角アイコンを押すと、コマンドをコピーできます。）

       curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | sh

図 1 arduino-cli のインストールコマンド実行後の画面（例）

### Mac の場合

1. Homebrew パッケージマネージャ をまだ入れていない場合は、インストールしてください。ターミナルを開き、以下のコマンドを実行します。

       /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

2. 続けて、ターミナルで、以下のコマンドを実行してください。

       brew update
       brew install git arduino-cli

## (2) arduino-cli でボード情報とライブラリのインストール

## (3) サンプルファイルのコンパイルと書き込み

1. ここで (2) と (3) を行う準備として、サンプルファイルと設定ファイルを 三浦の Git リポジトリ からダウンロードします。ターミナル (or Git Bash) で以下のコマンドを実行してください。

       git clone https://git.istlab.info/git/miura250/M5StickCPlus_FactoryTest2022.git
       cd M5StickCPlus_FactoryTest2022
       ls -al

（cd のあとのフォルダ名が長いので、途中でTabキーを押して補完することをおすすめします。） `ls -al` の結果は、図 2 のようになります。

図 2 サンプルファイルの中身を確認

2. 以下のコマンドを入力すると、(2) arduino-cli でM5StickCPlusの開発をするための準備として、「ボード情報とライブラリのインストール」 を行います。

       ./setup.sh

注釈

setup.sh は事前準備のときの 1回だけ実行すればOKです。その後、ライブラリが必要となり、追加でダウンロードするときは、arduino-cli lib install XXXX コマンドを実行してください。

3. 以下のコマンドを入力すると、(3) のサンプルファイル（FactoryTest2022）の「コンパイル」 を行います（図 3）。

       ./compile.sh

警告

M5StickCPlus本体がない事前準備の段階で、できるのは、ここまでです。 以下の「書き込み」は、本体をUSB接続したあとで、行う作業になります。次のステップとして、(4)のVisual Studio Code のインストール に進んでください。

4. 以下のコマンドを入力すると、(3) の「書き込み」 を行います（図 3）。 ただし「書き込み」は、M5StickCPlus本体をUSB接続していないと失敗します。

       ./upload.sh

注釈

今後、ソースコード(ここでは、FactoryTest2022.ino)を編集していくと、「コンパイル」と「書き込み」 を頻繁に実行することになります。その場合、以下のように && でつなげて1回のコマンド入力でも実行できます。

    ./compile.sh && ./upload.sh

図 3 コンパイルと書き込み(upload)を行っている様子

## (4) Visual Studio Code のインストール

Windows の場合は、Microsoft Store で、Visual Studio Code のインストールができます。Mac の場合は、インストーラー でダウンロードしてください。

## (5) Arduino拡張機能の追加と設定

必須ではないですが、できれば次のページを参考に、 Arduino拡張機能の追加と設定 をしておくとよいでしょう。

この設定をしておくと、ソースコード編集→保存→右上のボタン　で、書き込みができます。

注釈

この設定をしない場合でも、(3) のコマンドライン（またはシェルスクリプト）を修正・実行すれば、書き込みができます。