Ame D
Contoh ini berfungsi sebagai jenis perangkat bohlam, dengan kemampuan aktif/nonaktif. Langkah-langkah tersebut telah diverifikasi di papan Ameba D.
Penyiapan awal
- Clone Ameba SDK dan lihat
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
- Clone repositori
connectedhomeip
dan lakukan checkout SHA tertentu untuk Ameba SDK:git clone https://github.com/project-chip/connectedhomeip.git
cd connectedhomeip
git switch v1.0-branch
Membuat gambar
- Pastikan Anda memiliki struktur folder seperti berikut:
ameba_matter/ ├── ambd_sdk_with_chip_non_NDA └── connectedhomeip
- Lakukan inisialisasi
connectedhomeip
repo:git submodule update --init --recursive
source scripts/activate.sh
- Mem-build
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
- Output build ditemukan di:
connectedhomeip/out/asdk/image/km0_km4_image2.bin
- Output build ditemukan di:
Mem-flash board
Siapkan hardware Ameba D seperti yang ditunjukkan pada diagram:
- Buka direktori ImageTool yang sesuai untuk komputer Anda. ImageTool
digunakan untuk mem-flash contoh ke board Anda. Semua versi ImageTool
berada di
ambd_sdk_with_chip_non_NDA/tools/AmebaD/
:OS Lokasi ImageTool Linux /Image_Tool_Linux/AmebaD_ImageTool
MacOS 10 /Image_Tool_MacOS/MacOS_v10/Ameba_1-10_MP_ImageTool_MacOS
MacOS 11 /Image_Tool_MacOS/MacOS_v11/Ameba_1-10_MP_ImageTool_MacOS11
- Untuk Linux, buka direktori
/Image_Tool_Linux/AmebaD_ImageTool
:cd ../../ambd_sdk_with_chip_non_NDA/tools/AmebaD/Image_Tool_Linux/
- Ubah izin alat jika diperlukan. Misalnya, pada Linux:
chmod +x AmebaD_ImageTool
- Periksa penggunaan alat:
./AmebaD_ImageTool -help
- Ubah izin alat jika diperlukan. Misalnya, pada Linux:
- Melakukan flash gambar ke board Ameba D. Hubungkan USB Mikro-B ke board
dan hubungkan sisi lain ke PC. Periksa port UART dan ubah jika
port UART tidak ditetapkan ke
/dev/ttyUSB0
:./AmebaD_ImageTool -add device /dev/ttyUSB0
command finish total device to add 1 /dev/ttyUSB0 existed
- Salin tiga gambar Ameba D yang Anda build sebelumnya ke direktori saat ini
(dengan 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 ./
- Gabungkan ketiga gambar tersebut untuk menghasilkan
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
- Pastikan setelan akhir telah ditetapkan:
./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
- Di board Ameba D, tahan tombol UART_DOWNLOAD dan tekan tombol RESET, lalu lepaskan tombol UART_DOWNLOAD untuk masuk ke mode download.
- Lakukan flash gambar ke board 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
Mereset board
- Tekan tombol RESET di board untuk memulai ulang sistem.
- Buka konsol serial di board dengan
minicom
atauscreen
. Misalnya, jika perangkat berada di/dev/ttyUSB0
:screen /dev/ttyUSB0 115200
- Jika board Ameba D telah disambungkan sebelumnya, sebaiknya
reset perangkat ke setelan pabrik sebelum melanjutkan. Masukkan
ATS#
di konsol untuk melakukannya:# ATS# xPortGetTotalHeapSize = 204800 xPortGetFreeHeapSize = 104512 xPortGetMinimumEverFreeHeapSize = 98176 _[dct_init_valid_module]: erase flash address 0x001ec00
Kabel LED
Jika Anda ingin menyalakan LED menggunakan board, hubungkan kaki panjang LED (kaki positif) ke B5 dan hubungkan segmen pendek LED (kaki negatif) ke GND. Jika LED Anda tidak memiliki Resistor bawaan, Resistor 220 ohm harus terhubung antara LED dan B5.
Langkah berikutnya
Setelah contoh Matter Anda berhasil dibuat, buat project developer.