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
- Instala las dependencias como se especifica en el repositorio de
connectedhomeip
: - 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/
- 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.
- 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
- Exporta las variables de entorno:
- Si la placa tiene una versión de 10 dBm, usa
BRD4186C
:export EFR32_BOARD=BRD4186C
- Si la placa es de 20 dBm, usa
BRD4187C
:export EFR32_BOARD=BRD4187C
- Si la placa tiene una versión de 10 dBm, usa
Compila la imagen y escribe en la memoria flash de la placa
- Compila la imagen de la app de iluminación:
La imagen se generará en la carpetacd examples/lighting-app/efr32
source third_party/connectedhomeip/scripts/activate.sh
gn gen out/debug --args="efr32_board=\"${EFR32_BOARD}\""
ninja -C out/debug
out/debug
. - 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
- Abre Simplyy Commander:
commander
- 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.
- Selecciona la tarjeta Flash del lado izquierdo.
- En la sección Flash MCU, haz clic en Browse.
Navega a
connectedhomeip/third_party/silabs/matter_support/matter/efr32/bootloader_binaries
y busca el archivo.s37
que coincida con la variable de entornoEFR32_BOARD
que configuraste:- Si tu placa es la versión de 10 dBm y usaste
BRD4186C
, seleccionabootloader-storage-spiflash-single-1024k-BRD4186C-gsdk4.1.s37
. - Si tu placa es la versión de 20 dBm y usaste
BRD4187C
, seleccionabootloader-storage-spiflash-single-1024k-BRD4187C-gsdk4.1.s37
.
Haz clic en Abrir para seleccionar el archivo.
- Si tu placa es la versión de 10 dBm y usaste
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
- Revisa los registros de tu tablero. Abre dos ventanas de terminal.
- En la primera ventana:
JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
- En la segunda ventana:
Los registros se imprimirán en la segunda ventana.JLinkRTTClient
- En la primera ventana:
- El dispositivo debe presentarse como un dispositivo en serie USB en tu computadora. Puedes buscarla en
/dev/
:
Puedes abrir la consola en serie con minicom o en pantalla. Por ejemplo, si el dispositivo está enls -la /dev/tty*
/dev/ttyACM0
:
, la consola en serie te permite ingresar comandos de OpenThread (por ejemplo,screen /dev/ttyACM0 115200
state
). - Si la placa EFR32 se vinculó antes, te recomendamos que
restablezcas la configuración de fábrica:
- Mantén presionado el botón PB0 durante más de 10 segundos.
- 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
- Instala las dependencias como se especifica en el repositorio de
connectedhomeip
: - 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/
- 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.
- 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
- Exporta variables de entorno:
export EFR32_BOARD=BRD4161A
Compila la imagen y escribe en la memoria flash de la placa
- Compila la imagen de la app de iluminación:
La imagen se generará en la carpetacd examples/lighting-app/efr32
source third_party/connectedhomeip/scripts/activate.sh
gn gen out/debug --args="efr32_board=\"${EFR32_BOARD}\""
ninja -C out/debug
out/debug
. - 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
- Revisa los registros de tu tablero. Abre dos ventanas de terminal.
- En la primera ventana:
JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
- En la segunda ventana:
Los registros se imprimirán en la segunda ventana.JLinkRTTClient
- En la primera ventana:
- El dispositivo debe presentarse como un dispositivo en serie USB en tu computadora. Puedes buscarla en
/dev/
:
Puedes abrir la consola en serie con minicom o en pantalla. Por ejemplo, si el dispositivo está enls -la /dev/tty*
/dev/ttyACM0
:
, la consola en serie te permite ingresar comandos de OpenThread (por ejemplo,screen /dev/ttyACM0 115200
state
). - Si la placa EFR32 se vinculó antes, te recomendamos que
restablezcas la configuración de fábrica:
- Mantén presionado el botón PB0 durante más de 10 segundos.
- 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.