アメバ D
この例は、オン/オフ機能を備えた電球デバイスタイプとして機能します。手順は Ameba D ボードで検証しました。
初期設定を行う
- Ameba SDK のクローンを作成し、
v1.0-branch
:
を確認します。mkdir ameba_matter
cd ameba_matter
git clone -b v1.0-branch https://github.com/pankore/ambd_sdk_with_chip_non_NDA.git
connectedhomeip
リポジトリのクローンを作成し、Ameba SDK の特定の SHA をチェックアウトします。git clone https://github.com/project-chip/connectedhomeip.git
cd connectedhomeip
git switch v1.0-branch
イメージをビルドする
- 次のようなフォルダ構造になっていることを確認してください。
ameba_matter/ ├── ambd_sdk_with_chip_non_NDA └── connectedhomeip
connectedhomeip
リポジトリを初期化します。git submodule update --init --recursive
source scripts/activate.sh
lighting-app
をビルドします。$PWD/../ambd_sdk_with_chip_non_NDA/project/realtek_amebaD_va0_example/GCC-RELEASE/build.sh $PWD ninja $PWD/out lighting-app
cd out ; ninja
- ビルドの出力は
connectedhomeip/out/asdk/image/km0_km4_image2.bin
にあります。
- ビルドの出力は
ボードをフラッシュする
図のように Ameba D ハードウェアをセットアップします。
- お使いのパソコンに適した ImageTool ディレクトリに移動します。ImageTool は、サンプルをボードに書き込むために使用されます。ImageTool のすべてのバージョンは
ambd_sdk_with_chip_non_NDA/tools/AmebaD/
にあります。OS ImageTool の場所 Linux /Image_Tool_Linux/AmebaD_ImageTool
MacOS 10.X /Image_Tool_MacOS/MacOS_v10/Ameba_1-10_MP_ImageTool_MacOS
MacOS 11 /Image_Tool_MacOS/MacOS_v11/Ameba_1-10_MP_ImageTool_MacOS11
- Linux の場合は、
/Image_Tool_Linux/AmebaD_ImageTool
ディレクトリに移動します。cd ../../ambd_sdk_with_chip_non_NDA/tools/AmebaD/Image_Tool_Linux/
- 必要に応じてツールの権限を変更します。たとえば、Linux の場合は
のようになります。chmod +x AmebaD_ImageTool
- ツールの使用状況を確認します。
./AmebaD_ImageTool -help
- 必要に応じてツールの権限を変更します。たとえば、Linux の場合は
- イメージを Ameba D ボードにフラッシュします。マイクロ B USB をボードに接続し、反対側を PC に接続します。UART ポートを確認し、UART ポートが
/dev/ttyUSB0
に割り当てられていない場合は変更します。./AmebaD_ImageTool -add device /dev/ttyUSB0
command finish total device to add 1 /dev/ttyUSB0 existed
- 先ほどビルドした 3 つの Ameba D イメージを現在のディレクトリ(ImageTool があるディレクトリ)にコピーします。
cp ../../../../connectedhomeip/out/asdk/bootloader/km0_boot_all.bin ./
cp ../../../../connectedhomeip/out/asdk/bootloader/km4_boot_all.bin ./
cp ../../../../connectedhomeip/out/asdk/image/km0_km4_image2.bin ./
- 3 つの画像を組み合わせて
Image_all.bin
を生成します。./AmebaD_ImageTool -combine km0_boot_all.bin 0x0000 km4_boot_all.bin 0x4000 km0_km4_image2.bin 0x6000
command finish Combine Image Success
- 最後の設定が設定されていることを確認します。
./AmebaD_ImageTool -show
command finish Current Settings CPU : AmebaD UART : 1500000 bps parity:N flow control:False FW NAME : Image_All.bin FW ADDR : 0x08000000 FW LEN : 0 OPTS : keep data : True keep wifi cal: True verification : False reset device : False factory mode : False save log : True Port Settings PORT 0: active:True device:/dev/ttyUSB0 PORT 1: active:False device:NONE PORT 2: active:False device:NONE PORT 3: active:False device:NONE PORT 4: active:False device:NONE PORT 5: active:False device:NONE PORT 6: active:False device:NONE PORT 7: active:False device:NONE PORT 8: active:False device:NONE PORT 9: active:False device:NONE
- Ameba D ボードで、[UART_download] ボタンを長押しして [RESET] ボタンを押し、次に [UART_Download] ボタンを離してダウンロード モードに入ります。
- イメージを Ameba D ボードにフラッシュします。
./AmebaD_ImageTool -download
log file = log_2021_11_15_23_42_10.txt [100, 0, 0, 0, 0, 0, 0, 0, 0, 0]command finish
status: ['OK 53.0s', 'Check PORT', 'Off', 'Off', 'Off', 'Off', 'Off', 'Off', 'Off', 'Off'] close log file
ボードをリセットする
- ボードの [RESET] ボタンを押してシステムを再起動します。
minicom
またはscreen
を使用して、ボードへのシリアル コンソールを開きます。たとえば、デバイスが/dev/ttyUSB0
にある場合:screen /dev/ttyUSB0 115200
- Ameba D ボードが以前にペア設定されている場合は、続行する前に出荷時の設定にリセットすることをおすすめします。それには、コンソールに「
ATS#
」と入力します。# ATS# xPortGetTotalHeapSize = 204800 xPortGetFreeHeapSize = 104512 xPortGetMinimumEverFreeHeapSize = 98176 _[dct_init_valid_module]: erase flash address 0x001ec00
LED 配線
基板を使用して LED を点灯する場合は、LED の長い脚(プラスの脚)を B5 に接続し、LED の短い脚(マイナスの脚)を GND に接続します。LED に抵抗が内蔵されていない場合は、LED と B5 の間に 220 オームの抵抗を接続する必要があります。
次のステップ
Matter サンプルが正常にビルドされたら、デベロッパー プロジェクトを作成します。