EFR32MG24
Este exemplo funciona como um tipo de dispositivo de lâmpada, com recursos de ativação/desativação. As etapas foram verificadas na placa de desenvolvimento do SiLabs EFR32MG24.
Este exemplo usa um ID de fornecedor de teste (VID) e um ID de produto (PID) de 0x8005
.
Configuração inicial
- Instale as dependências conforme especificado no repositório
connectedhomeip
: - Instale o Simplicity Commander e verifique se o binário (comando) está no
PATH
. Exemplo:export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
- Instale o JLink no computador (necessário para a atualização da imagem), conforme descrito em Como visualizar a saída do Logging para o exemplo de iluminação EFR32.
- Clone e inicialize o repositório
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
- Exporte as variáveis de ambiente:
- Se a placa for a versão de 10 dBm, use
BRD4186C
:export EFR32_BOARD=BRD4186C
- Se a placa for a versão de 20 dBm, use
BRD4187C
:export EFR32_BOARD=BRD4187C
- Se a placa for a versão de 10 dBm, use
Crie a imagem e atualize o tabuleiro
- Crie a imagem do app de iluminação:
A imagem será gerada na pastacd 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
. - Conecte a placa EFR32 ao computador e atualize a imagem na placa EFR32:
python3 out/debug/chip-efr32-lighting-example.flash.py --erase
Instalar o carregador de inicialização
- Abra o Simplicity Commander:
commander
- Abra a lista suspensa "Select Kit..." no canto superior esquerdo e selecione o kit a ser atualizado com um carregador de inicialização. Esse menu é preenchido com todos os dispositivos JLink detectados e os lista por número de série. Para facilitar a seleção, desconecte todos os dispositivos compatíveis com JLink, exceto o dispositivo que vai ser atualizado com flash, para que a lista seja preenchida com apenas um kit.
- Selecione o bloco Flash no lado esquerdo.
- Na seção Flash MCU, clique em Procurar.
Navegue até
connectedhomeip/third_party/silabs/matter_support/matter/efr32/bootloader_binaries
e encontre o arquivo.s37
que corresponde à variável de ambienteEFR32_BOARD
definida:- Se a placa for a versão de 10 dBm e você tiver usado
BRD4186C
, selecionebootloader-storage-spiflash-single-1024k-BRD4186C-gsdk4.1.s37
. - Se a placa for a versão de 20 dBm e você tiver usado
BRD4187C
, selecionebootloader-storage-spiflash-single-1024k-BRD4187C-gsdk4.1.s37
.
Clique em Abrir para selecionar o arquivo.
- Se a placa for a versão de 10 dBm e você tiver usado
Clique em Flash.
Após a atualização flash do carregador de inicialização, a atualização subsequente do aplicativo precisa omitir a sinalização --erase
. Caso contrário, o carregador de inicialização precisará ser atualizado novamente. A sinalização --erase
apaga todo o flash da placa,
incluindo o carregador de inicialização.
Validar o exemplo
- Verifique os registros no seu board. Abra duas janelas de terminal.
- Na primeira janela:
JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
- Na segunda janela:
Os registros serão impressos na segunda janela.JLinkRTTClient
- Na primeira janela:
- Ele precisa se apresentar como um dispositivo serial USB no
computador. Você pode procurá-la em
/dev/
:
Você pode abrir o console serial com minicom ou tela. Por exemplo, se o dispositivo estiver emls -la /dev/tty*
/dev/ttyACM0
:
O console serial permite inserir comandos do OpenThread (por exemplo,screen /dev/ttyACM0 115200
state
). - Se a placa EFR32 já foi pareada, recomendamos que você a redefina para a configuração original:
- Mantenha o botão PB0 pressionado por mais de 10 segundos.
- Os LEDs piscarão três vezes. Continue pressionando o botão até ver o código QR atualizado na tela pequena.
EFR32MG12
Este exemplo funciona como um tipo de dispositivo de lâmpada, com recursos de ativação/desativação. As etapas foram verificadas no quadro de desenvolvimentos SiFR EFR32MG12 (Mighty Gecko).
Este exemplo usa um ID de fornecedor de teste (VID) e um ID de produto (PID) de 0x8005
.
Configuração inicial
- Instale as dependências conforme especificado no repositório
connectedhomeip
: - Instale o Simplicity Commander e verifique se o binário (comando) está no
PATH
. Exemplo:export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
- Instale o JLink no computador (necessário para a atualização da imagem), conforme descrito em Como visualizar a saída do Logging para o exemplo de iluminação EFR32.
- Clone e inicialize o repositório
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
- Exporte variáveis de ambiente:
export EFR32_BOARD=BRD4161A
Crie a imagem e atualize o tabuleiro
- Crie a imagem do app de iluminação:
A imagem será gerada na pastacd 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
. - Conecte a placa EFR32 ao computador e atualize a imagem na placa EFR32:
python3 out/debug/chip-efr32-lighting-example.flash.py --erase
Validar o exemplo
- Verifique os registros no seu board. Abra duas janelas de terminal.
- Na primeira janela:
JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
- Na segunda janela:
Os registros serão impressos na segunda janela.JLinkRTTClient
- Na primeira janela:
- Ele precisa se apresentar como um dispositivo serial USB no
computador. Você pode procurá-la em
/dev/
:
Você pode abrir o console serial com minicom ou tela. Por exemplo, se o dispositivo estiver emls -la /dev/tty*
/dev/ttyACM0
:
O console serial permite inserir comandos do OpenThread (por exemplo,screen /dev/ttyACM0 115200
state
). - Se a placa EFR32 já foi pareada, recomendamos que você a redefina para a configuração original:
- Mantenha o botão PB0 pressionado por mais de 10 segundos.
- Os LEDs piscarão três vezes. Continue pressionando o botão até ver o código QR atualizado na tela pequena.
Próximas etapas
Quando o exemplo Matter for criado, crie um projeto de desenvolvedor.