Espressif の開始方法 ESP32-WROOM-32SE - 無料RTOS

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

Espressif の開始方法 ESP32-WROOM-32SE

重要

このリファレンス統合は、廃止された Amazon-FreeRTOS リポジトリでホストされます。新しいプロジェクトを作成するときは、ここから始めることをお勧めします。廃止された Amazon-FreeRTOS リポジトリに基づいて既存の FreeRTOS プロジェクトがある場合は、「」を参照してくださいAmazon-FreeRTOS Github リポジトリ移行ガイド

注記
  • 独自の Espressif IDFプロジェクト内で無料のRTOSモジュラーライブラリとデモを統合する方法については、ESP32「-C3 プラットフォーム の注目のリファレンス統合」を参照してください。

  • 現在、ESP32-WROOM-32SE の無料RTOSポートは対称マルチプロセッシング (SMP) 機能をサポートしていません。

このチュートリアルでは、Espressif ESP32-WROOM-32SE の使用を開始する方法について説明します。パートナーデバイスカタログで AWS パートナーから購入するには、ESP32-WROOM-32SE を参照してください。

概要

このチュートリアルでは次のステップを説明します。

  1. ボードをホストマシンに接続します。

  2. ホストマシンにソフトウェアをインストールし、マイクロコントローラーボード用の組み込みアプリケーションを開発およびデバッグします。

  3. 無料RTOSデモアプリケーションをバイナリイメージにクロスコンパイルします。

  4. アプリケーションバイナリイメージをボードにロードし、アプリケーションを実行します。

  5. シリアル接続を使用することによって、実行中のアプリケーションをモニタリングおよびデバッグします。

前提条件

Espressif ボードで無料RTOSの使用を開始する前に、 AWS アカウントとアクセス許可を設定する必要があります。

にサインアップする AWS アカウント

がない場合は AWS アカウント、次の手順を実行して作成します。

にサインアップするには AWS アカウント
  1. https://portal.aws.amazon.com/billing/サインアップ を開きます。

  2. オンラインの手順に従います。

    サインアップ手順の一環として、通話呼び出しを受け取り、電話キーパッドで検証コードを入力するように求められます。

    にサインアップすると AWS アカウント、 AWS アカウントのルートユーザー が作成されます。ルートユーザーには、アカウントのすべての AWS のサービス とリソースへのアクセス権があります。セキュリティのベストプラクティスとして、ユーザーに管理アクセスを割り当て、ルートユーザーのみを使用してルートユーザーアクセスが必要なタスクを実行してください。

AWS は、サインアッププロセスが完了した後に確認 E メールを送信します。/ に移動し、マイアカウント を選択すると、いつでも現在のアカウントアクティビティを表示https://aws.amazon.comし、アカウントを管理できます。

管理アクセスを持つユーザーを作成する

にサインアップしたら AWS アカウント、 のセキュリティを確保し AWS アカウントのルートユーザー、 を有効にして管理ユーザーを作成し AWS IAM Identity Center、日常的なタスクにルートユーザーを使用しないようにします。

のセキュリティ保護 AWS アカウントのルートユーザー
  1. ルートユーザーを選択し、 AWS アカウント E メールアドレスを入力して、アカウント所有者AWS Management Consoleとして にサインインします。次のページでパスワードを入力します。

    ルートユーザーを使用してサインインする方法については、AWS サインイン ユーザーガイドルートユーザーとしてサインインするを参照してください。

  2. ルートユーザーの多要素認証 (MFA) を有効にします。

    手順については、「 ユーザーガイド」の AWS アカウント 「ルートユーザー (コンソール) の仮想MFAデバイスの有効化」を参照してください。 IAM

管理アクセスを持つユーザーを作成する
  1. IAM Identity Center を有効にします。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「AWS IAM Identity Centerの有効化」を参照してください。

  2. IAM Identity Center で、ユーザーに管理アクセスを許可します。

    を ID ソース IAM アイデンティティセンターディレクトリ として使用する方法のチュートリアルについては、 AWS IAM Identity Center ユーザーガイド「デフォルトを使用してユーザーアクセスを設定する IAM アイデンティティセンターディレクトリ」を参照してください。

管理アクセス権を持つユーザーとしてサインインする
  • IAM Identity Center ユーザーでサインインするには、IAMIdentity Center ユーザーの作成時に E メールアドレスにURL送信されたサインインを使用します。

    IAM Identity Center ユーザーを使用してサインインする方法については、AWS サインイン 「 ユーザーガイド」のAWS 「 アクセスポータルへのサインイン」を参照してください。

追加のユーザーにアクセス権を割り当てる
  1. IAM Identity Center で、最小権限のアクセス許可を適用するベストプラクティスに従うアクセス許可セットを作成します。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「権限設定を作成する」を参照してください。

  2. グループにユーザーを割り当て、そのグループにシングルサインオンアクセス権を割り当てます。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「グループの参加」を参照してください。

アクセス権限を付与するには、ユーザー、グループ、またはロールにアクセス許可を追加します。

使用を開始する

注記

このチュートリアルの Linux コマンドでは、Bash シェルを使用する必要があります。

  1. Espressif ハードウェアを設定します。

    ESP32-WROOM-32SE 開発ボードハードウェアの設定については、「 ESP32-DevKitC V4 入門ガイド」を参照してください。

    重要

    ガイドの「Installation Step by Step」セクションまで進んだら、ステップ 4 (環境変数の設定) まで実行します。ステップ 4 を完了したら停止し、残りのステップをここで実行します。

  2. から Amazon FreeRTOS をダウンロードしますGitHub。(手順については、README.md ファイルを参照してください。)

  3. 開発環境をセットアップします。

    ボードと通信するには、ツールチェーンをインストールする必要があります。Espressif は、ボード用のソフトウェアを開発するための ESP-IDF を提供します。ESP-IDF には独自のバージョンの FreeRTOS Kernel がコンポーネントとして統合されているため、Amazon FreeRTOS には、FreeRTOS Kernel が削除された ESP-IDF v4.2 のカスタムバージョンが含まれています。これにより、コンパイル時にファイルが重複する問題が修正されます。Amazon Free に含まれる ESP-IDF v4.2 のカスタムバージョンを使用するにはRTOS、ホストマシンのオペレーティングシステムに関する以下の手順に従ってください。

    Windows

    1. ESP- IDFの Universal Online Installer for Windows をダウンロードします。

    2. 汎用オンラインインストーラを実行します。

    3. ステップ ESP- をダウンロードまたは使用するIDF に移動したら、既存の ESP-IDF ディレクトリを使用する を選択し、既存の ESP-IDF ディレクトリを選択 を に設定しますfreertos/vendors/espressif/esp-idf

    4. インストールを完了します。

    macOS

    1. macOS のツールチェーンの標準セットアップの前提条件 (ESP-IDF v4.2) の手順に従います。

      重要

      Next Steps の「Get ESP-IDF」手順に達したら、停止してからこのページの手順に戻ります。

    2. コマンドラインウィンドウを開きます。

    3. 無料RTOSダウンロードディレクトリに移動し、次のスクリプトを実行して、プラットフォームの espressif ツールチェーンをダウンロードしてインストールします。

      vendors/espressif/esp-idf/install.sh
    4. 次のコマンドを使用して、 ESP-IDF ツールチェーンツールをターミナルのパスに追加します。

      source vendors/espressif/esp-idf/export.sh

    Linux

    1. Linux のツールチェーンの標準セットアップの前提条件 (ESP-IDF v4.2) の指示に従います。

      重要

      Next Steps の「Get ESP-IDF」手順に達したら、停止してからこのページの手順に戻ります。

    2. コマンドラインウィンドウを開きます。

    3. 無料RTOSダウンロードディレクトリに移動し、次のスクリプトを実行して、プラットフォームの Espressif ツールチェーンをダウンロードしてインストールします。

      vendors/espressif/esp-idf/install.sh
    4. 次のコマンドを使用して、 ESP-IDF ツールチェーンツールをターミナルのパスに追加します。

      source vendors/espressif/esp-idf/export.sh
  4. シリアル接続を確立します。

    1. ホストマシンと ESP32-WROOM-32SE の間にシリアル接続を確立するには、UARTブリッジVCPドライバーUSBに CP210x をインストールします。これらのドライバーは Silicon Labs からダウンロードできます。

    2. を使用してシリアル接続を確立するESP32ステップに従います。

    3. シリアル接続を確立したら、ボードとの接続用のシリアルポートをメモしておきます。デモをフラッシュするにはこれが必要です。

無料RTOSデモアプリケーションを設定する

このチュートリアルでは、無料RTOS設定ファイルは にありますfreertos/vendors/espressif/boards/board-name/aws_demos/config_files/FreeRTOSConfig.h。(例えば、AFR_BOARD espressif.esp32_devkitc を選択した場合、設定ファイルは freertos/vendors/espressif/boards/esp32/aws_demos/config_files/FreeRTOSConfig.h にあります。)

重要

ATECC608A デバイスには 1 回限りの初期化があり、プロジェクトが初めて実行されたとき ( の呼び出し中) にデバイスにロックされますC_InitToken。ただし、無料RTOSデモプロジェクトとテストプロジェクトの設定は異なります。デモプロジェクトの設定中にデバイスがロックされた場合、テストプロジェクトの一部のテストが成功しません。

  1. の手順に従って、無料RTOSデモプロジェクトを設定します無料RTOSデモの設定。最後のステップに移動したら、 AWS IoT を停止して次の手順を実行します。

  2. Microchip は、ATECC608A パーツのセットアップに役立ついくつかのスクリプティングツールを提供しています。freertos/vendors/microchip/example_trust_chain_tool ディレクトリに移動し、README.md ファイルを開きます。

  3. README.md ファイルの手順に従って、デバイスをプロビジョニングします。このステップには、以下が含まれます。

    1. 認証機関を作成して に登録します AWS。

    2. ATECC608A でキーを生成し、パブリックキーとデバイスのシリアル番号をエクスポートします。

    3. デバイスの証明書を生成し、その証明書を に登録します AWS。

  4. 開発者モードのキーのプロビジョニング の手順に従って、CA 認定とデバイス証明書をデバイスにロードします。

AWS クラウドでのMQTTメッセージのモニタリング

無料RTOSデモプロジェクトを実行する前に、 AWS IoT コンソールでMQTTクライアントを設定して、デバイスが AWS クラウドに送信するメッセージをモニタリングできます。

クライアントでMQTTトピックをサブスクライブするには AWS IoT MQTT
  1. AWS IoT コンソール にサインインします。

  2. ナビゲーションペインで、テスト を選択し、MQTTテストクライアント を選択します。

  3. [Subscription topic] (トピックのサブスクリプション) で your-thing-name/example/topic と入力し、[Subscribe to topic] (トピックへのサブスクライブ) を選択します。

idf.py スクリプトを使用して無料RTOSデモプロジェクトを構築、フラッシュ、実行する

Espressif のIDFユーティリティ (idf.py) を使用して、ビルドファイルを生成し、アプリケーションバイナリを構築し、バイナリをデバイスにフラッシュできます。

注記

一部のセットアップでは、次の例のように、idf.py でポートオプション「-p port-name」を使用して正しいポートを指定する必要があります。

idf.py -p /dev/cu.usbserial-00101301B flash
Windows、Linux、macOS (ESP-IDF v4.2) でビルドとフラッシュが無料RTOS
  1. 無料RTOSダウンロードディレクトリのルートに移動します。

  2. コマンドラインウィンドウで、次のコマンドを入力して、ターミナルの に ESP-IDF ツールを追加しますPATH。

    Windows (「コマンド」アプリ)
    vendors\espressif\esp-idf\export.bat
    Windows (ESP「-IDF 4.xCMD」アプリ)

    (これはアプリを開いた時点で既に完了しています。)

    Linux/macOS
    source vendors/espressif/esp-idf/export.sh
  3. 次のコマンドを使用して build ディレクトリで CMake を設定し、ファームウェアイメージを構築します。

    idf.py -DVENDOR=espressif -DBOARD=esp32_ecc608a_devkitc -DCOMPILER=xtensa-esp32 build

    次の例のような出力が表示されます。

    Running cmake in directory /path/to/hello_world/build Executing "cmake -G Ninja --warn-uninitialized /path/to/hello_world"... Warn about uninitialized values. -- Found Git: /usr/bin/git (found version "2.17.0") -- Building empty aws_iot component due to configuration -- Component names: ... -- Component paths: ... ... (more lines of build system output) [527/527] Generating hello-world.bin esptool.py v2.3.1 Project build complete. To flash, run this command: ../../../components/esptool_py/esptool/esptool.py -p (PORT) -b 921600 write_flash --flash_mode dio --flash_size detect --flash_freq 40m 0x10000 build/hello-world.bin build 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/partition-table.bin or run 'idf.py -p PORT flash'

    エラーが起きなければ、構築によってファームウェアバイナリの .bin ファイルが生成されます。

  4. 次のコマンドを使用して、開発ボードのフラッシュメモリを消去します。

    idf.py erase_flash
  5. idf.py スクリプトを使用して、アプリケーションバイナリをボードにフラッシュします。

    idf.py flash
  6. 次のコマンドを使用して、ボードのシリアルポートからの出力をモニタリングします。

    idf.py monitor
    注記
    • 次の例のようにこれらのポリシーを組み合わせることができます。

      idf.py erase_flash flash monitor
    • 特定のホストマシンのセットアップでは、次の例のように、ボードをフラッシュするときにポートを指定する必要があります。

      idf.py erase_flash flash monitor -p /dev/ttyUSB1

でビルドおよびフラッシュフリーRTOS CMake

が提供するidf.pyスクリプトを使用してコードIDFSDKを構築および実行するだけでなく、 を使用してプロジェクトを構築することもできますCMake。現在、Unix Makefile と Ninja ビルドシステムをサポートしています。

プロジェクトを構築してフラッシュするには
  1. コマンドラインウィンドウで、無料RTOSダウンロードディレクトリのルートに移動します。

  2. 次のスクリプトを実行して、シェルの に ESP-IDF ツールを追加しますPATH。

    Windows
    vendors\espressif\esp-idf\export.bat
    Linux/macOS
    source vendors/espressif/esp-idf/export.sh
  3. 次のコマンドを入力して、ビルドファイルを生成します。

    Unix Makefiles を使用
    cmake -DVENDOR=espressif -DBOARD=esp32_plus_ecc608a_devkitc -DCOMPILER=xtensa-esp32 -S . -B ./YOUR_BUILD_DIRECTORY -DAFR_ENABLE_ALL_MODULES=1 -DAFR_ENABLE_TESTS=0
    Ninja を使用
    cmake -DVENDOR=espressif -DBOARD=esp32_plus_ecc608a_devkitc -DCOMPILER=xtensa-esp32 -S . -B ./YOUR_BUILD_DIRECTORY -DAFR_ENABLE_ALL_MODULES=1 -DAFR_ENABLE_TESTS=0 -GNinja
  4. フラッシュを消去してから、ボードをフラッシュします。

    Unix Makefiles を使用
    make -C ./YOUR_BUILD_DIRECTORY erase_flash
    make -C ./YOUR_BUILD_DIRECTORY flash
    Ninja を使用
    ninja -C ./YOUR_BUILD_DIRECTORY erase_flash
    ninja -C ./YOUR_BUILD_DIRECTORY flash

追加情報

Espressif ESP32ボードの使用とトラブルシューティングの詳細については、以下のトピックを参照してください。