¡Atención! Pronto se lanzarán nuevos programas de vista previa para desarrolladores. Postúlate aquí y sé una de las primeras personas en probar herramientas nuevas y enviar comentarios.

Realtek

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

  1. 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
  2. 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

  1. Asegúrate de tener la estructura de carpetas de la siguiente manera:
    ameba_matter/
    ├── ambd_sdk_with_chip_non_NDA
    └── connectedhomeip
  2. Inicializa el repositorio connectedhomeip:
    git submodule update --init --recursive
    source scripts/activate.sh
  3. 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
    1. El resultado de la compilación se encuentra en:
      connectedhomeip/out/asdk/image/km0_km4_image2.bin

Escribe en la memoria flash de la pizarra

Configura el hardware de Ameba D como se muestra en el diagrama:

imagen

  1. 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
  2. Para Linux, ve al directorio /Image_Tool_Linux/AmebaD_ImageTool:
    cd ../../ambd_sdk_with_chip_non_NDA/tools/AmebaD/Image_Tool_Linux/
    1. Cambia los permisos de la herramienta si es necesario. Por ejemplo, en Linux:
      chmod +x AmebaD_ImageTool
    2. Verifica el uso de la herramienta:
      ./AmebaD_ImageTool -help
  3. 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
  4. 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 ./
    .
  5. 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
  6. 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
  7. 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.
  8. 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

  1. Presiona el botón RESTABLECER en la placa para reiniciar el sistema.
  2. Abre una consola en serie en la pizarra con minicom o screen. Por ejemplo, si el dispositivo está en /dev/ttyUSB0:
    screen /dev/ttyUSB0 115200
  3. 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.

imagen

Próximos pasos

Cuando tu ejemplo de Matter se haya compilado correctamente, crea un proyecto de desarrollador.