Ameb D
Bu örnek, ampul/açma özelliğine sahip ampul cihaz türü olarak çalışır. Adımlar Ameba D panosunda doğrulandı.
İlk kurulum
- Ameba SDK'sını klonlayın ve
v1.0-branch
sitesine 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ı için belirli SHA'yı ödeyin:git clone https://github.com/project-chip/connectedhomeip.git
cd connectedhomeip
git switch v1.0-branch
Görüntüleri oluşturun
- Klasör yapısının şu şekilde olduğundan emin olun:
ameba_matter/ ├── ambd_sdk_with_chip_non_NDA └── connectedhomeip
connectedhomeip
deposunu 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 çıktısı aşağıdaki adreste bulunur:
connectedhomeip/out/asdk/image/km0_km4_image2.bin
- Derlemenin çıktısı aşağıdaki adreste bulunur:
Jamboard'u yanıp sönün
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öndermek için kullanılır. Tüm ImageTool sürümleri
ambd_sdk_with_chip_non_NDA/tools/AmebaD/
konumunda bulunmaktadır:OS ImageTool 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 için
/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:
- Görüntüyü Ameba D panosuna çekin. Micro-B USB'yi karta, diğer tarafı da PC'ye bağlayın. UART bağlantı noktasını kontrol edin ve UART bağlantı noktası
/dev/ttyUSB0
hizmetine 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 (ImageTool olduğunda):
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 AYARLA düğmesine basın, ardından indirme moduna girmek için UART_İNDİR düğmesini bırakın.
- Görüntüyü 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
Jamboard'u sıfırla
- Sistemi yeniden başlatmak için karttaki SIFIRLA düğmesine basın.
- Jamboard'da
minicom
veyascreen
ile bir seri konsolu açın. Örneğin, cihaz/dev/ttyUSB0
adresindeyse:screen /dev/ttyUSB0 115200
- Ameba D panosu daha önce eşlendiyse devam etmeden önce cihazı 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 kablosu
Kartı kullanarak bir LED'i aydınlatmak için lütfen LED'in uzun bacağını (pozitif bacak) B5'e ve kısa bacağı (negatif bacak) GND'ye bağlayın. LED'inizde yerleşik direnç yoksa LED ile B5 arasında 220 ohm'lik bir direnç bulunmalıdır.
Sonraki adımlar
Matter örneğiniz başarıyla oluşturulduğunda bir geliştirici projesi oluşturun.