EFR32MG24
この例は、オン/オフ機能を備えた電球デバイスタイプとして機能します。この手順は SiLabs EFR32MG24 開発ボードで検証しました。
この例では、0x8005
というテスト用のベンダー ID(VID)とプロダクト ID(PID)を使用しています。
初期設定を行う
connectedhomeip
リポジトリの指定に従って依存関係をインストールします。- Simplicity Commander をインストールし、そのバイナリ(コマンダー)が
PATH
に含まれていることを確認します。次に例を示します。export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
- EFR32 Lighting Example のロギング出力の表示の説明に沿って、コンピュータに JLink をインストールします(イメージのフラッシュに必要)。
connectedhomeip
リポジトリのクローンを作成して初期化します。cd ~
git clone https://github.com/project-chip/connectedhomeip.git
cd connectedhomeip
git fetch origin v1.0-branch
git checkout FETCH_HEAD
git submodule update --init --recursive
source ./scripts/activate.sh
- 環境変数をエクスポートします。
- ボードが 10 dBm バージョンの場合は、
BRD4186C
を使用します。export EFR32_BOARD=BRD4186C
- ボードが 20 dBm バージョンの場合は、
BRD4187C
を使用します。export EFR32_BOARD=BRD4187C
- ボードが 10 dBm バージョンの場合は、
イメージをビルドしてボードをフラッシュする
- 照明アプリの画像をビルドします。
画像はcd examples/lighting-app/efr32
source third_party/connectedhomeip/scripts/activate.sh
gn gen out/debug --args="efr32_board=\"${EFR32_BOARD}\""
ninja -C out/debug
out/debug
フォルダに生成されます。 - EFR32 ボードをコンピュータに接続し、イメージを EFR32 ボードにフラッシュします。
python3 out/debug/chip-efr32-lighting-example.flash.py --erase
ブートローダーをインストールする
- Simplicity Commander を開きます。
commander
- 左上の [Select Kit...] プルダウンを開き、ブートローダーでフラッシュするキットを選択します。このメニューには、検出されたすべての JLink デバイスが表示され、シリアル番号順に一覧表示されます。選択を容易にするため、フラッシュするデバイスを除くすべての JLink 対応デバイスから取り外し、リストに 1 つのキットのみが挿入されるようにします。
- 左側にある [Flash] タイルを選択します。
- [Flash MCU] セクションで、[Browse] をクリックします。
connectedhomeip/third_party/silabs/matter_support/matter/efr32/bootloader_binaries
に移動し、設定したEFR32_BOARD
環境変数と一致する.s37
ファイルを見つけます。- ボードが 10 dBm バージョンで、
BRD4186C
を使用した場合は、bootloader-storage-spiflash-single-1024k-BRD4186C-gsdk4.1.s37
を選択します。 - ボードが 20 dBm バージョンで、
BRD4187C
を使用した場合は、bootloader-storage-spiflash-single-1024k-BRD4187C-gsdk4.1.s37
を選択します。
[開く] をクリックしてファイルを選択します。
- ボードが 10 dBm バージョンで、
[Flash] をクリックします。
ブートローダーをフラッシュした後、その後のアプリのフラッシュでは、--erase
フラグを省略する必要があります。省略しないと、ブートローダーを再フラッシュする必要があります。--erase
フラグを指定すると、ブートローダーを含むすべてのボードのフラッシュが消去されます。
サンプルを検証する
- ボードからのログを確認してください。2 つのターミナル ウィンドウを開きます。
- 最初のウィンドウで、次のように操作します。
JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
- 2 番目のウィンドウで:
2 番目のウィンドウにログが出力されます。JLinkRTTClient
- 最初のウィンドウで、次のように操作します。
- デバイスは、パソコンで USB シリアル デバイスとして表示される必要があります。
/dev/
で確認できます。
シリアル コンソールは、minicom または画面で開くことができます。たとえば、デバイスがls -la /dev/tty*
/dev/ttyACM0
にある場合:
シリアル コンソールでは OpenThread コマンド(screen /dev/ttyACM0 115200
state
など)を入力できます。 - EFR32 ボードが以前にペア設定されている場合は、出荷時の設定にリセットすることをおすすめします。
- PB0 ボタンを 10 秒以上長押しします。
- LED が 3 回点滅します。小さなディスプレイで QR コードが更新されるまで、ボタンを長押しします。
EFR32MG12
この例は、オン/オフ機能を備えた電球デバイスタイプとして機能します。この手順は、SiLabs EFR32MG12(Mighty Gecko)開発ボードで検証しました。
この例では、0x8005
というテスト用のベンダー ID(VID)とプロダクト ID(PID)を使用しています。
初期設定を行う
connectedhomeip
リポジトリの指定に従って依存関係をインストールします。- Simplicity Commander をインストールし、そのバイナリ(コマンダー)が
PATH
に含まれていることを確認します。次に例を示します。export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
- EFR32 Lighting Example のロギング出力の表示の説明に沿って、コンピュータに JLink をインストールします(イメージのフラッシュに必要)。
connectedhomeip
リポジトリのクローンを作成して初期化します。cd ~
git clone https://github.com/project-chip/connectedhomeip.git
cd connectedhomeip
git fetch origin v1.0-branch
git checkout FETCH_HEAD
git submodule update --init --recursive
source ./scripts/activate.sh
- 環境変数をエクスポートします。
export EFR32_BOARD=BRD4161A
イメージをビルドしてボードをフラッシュする
- 照明アプリの画像をビルドします。
画像はcd examples/lighting-app/efr32
source third_party/connectedhomeip/scripts/activate.sh
gn gen out/debug --args="efr32_board=\"${EFR32_BOARD}\""
ninja -C out/debug
out/debug
フォルダに生成されます。 - EFR32 ボードをコンピュータに接続し、イメージを EFR32 ボードにフラッシュします。
python3 out/debug/chip-efr32-lighting-example.flash.py --erase
サンプルを検証する
- ボードからのログを確認してください。2 つのターミナル ウィンドウを開きます。
- 最初のウィンドウで、次のように操作します。
JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
- 2 番目のウィンドウで:
2 番目のウィンドウにログが出力されます。JLinkRTTClient
- 最初のウィンドウで、次のように操作します。
- デバイスは、パソコンで USB シリアル デバイスとして表示される必要があります。
/dev/
で確認できます。
シリアル コンソールは、minicom または画面で開くことができます。たとえば、デバイスがls -la /dev/tty*
/dev/ttyACM0
にある場合:
シリアル コンソールでは OpenThread コマンド(screen /dev/ttyACM0 115200
state
など)を入力できます。 - EFR32 ボードが以前にペア設定されている場合は、出荷時の設定にリセットすることをおすすめします。
- PB0 ボタンを 10 秒以上長押しします。
- LED が 3 回点滅します。小さなディスプレイで QR コードが更新されるまで、ボタンを長押しします。
次のステップ
Matter サンプルが正常にビルドされたら、デベロッパー プロジェクトを作成します。