pdf-icon

Product Guide

Real-Time AI Voice Assistant

Offline Voice Recognition

Zigbee

Thread

Module Gateway H2

IoT Tools

IoT Cloud

Ethernet Camera

LoRa & LoRaWAN

Module LoRa868 v1.2

Module LoRa868/433 v1.1

Develop Tools

ESP Thread Border Router

Module Gateway H2 は、ESP32 シリーズの Wi‑Fi SoC と組み合わせて ESP Thread Border Router SDK を実行することをサポートしています。この SDK は ESP‑IDF と OpenThread に基づいて構築され、Thread ネットワークを H2 上で実行し、H2 はシリアルポートを介してメインプロセッサと通信します。

1. 準備作業

  • 1.環境設定:
    ESP-IDF - ESP32S3 入門チュートリアル を参照して、基本的なコンパイル環境を整えてください。

  • このサンプルのコンパイルには ESP‑IDF バージョン v5.3.1 の使用を推奨します。

    git clone --recursive https://github.com/espressif/esp-idf.git
    cd esp-idf
    git checkout v5.3.1 # recommend
    ./install.sh
    . ./export.sh
    
  • 2.使用するハードウェア製品:

2. RCP ファームウェアのコンパイル

  • 1.Gateway ファームウェアをコンパイルする前に、まず RCP ファームウェアを生成する必要があります。以下のコマンドを参考に、対応する RCP ファームウェアのディレクトリに移動し、ビルドターゲットを esp32h2 に設定してください。

    cd $IDF_PATH/examples/openthread/ot_rcp
    idf.py set-target esp32h2
    idf.py menuconfig
    
  • 2.idf.py menuconfig を使用して設定画面に入り、menuconfig 内で次の設定を行います:
    Component config -> OpenThread RCP Example - Enable OPENTHREAD_NCP_VENDOR_HOOK

  • 3.設定が完了したら、以下のコマンドを実行して RCP ファームウェアをコンパイルします。

    idf.py build
    

3. ESP Thread BR ファームウェアのコンパイル

  • 1.プロジェクトをクローンします。

    git clone https://github.com/Ocean-lhy/esp-thread-br.git
    
  • 2.使用するメインコントローラーに応じて、対応するブランチに切り替えます。

    # CoreS3
    git checkout demo_for_core_s3_test
    cd examples/thread_border_router_credential_sharing
    idf.py set-target esp32s3
    # Core2 v1.0 と v1.1 の電源管理チップはそれぞれ AXP192 と AXP2101 であり、menuconfig で設定する必要があります
    git checkout demo_for_core_2_test
    cd examples/thread_border_router_credential_sharing
    idf.py set-target esp32
    # Core
    git checkout demo_for_core_test
    cd examples/thread_border_router_credential_sharing
    idf.py set-target esp32
    
  • 3.idf.py menuconfig を使用して設定画面に入り、menuconfig 内で Wi‑Fi 情報を設定します:
    Component config -> Example Connection Configuration

    idf.py menuconfig
    
  • 4.ESP Thread BR ファームウェアをコンパイルしてフラッシュします。

    idf.py build
    idf.py erase_flash
    idf.py flash
    

4. 実行開始

  • 1.フラッシュ後、デバイスを再起動します。デバイスは RCP 更新状態に入り、RCP 更新が成功すると、デバイスは再起動して Wi‑Fi と Thread ネットワークに接続します。デバイスの初期化が完了すると、以下の情報が表示されます:

    • generate epskc ボタン
    • factoryreset ボタン
    • Border router web server の URL
  • 2.generate epskc ボタンをクリックすると、デバイスが epskc を生成し、画面に表示します。これは迅速なネットワーク参加に使用できます。

  • 3.LAN 内でブラウザを使用して Border router web server の URL にアクセスすると、Thread ネットワークの情報を確認できます。

  • 4.接続する Wi‑Fi を変更したい場合は、シリアル接続のコマンドインターフェースを使用して、コマンド wifi -s SSID -p PASSWORD を入力し、その後デバイスを再起動してください。

5. テスト

Module Gateway H2 (ESP32 - H2) またはNanoC6 (ESP32 - C6) を使用し、ケースプログラムを参考に OpenThread SimpleCLI の例程を書き込み、Threadネットワークに接続し、Threadネットワーク情報を確認します。

  1. ThreadBoarderRouterのバックグラウンドで networkkeypanidchannel を入力し、Threadネットワークのネットワークキー、panid、およびchannelを取得します。

  2. SimpleCLI例程で構成コマンドを入力し、Threadネットワークを起動します。

networkkey <networkkey>
panid <panid>
channel <channel>
ifconfig up
thread start
  1. SimpleCLIシリアルポートインタラクションで state を入力し、Threadネットワークの状態を確認します。child/routerとしてネットワークに接続されている場合は、Threadネットワーク接続が成功しました。leaderとしてネットワークを構築した場合は、構成に誤りがある可能性があります。
  2. SimpleCLシリアルポートインタラクションで parent を入力し、Threadネットワークの親ノードを確認します。extaddr を入力し、このノードの拡張アドレスを確認します。
  3. ThreadBoarderRouterのシリアルポートインタラクションで extaddr を入力し、このノードの拡張アドレスを確認します。それはSimpleCLI例程の parent extaddr と一致する必要があります。
  4. ThreadBoarderRouterのシリアルポートインタラクションで neighbor table を入力し、Threadネットワークの隣接ノードを確認します。それにはSimpleCLI例程のノードが含まれている必要があります。
On This Page