W5100S-EVB-Picoは、最初のRP2040ベースのAWS認定ボードです。
このプロジェクトでは、AWS IoT Coreに接続してデータを送信する方法を示します。
W5100S-EVB-PicoをAWS IoT Coreに接続し、クラウドにデータを送信する方法を紹介します。
WIZnetには別のドキュメントウェブサイトがあります。
https://docs.wiznet.io/Product/iEthernet/W5100S/w5100s-evb-pico
まず最初に、AWSアカウントが必要です(持っていない場合はサインアップしてください)。
ログインしたら、IoT Coreサービスに移動し、thingを作成します。
ポリシーを添付します(まだ作成していない場合は、作成する必要があります)。私の場合は、テスト目的で全てを許可しましたが、ご自身のニーズに合わせたポリシーを作成してください。
ポリシーに関する詳細は、次のURLを参照してください:
https://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html
ポップアップウィンドウから4つの証明書をダウンロードします。
参考までに、公開鍵は使用されません。これらの鍵を後でダウンロードできなくなるため、安全な場所にコピーしておくことを念頭に置いてください。
また、セキュリティ上の理由から、ファームウェアに追加した後はこれらの鍵を削除することを推奨します。
AWS IoT Coreに「thing」が作成されたら、次のステップへ進みましょう - ファームウェア。
サンプルファームウェアは、次のGithubリンクからダウンロードまたはクローンできます:
クローンし、サブモジュールを更新し、パッチを適用してください。
ダウンロードした鍵をここにコピーしてください。
RP2040-HAT-AWS-C\examples\AWS_IoT_MQTT\mqtt_certificate.h
RSA 2048bit key: Amazone Root CA 1 -> mqtt_root_ca
Device certificate -> mqtt_client_cert
Private keyfile -> mqtt_private_key
次に、ドメイン、パブリッシュ&サブスクライブトピック、クライアントIDを入力する必要があります。
この情報は、..\RP2040-HAT-AWS-C\examples\AWS_IoT_MQTT\AWS_IoT_MQTT.c
内の変数定義に追加する必要があります。
Thing名をクライアントIDとして使用します。
テスト目的で、トピックとして shadow/update
、shadow/update/accepted
を使用しました。