AWS IoT 関連サービスの学習や、エッジデバイスの組み込みデバイス開発の入門のため、
M5Stack Core2 ESP32 IoT Development Kit for AWS IoT EduKit を購入し Hello World してみました。
環境
- ホストPC: Windows 10
- ターゲットデバイス: M5Stack Core2 for AWS
- Visual Studio Code
チュートリアル
AWS IoT EduKit に沿って読み進めます。
ドキュメントにもありますように M5Stack Core2 for AWS は日本からだと Switch Science で購入することができました。
自分の場合、ちょうど在庫があったので注文から納品まで大体 3日でした。
事前準備
CP210x Universal Windows Driver
ターゲットデバイスを Windows PC から接続するため、
USB to UART のブリッジ接続をするためのドライバをインストールします。
CP210x USB to UART Bridge VCP Drivers でリストアップされている、CP210x Universal Windows Driver をインストールします。
展開してインストーラ(CP210xVCPInstaller_x64.exe) を実行するだけです。
インストールが完了すると、デバイスマネージャー
の ポート(COMとLPT)
に Silicon Labs CP210x USB to UART Bridge
が確認できます。
VSCode 拡張: PlatformIO IDE
- コマンドパレットを開く(ctrl+shift+p)
- Install Extensions を選択
platformio.platformio-ide
をインストール
.platformio
ディレクトリ以下に cmake 等のツール群がインストールされました。
スマホアプリ ESP RainMaker (任意)
スマホからターゲットデバイスの操作をする場合は、ESP RainMaker をインストールします。
Android 版はこちら -> ESP RainMaker
サンプルコードの実行
以下のリポジトリに幾つかサンプルコードがあるので実行してみます。
今回は Getting-Started
プロジェクトを実行します。
ソースコードを clone して vscode を開く
Getting-Started をルートとして vscode を開きます。
git clone https://github.com/m5stack/Core2-for-AWS-IoT-EduKit.git cd Core2-for-AWS-IoT-EduKit/Getting-Started code .
シリアルポートの接続設定
platformio.ini の upload_port に接続ポートを入力します。
自分の場合は、COM4 で接続されていたので、
upload_port = COM4
に書き換えるだけです。
ビルドする
プロジェクトのカラムから Build
を選択するとファームウェアがビルドされます。
ターミナルのログから .pio/build
以下にビルド成果物が生成されているのがわかります。
詳細は CMakeLists.txt を追う感じになりそうです。
接続設定が誤っているとこの時点でエラーを吐いていました。
一度エラーを吐いた後、接続設定を修正してビルドしても中途半端な生成物が残存して失敗することがあったので、Clean
をしておくと良さそうです。
FW を書き込む
プロジェクトのカラムから Upload
を選択するとファームウェアが M5Stack Core2 に書き込まれます。
スマホから制御する
ESP RainMaker を起動しターミナルに表示された QR コードを入力してスマホから制御できるようにします。
(QR コードが表示されたり表示されなかったりしてよくわからない挙動。。)