OTA 更新の作成 (AWS IoT コンソール) - FreeRTOS

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

OTA 更新の作成 (AWS IoT コンソール)

  1. AWS IoT コンソールの [管理][リモートアクション] を選択し、[ジョブ] を選択します。

  2. [Create job (ジョブの作成)] を選択します。

  3. [ジョブタイプ][FreeRTOS OTA 更新ジョブを作成] を選択し、[次へ] を選択します。

  4. [ジョブのプロパティ] で、[ジョブ名] と (オプションで) ジョブの [説明] を入力して、[次へ] を選択します。

  5. OTA 更新は、1 つ以上のデバイスのグループに展開できます。[更新するデバイス] で、ドロップダウンから 1 つ以上のモノまたはモノのグループを選択します。

  6. [ファームウェアイメージ転送プロトコルの選択] で、[HTTP] または [MQTT]、あるいはその両方を選択して、使用するプロトコルを各デバイスから決定できるようにします。

  7. [ファイルに署名して選択する] で、[新しいファイルに署名] を選択します。

  8. [コード署名プロファイル] で、[新しいプロファイルの作成] を選択します。

  9. [Create a code signing profile (コード署名プロファイルの作成)] に、コード署名プロファイルの名前を入力します。

    1. [Device hardware platform (デバイスハードウェアプラットフォーム)] の下で、使用しているハードウェアプラットフォームを選択します。

      注記

      FreeRTOS に適したハードウェアプラットフォームのみがこのリストに表示されます。認定されていないプラットフォームをテストしていて、署名に ECDSA P-256 SHA-256 暗号化スイートを使用している場合は、Windows Simulator コード署名プロファイルを選択して互換性のある署名を作成できます。認定されていないプラットフォームを使用していて、署名に ECDSA P-256 SHA-256 以外の暗号化スイートを使用している場合は、Code Signing for AWS IoT を使用することも、ファームウェア更新に自分で署名することもできます。詳細については、「ファームウェアの更新にデジタル署名する」を参照してください。

    2. [コード署名証明書] で、[既存の証明書の選択] を選択し、以前にインポートした証明書を選択するか、[新しいコード署名証明書のインポート] を選択してファイルを選択し、[インポート] を選択して新しい証明書をインポートします。

    3. [Pathname of code signing certificate on device] (デバイスのコード署名証明書のパス名) に、デバイスのコード署名証明書の完全修飾パス名を入力します。ほとんどのデバイスでは、このフィールドを空欄にできます。Windows シミュレーターの場合や、証明書を特定のファイルの場所に配置するデバイスの場合は、ここにパス名を入力します。

      重要

      ファイルシステムのルートにコード署名証明書が存在する場合、Texas Instruments CC3220SF-LAUNCHXL では、ファイル名の前にスラッシュ記号 (/) を含めないでください。そうでない場合、OTA の更新は認証中に file not found エラーで失敗します。

    4. [作成] を選択します。

  10. [ファイル][既存のファイルの選択] を選択し、[S3 を参照] を選択します。Amazon S3 バケットのリストが表示されます。ファームウェア更新を含むバケットを選択し、バケット内のファームウェア更新を選択します。

    注記

    Microchip Curiosity PIC32MZEF デモプロジェクトは、デフォルト名が mplab.production.bin および mplab.production.ota.bin の、2 つのバイナリイメージを生成します。OTA 更新用の画像をアップロードする際は、2 番目のファイルを使用します。

  11. [デバイス上のファイルのパス名] に、OTA ジョブがファームウェアイメージをコピーするデバイス上の場所の完全修飾パス名を入力します。この場所はプラットフォームによって異なります。

    重要

    Texas Instruments CC3220SF-LAUNCHXL では、セキュリティの制約により、ファームウェアイメージのパス名は /sys/mcuflashimg.bin である必要があります。

  12. [ファイルタイプ] を開き、0~255 の範囲の整数値を入力します。入力したファイルタイプが、MCU に配信されるジョブドキュメントに追加されます。この値をどうするかについては、MCU ファームウェア/ソフトウェア開発者が一切の権限を持ちます。例えば、プライマリプロセッサから独立してファームウェアを更新可能なセカンダリプロセッサを持つ MCU などが考えられます。OTA 更新ジョブを受信したデバイスは、ファイルタイプを使用して、更新の対象となるプロセッサを識別できます。

  13. [IAM ロール] で、「OTA 更新サービスロールを作成する」の手順に従ってロールを選択します。

  14. [Next] (次へ) をクリックします。

  15. OTA 更新ジョブの ID と説明を入力します。

  16. [Job type] (ジョブタイプ) で、[Your job will complete after deploying to the selected devices/groups (snapshot)] (ジョブは、選択したデバイス/グループへのデプロイ後に完了します (スナップショット)) を選択します。

  17. ジョブに適切なオプション設定 ([ジョブ実行ロールアウト]、[ジョブ中止]、[ジョブ実行タイムアウト]、[タグ]) を選択します。

  18. [Create] (作成) を選択します。

以前に署名済みのファームウェアイメージを使用するには
  1. [Select and sign your firmware image (ファームウェアイメージの選択と署名)] の下で、[Select a previously signed firmware image (以前に署名済みのファームウェアイメージを選択し)] を選択します。

  2. [Pathname of firmware image on device] (デバイスのファームウェアイメージのパス名) の下に、OTA ジョブがファームウェアイメージをコピーするデバイスの場所の完全修飾パス名を入力します。この場所はプラットフォームによって異なります。

  3. [Previous code signing job (以前のコード署名ジョブ)] の下で、[Select (選択)] を選択し、OTA 更新に使用しているファームウェアイメージに署名するために使用した以前のコード署名ジョブを選択します。

カスタムの署名済みファームウェアイメージの使用
  1. [Select and sign your firmware image (ファームウェアイメージの選択と署名)] の下で、[Use my custom signed firmware image (カスタムの署名済みファームウェアイメージの使用)] を選択します。

  2. [Pathname of code signing certificate on device] (デバイスのコード署名証明書のパス名) に、デバイスのコード署名証明書の完全修飾パス名を入力します。ほとんどのデバイスでは、このフィールドを空欄にできます。Windows シミュレーターの場合や、証明書を特定のファイルの場所に配置するデバイスの場合は、ここにパス名を入力します。

  3. [Pathname of firmware image on device] (デバイスのファームウェアイメージのパス名) の下に、OTA ジョブがファームウェアイメージをコピーするデバイスの場所の完全修飾パス名を入力します。この場所はプラットフォームによって異なります。

  4. [Signature (署名)] で、PEM 形式の署名を貼り付けます。

  5. [元のハッシュアルゴリズム] で、ファイル署名の作成時に使用されたハッシュアルゴリズムを選択します。

  6. [元の暗号化アルゴリズム] で、ファイル署名の作成時に使用されたアルゴリズムを選択します。

  7. [Select your firmware image in Amazon S3] (Amazon S3 のファームウェアイメージを選択) で、 Amazon S3 バケット内の Amazon S3 バケットと署名付きファームウェアイメージを選択します。

コード署名情報を指定した後、OTA 更新ジョブの種類、サービスロール、および更新用の ID を指定します。

注記

OTA 更新のジョブ ID に個人を特定できる情報を使用しないでください。個人を特定できる情報の例は以下のとおりです。

  • 名前

  • IP アドレス

  • E メールアドレス

  • ロケーション

  • 銀行の情報

  • 医療情報

  1. [Job type] (ジョブタイプ) で、[Your job will complete after deploying to the selected devices/groups (snapshot)] (ジョブは、選択したデバイス/グループへのデプロイ後に完了します (スナップショット)) を選択します。

  2. [IAM role for OTA update job (OTA 更新ジョブの IAM ロール)] で、OTA サービスロールを選択します。

  3. 英数字でジョブ ID を入力し、[Create (作成)] を選択します。

ジョブのステータスが、[IN PROGRESS] (進行中) として AWS IoT コンソールに表示されます。

注記
  • AWS IoT コンソールはジョブの状態を自動的には更新しません。ブラウザの表示を更新し、状態の更新を表示してください。

シリアル UART ターミナルをデバイスに接続します。更新されたファームウェアをデバイスがダウンロードしていることを示す出力が表示されます。

デバイスは、更新されたファームウェアをダウンロードした後、再起動してからファームウェアをインストールします。UART 端末で何が起きているかを確認することができます。

コンソールを使用して OTA 更新を作成する方法を示すチュートリアルについては、「無線通信経由更新デモアプリケーション」を参照してください。