Silicon Labs

EFR32MG24

Este ejemplo funciona como un tipo de dispositivo de bombilla, con capacidades de encendido y apagado. Se verificaron los pasos en la placa de desarrollo EFR32MG24 de SiLabs.

En este ejemplo, se usa un ID de proveedor (VID) de prueba y un ID del producto (PID) de 0x8005.

Configuración inicial

  1. Instala las dependencias como se especifica en el repositorio de connectedhomeip:
    1. Building Matter
    2. Cómo compilar el ejemplo de iluminación EFR32
  2. Instala Simplyy Commander y asegúrate de que su objeto binario (comandante) esté en tu PATH. Por ejemplo:
    export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
  3. Instala JLink en tu computadora (necesario para escribir la imagen en la memoria flash), como se describe en Cómo ver la salida de registro para el ejemplo de iluminación EFR32.
  4. Clona e inicializa el repositorio connectedhomeip:
    cd ~
    git clone https://github.com/project-chip/connectedhomeip.git
    cd connectedhomeip
    git fetch origin v1.0-branch
    git checkout FETCH_HEAD
    git submodule update --init --recursive
    source ./scripts/activate.sh
  5. Exporta las variables de entorno:
    1. Si la placa tiene una versión de 10 dBm, usa BRD4186C:
      export EFR32_BOARD=BRD4186C
    2. Si la placa es de 20 dBm, usa BRD4187C:
      export EFR32_BOARD=BRD4187C

Compila la imagen y escribe en la memoria flash de la placa

  1. Compila la imagen de la app de iluminación:
    cd examples/lighting-app/efr32
    source third_party/connectedhomeip/scripts/activate.sh
    gn gen out/debug --args="efr32_board=\"${EFR32_BOARD}\""
    ninja -C out/debug
    La imagen se generará en la carpeta out/debug.
  2. Conecta la placa EFR32 a tu computadora y escribe la imagen en la memoria flash de la placa EFR32:
    python3 out/debug/chip-efr32-lighting-example.flash.py --erase

Instala el bootloader

  1. Abre Simplyy Commander:
    commander
  2. Abre el menú desplegable "Select Kit..." (Seleccionar Kit...") en la esquina superior izquierda y selecciona el kit que se escribirá en la memoria flash con un bootloader. Este menú se propaga con todos los dispositivos JLink detectados y los enumera por número de serie. Para facilitar la selección, desconecta todos los dispositivos compatibles con JLink, excepto el que se debe escribir en la memoria flash, de modo que la lista solo se propague con un kit.
  3. Selecciona la tarjeta Flash del lado izquierdo.
  4. En la sección Flash MCU, haz clic en Browse.
  5. Navega a connectedhomeip/third_party/silabs/matter_support/matter/efr32/bootloader_binaries y busca el archivo .s37 que coincida con la variable de entorno EFR32_BOARD que configuraste:

    1. Si tu placa es la versión de 10 dBm y usaste BRD4186C, selecciona bootloader-storage-spiflash-single-1024k-BRD4186C-gsdk4.1.s37.
    2. Si tu placa es la versión de 20 dBm y usaste BRD4187C, selecciona bootloader-storage-spiflash-single-1024k-BRD4187C-gsdk4.1.s37.

    Haz clic en Abrir para seleccionar el archivo.

  6. Haz clic en Flash.

Ten en cuenta que, después de instalar el bootloader, la instalación posterior de la aplicación debería omitir la marca --erase; de lo contrario, se deberá volver a instalar el bootloader. La marca --erase borra toda la memoria flash de la placa, incluido el bootloader.

Valida el ejemplo

  1. Revisa los registros de tu tablero. Abre dos ventanas de terminal.
    1. En la primera ventana:
      JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
    2. En la segunda ventana:
      JLinkRTTClient
      Los registros se imprimirán en la segunda ventana.
  2. El dispositivo debe presentarse como un dispositivo en serie USB en tu computadora. Puedes buscarla en /dev/:
    ls -la /dev/tty*
    Puedes abrir la consola en serie con minicom o en pantalla. Por ejemplo, si el dispositivo está en /dev/ttyACM0:
    screen /dev/ttyACM0 115200
    , la consola en serie te permite ingresar comandos de OpenThread (por ejemplo, state).
  3. Si la placa EFR32 se vinculó antes, te recomendamos que restablezcas la configuración de fábrica:
    1. Mantén presionado el botón PB0 durante más de 10 segundos.
    2. Las luces LED parpadearán 3 veces. Mantén presionado el botón hasta que veas que el código QR se actualiza en la pantalla pequeña.

EFR32MG12

Este ejemplo funciona como un tipo de dispositivo de bombilla, con capacidades de encendido y apagado. Los pasos se verificaron en la placa de desarrollo EFR32MG12 (Mighty Gecko) de SiLabs.

En este ejemplo, se usa un ID de proveedor (VID) de prueba y un ID del producto (PID) de 0x8005.

Configuración inicial

  1. Instala las dependencias como se especifica en el repositorio de connectedhomeip:
    1. Building Matter
    2. Cómo compilar el ejemplo de iluminación EFR32
  2. Instala Simplyy Commander y asegúrate de que su objeto binario (comandante) esté en tu PATH. Por ejemplo:
    export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
  3. Instala JLink en tu computadora (necesario para escribir la imagen en la memoria flash), como se describe en Cómo ver la salida de registro para el ejemplo de iluminación EFR32.
  4. Clona e inicializa el repositorio connectedhomeip:
    cd ~
    git clone https://github.com/project-chip/connectedhomeip.git
    cd connectedhomeip
    git fetch origin v1.0-branch
    git checkout FETCH_HEAD
    git submodule update --init --recursive
    source ./scripts/activate.sh
  5. Exporta variables de entorno:
    export EFR32_BOARD=BRD4161A

Compila la imagen y escribe en la memoria flash de la placa

  1. Compila la imagen de la app de iluminación:
    cd examples/lighting-app/efr32
    source third_party/connectedhomeip/scripts/activate.sh
    gn gen out/debug --args="efr32_board=\"${EFR32_BOARD}\""
    ninja -C out/debug
    La imagen se generará en la carpeta out/debug.
  2. Conecta la placa EFR32 a tu computadora y escribe la imagen en la memoria flash de la placa EFR32:
    python3 out/debug/chip-efr32-lighting-example.flash.py --erase

Valida el ejemplo

  1. Revisa los registros de tu tablero. Abre dos ventanas de terminal.
    1. En la primera ventana:
      JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
    2. En la segunda ventana:
      JLinkRTTClient
      Los registros se imprimirán en la segunda ventana.
  2. El dispositivo debe presentarse como un dispositivo en serie USB en tu computadora. Puedes buscarla en /dev/:
    ls -la /dev/tty*
    Puedes abrir la consola en serie con minicom o en pantalla. Por ejemplo, si el dispositivo está en /dev/ttyACM0:
    screen /dev/ttyACM0 115200
    , la consola en serie te permite ingresar comandos de OpenThread (por ejemplo, state).
  3. Si la placa EFR32 se vinculó antes, te recomendamos que restablezcas la configuración de fábrica:
    1. Mantén presionado el botón PB0 durante más de 10 segundos.
    2. Las luces LED parpadearán 3 veces. Mantén presionado el botón hasta que veas que el código QR se actualiza en la pantalla pequeña.

Próximos pasos

Una vez que se haya compilado correctamente tu ejemplo de Matter, crea un proyecto de desarrollador.