AWS IoT Core への接続

この章では、デバイスファームウェアの設定、構築、およびフラッシュを行います。これにより、デバイスが Wi-Fi ネットワークと AWS IoT Core に接続できるようになります。AWS IoT Core に接続して通信するには、Wi-Fi の認証情報と AWS IoT エンドポイント の URL を使用してデバイスを設定する必要があります。安全な MQTT 接続の確立は、 AWS IoT Device SDK for Embedded C とオンボードの事前プロビジョニングされた安全なハードウェア証明書 Microchip ATECC608 Trust&Go を利用します。セキュアエレメントを使用すると、AWS IoT Core から証明書を取得したり、独自の証明書を生成して接続したりする必要はありません。AWS IoT Device SDK for Embedded C の接続ライブラリは、AWS IoT サービスおよび機能への接続とアクセスを簡単にします。

ESP32 ファームウェアの設定

ソースコードの設定は、 Kconfig を通して行います。Kconfig は Linux カーネルで使用されているものと同じ設定システムであり、利用可能な設定オプション (記号) をツリー構造に単純化するのに便利です。

設定メニューは、プロジェクトのルートで以下のコマンドを入力して、開くことができます。

pio run --environment core2foraws --target menuconfig

Configuring Core2 for AWS IoT Kit with p.py menuconfig

ここでは設定を行います。キーボードの方向キーを使って、その後、メニューから [AWS IoT Kit Configuration] を選択します。自分の Wi-Fi 認証情報で、[WiFi SSID] と [WiFi Password] を設定します。終了したら、キーボードの s ボタンを押して保存し、enter を押してファイルの場所を確認して、enter を押して q を押して終了します。

SSID が 2.4GHz ネットワーク用であることを確認してください。AWS 用 M5Stack Core2 ハードウェアの ESP32-D0WD は 5GHz 帯の Wi-Fiに対応していません。

Lチカ用のファームウエアのビルド、転送、モニタリング

これまでの手順で、Lチカのファームウェアをビルド(コンパイル)してアップロードする準備ができました。この手順は「開始方法」チュートリアルと同じです。

  1. ファームウエアのビルドを行うには、以下のコマンドを実行します。(コマンドの実行は数分かかります)
    pio run --environment core2foraws
    
  2. ビルドが成功したら、 USB経由で接続した機器にコンパイルしたファームウェアをアップロードし、シリアル接続するコマンドを実行して出力されるメッセージを監視します。
    pio run --environment core2foraws --target monitor
    
シリアル出力のアップロードまたは監視中に、誤ったポートまたはタイムアウトに関するエラーが表示された場合は、platformio.ini ファイルを開き、そのファイルの指示に従ってアップロードポートを手動で設定してください。

シリアルの出力を見ていると以下のようなログが見つかります。(出力されない場合は、Core2 for AWS IoT Kitを再起動してください) ここに表示されているClient Idは、後で**«CLIENT_ID»**として利用するので、コピーしておいてください。

␛[0;32mI (11413) Blinky: **************************************␛[0m
␛[0;32mI (11413) Blinky: * Client Id - 123456789ABCDEF       * ␛[0m
␛[0;32mI (11423) Blinky: **************************************

章のまとめ

この章では、デバイスを正常にコンパイルしてフラッシュし、シリアル出力を監視しました。AWS IoT Device SDK for Embedded Cを使用して、 MQTT メッセージブローカー (AWS IoT Core) で認証され、メッセージを受信できる状態になりました。

これで、このチュートリアルの最終章である Lチカ に進む準備が整いました。


Questions? Please use M5Stack Forum

AWS IoT Kit now features direct access to M5Stack Forum , which is a community-driven, questions-and-answers service. Search re:Post using the Core2 for AWS tag to see if your question has been asked and answered. If not, ask a new question using the Core2 for AWS tag.