EFR32MG24
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 SiLabs EFR32MG24.
En este ejemplo, se usa un ID de proveedor de prueba (VID) y un ID de producto (PID) de 0x8005
.
Configuración inicial
- Instala las dependencias como se especifica en el repositorio
connectedhomeip
: - Instala Simplicity Commander y asegúrate de que su objeto binario (comando) esté en tu
PATH
. Por ejemplo:export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
- Instala JLink en tu computadora (necesario para la imagen en la memoria flash), como se describe en Visualiza 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 tu placa tiene la versión de 10 dBm, usa
BRD4186C
:export EFR32_BOARD=BRD4186C
- Si tu placa es la versión de 20 dBm, usa
BRD4187C
:export EFR32_BOARD=BRD4187C
- Si tu placa tiene la versión de 10 dBm, usa
Compila la imagen y escribe la placa en la memoria flash
- Compila la imagen para 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 con tu computadora y escribe la imagen en la placa EFR32:
python3 out/debug/chip-efr32-lighting-example.flash.py --erase
Instalar bootloader
- Abre Simplicity Commander:
commander
- Abre el menú desplegable "Select Kit..." en la esquina superior izquierda y selecciona el kit que deseas instalar mediante 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 dispositivo que se instalará, de manera que la lista se propague con un solo kit.
- Selecciona el mosaico Flash en la parte izquierda.
- En la sección Flash MCU, haz clic en Explorar.
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 escribir en la memoria flash del bootloader, la escritura en la memoria flash posterior de la aplicación debe omitir la marca --erase
; de lo contrario, este deberá volver a instalarse. La marca --erase
borra todo el flash de la placa, incluido el bootloader.
Valida el ejemplo
- Revisa los registros de tu pizarra. 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 la computadora. Puedes encontrarlo en
/dev/
:
Puedes abrir la consola en serie con minicom o 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 sincronizó anteriormente, 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 la actualización del código QR 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 SiLabs EFR32MG12 (Mighty Gecko).
En este ejemplo, se usa un ID de proveedor de prueba (VID) y un ID de producto (PID) de 0x8005
.
Configuración inicial
- Instala las dependencias como se especifica en el repositorio
connectedhomeip
: - Instala Simplicity Commander y asegúrate de que su objeto binario (comando) esté en tu
PATH
. Por ejemplo:export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
- Instala JLink en tu computadora (necesario para la imagen en la memoria flash), como se describe en Visualiza 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:
export EFR32_BOARD=BRD4161A
Compila la imagen y escribe la placa en la memoria flash
- Compila la imagen para 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 con tu computadora y escribe la imagen en la placa EFR32:
python3 out/debug/chip-efr32-lighting-example.flash.py --erase
Valida el ejemplo
- Revisa los registros de tu pizarra. 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 la computadora. Puedes encontrarlo en
/dev/
:
Puedes abrir la consola en serie con minicom o 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 sincronizó anteriormente, 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 la actualización del código QR en la pantalla pequeña.
Próximos pasos
Cuando tu ejemplo de Matter se haya compilado correctamente, crea un proyecto de desarrollador.