Ameba D
Este ejemplo funciona como un tipo de dispositivo de bombilla, con capacidades de encendido y apagado. Los pasos se verificaron en la placa Ameba D.
Configuración inicial
- Clona el SDK de Ameba y revisa
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
- Clona el repositorio
connectedhomeip
y verifica la SHA específica para el SDK de Ameba:git clone https://github.com/project-chip/connectedhomeip.git
cd connectedhomeip
git switch v1.0-branch
Compila las imágenes
- Asegúrate de tener la estructura de carpetas de la siguiente manera:
ameba_matter/ ├── ambd_sdk_with_chip_non_NDA └── connectedhomeip
- Inicializa el repositorio
connectedhomeip
:git submodule update --init --recursive
source scripts/activate.sh
- Compila el
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
- El resultado de la compilación se encuentra en:
connectedhomeip/out/asdk/image/km0_km4_image2.bin
- El resultado de la compilación se encuentra en:
Escribe en la memoria flash de la pizarra
Configura el hardware de Ameba D como se muestra en el diagrama:
- Ve al directorio de ImageTool que corresponda para tu computadora. ImageTool se usa para escribir el ejemplo en la memoria flash de la pizarra. Todas las versiones de ImageTool se encuentran en
ambd_sdk_with_chip_non_NDA/tools/AmebaD/
:SO Ubicación de 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
- Para Linux, ve al directorio
/Image_Tool_Linux/AmebaD_ImageTool
:cd ../../ambd_sdk_with_chip_non_NDA/tools/AmebaD/Image_Tool_Linux/
- Cambia los permisos de la herramienta si es necesario. Por ejemplo, en Linux:
chmod +x AmebaD_ImageTool
- Verifica el uso de la herramienta:
./AmebaD_ImageTool -help
- Cambia los permisos de la herramienta si es necesario. Por ejemplo, en Linux:
- Escribe la imagen en la placa Ameba D. Conecta el puerto micro B a la placa
y el otro lado a la PC. Verifica el puerto UART y modifícalo si el puerto UART no está asignado a
/dev/ttyUSB0
:./AmebaD_ImageTool -add device /dev/ttyUSB0
command finish total device to add 1 /dev/ttyUSB0 existed
- Copia las tres imágenes de Ameba D que compilaste antes en el directorio actual (en el que se encuentra 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 ./
- Combina las tres imágenes para generar
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
- Verifica que se haya establecido la configuración final:
./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
- En la placa Ameba D, mantén presionado el botón UART_DOWNLOAD y presiona el botón RESET y, luego, suelta el botón UART_DOWNLOAD para ingresar al modo de descarga.
- Instala la imagen en la placa 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
Restablece la pizarra
- Presiona el botón RESTABLECER en la placa para reiniciar el sistema.
- Abre una consola en serie en la pizarra con
minicom
oscreen
. Por ejemplo, si el dispositivo está en/dev/ttyUSB0
:screen /dev/ttyUSB0 115200
- Si la placa Ameba D se sincronizó anteriormente, te recomendamos que la restablezcas a la configuración de fábrica antes de continuar. Ingresa
ATS#
en la consola para hacerlo:# ATS# xPortGetTotalHeapSize = 204800 xPortGetFreeHeapSize = 104512 xPortGetMinimumEverFreeHeapSize = 98176 _[dct_init_valid_module]: erase flash address 0x001ec00
Cableado LED
Si deseas iluminar un LED con la placa, conecta la pata larga del LED (la parte positiva) a la B5 y conecta la pata corta del LED (la parte negativa) a la GND. Si el LED no tiene una resistencia integrada, se debe conectar una resistencia de 220 ohmios entre el LED y el B5.
Próximos pasos
Cuando tu ejemplo de Matter se haya compilado correctamente, crea un proyecto de desarrollador.