Ameba D
Bu örnek, açma/kapatma özelliklerine sahip bir ampul cihaz türü olarak işlev görür. Adımlar Ameba D panosunda doğrulandı.
İlk kurulum
- Ameba SDK'sını klonlayın ve
v1.0-branch
sayfasına göz atın:mkdir ameba_matter
cd ameba_matter
git clone -b v1.0-branch https://github.com/pankore/ambd_sdk_with_chip_non_NDA.git
connectedhomeip
deposunu klonlayın ve Ameba SDK'sına ait belirli SHA'yı kontrol edin:git clone https://github.com/project-chip/connectedhomeip.git
cd connectedhomeip
git switch v1.0-branch
Görüntüleri oluşturma
- Klasör yapısının şu şekilde olduğundan emin olun:
ameba_matter/ ├── ambd_sdk_with_chip_non_NDA └── connectedhomeip
connectedhomeip
Depoyu başlatın:git submodule update --init --recursive
source scripts/activate.sh
lighting-app
oluşturun$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
- Derlemenin çıkışını şu adreste bulabilirsiniz:
connectedhomeip/out/asdk/image/km0_km4_image2.bin
- Derlemenin çıkışını şu adreste bulabilirsiniz:
Kartı yakıp söndür
Ameba D donanımını şemada gösterildiği gibi kurun:
- Bilgisayarınız için uygun ImageTool dizinine gidin. ImageTool, örneği panonuza göstermek için kullanılır. Tüm ImageTool sürümleri
ambd_sdk_with_chip_non_NDA/tools/AmebaD/
konumundadır:OS Resim Aracı konumu 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'ta
/Image_Tool_Linux/AmebaD_ImageTool
dizinine gidin:cd ../../ambd_sdk_with_chip_non_NDA/tools/AmebaD/Image_Tool_Linux/
- Gerekirse araç izinlerini değiştirin. Örneğin, Linux'ta:
chmod +x AmebaD_ImageTool
- Araç kullanımını kontrol edin:
./AmebaD_ImageTool -help
- Gerekirse araç izinlerini değiştirin. Örneğin, Linux'ta:
- Resmi Ameba D panosuna aktarın. Mikro B USB'yi karta, diğer ucunu da
PC'ye bağlayın. UART bağlantı noktasını kontrol edin ve UART bağlantı noktası
/dev/ttyUSB0
ürününe atanmamışsa değiştirin:./AmebaD_ImageTool -add device /dev/ttyUSB0
command finish total device to add 1 /dev/ttyUSB0 existed
- Daha önce oluşturduğunuz üç Ameba D resmini geçerli dizine kopyalayın (Resim Aracı'nın bulunduğu yer):
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 ./
Image_all.bin
oluşturmak için üç resmi birleştirin:./AmebaD_ImageTool -combine km0_boot_all.bin 0x0000 km4_boot_all.bin 0x4000 km0_km4_image2.bin 0x6000
command finish Combine Image Success
- Son ayarın yapıldığını doğrulayın:
./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 panosunda UART_İNDİR düğmesini basılı tutun ve RESET düğmesine basın. Ardından indirme moduna girmek için UART_İNDİR düğmesini bırakın.
- Resmi Ameba D panosuna çekin:
./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
Kartı sıfırla
- Sistemi yeniden başlatmak için karttaki RESET düğmesine basın.
minicom
veyascreen
ile Jamboard'da bir seri konsol açın. Örneğin, cihaz/dev/ttyUSB0
konumundaysa:screen /dev/ttyUSB0 115200
- Ameba D kartı daha önce eşlendiyse devam etmeden önce fabrika ayarlarına sıfırlamanız önerilir. Bunun için konsola
ATS#
yazın:# ATS# xPortGetTotalHeapSize = 204800 xPortGetFreeHeapSize = 104512 xPortGetMinimumEverFreeHeapSize = 98176 _[dct_init_valid_module]: erase flash address 0x001ec00
LED kablo bağlantısı
Kartı kullanarak bir LED yakmak isterseniz lütfen LED'in uzun bacağını (pozitif bacak) B5'e, LED'in kısa bacağını (negatif bacak) GND'ye bağlayın. LED'inizde yerleşik direnç yoksa LED ile B5 arasına 220 ohm'lik bir direnç bağlanmalıdır.
Sonraki adımlar
Matter örneğiniz başarıyla derlendikten sonra bir geliştirici projesi oluşturun.