EFR32MG24
Dieses Beispiel fungiert als Gerätetyp einer Glühbirne mit Ein-/Aus-Funktion. Die Schritte wurden auf dem SiLabs EFR32MG24-Entwicklungsboard überprüft.
In diesem Beispiel werden eine Testanbieter-ID (VID) und eine Produkt-ID (PID) von 0x8005
verwendet.
Ersteinrichtung
- Installieren Sie die Abhängigkeiten wie im Repository
connectedhomeip
angegeben: - Installieren Sie Simplicity Commander und achten Sie darauf, dass sich dessen Binärprogramm (Commander) in
PATH
befindet. Beispiel:
.export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
- Installieren Sie JLink auf Ihrem Computer (für blinkendes Bild erforderlich), wie unter Logging-Ausgabe ansehen für das EFR32-Beleuchtungsbeispiel beschrieben.
- Klonen und initialisieren Sie das Repository
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
- Exportieren Sie Umgebungsvariablen:
- Wenn es sich um eine Version mit 10 dBm handelt, verwenden Sie
BRD4186C
:export EFR32_BOARD=BRD4186C
- Wenn Ihr Board die 20-dBm-Version hat, verwenden Sie
BRD4187C
:export EFR32_BOARD=BRD4187C
- Wenn es sich um eine Version mit 10 dBm handelt, verwenden Sie
Das Image erstellen und das Board flashen
- Erstelle das Bild für die Beleuchtungs-App:
Das Bild wird im Ordnercd 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
generiert. - Verbinden Sie das EFR32-Board mit Ihrem Computer und laden Sie das Bild auf Ihr EFR32-Board:
python3 out/debug/chip-efr32-lighting-example.flash.py --erase
Bootloader installieren
- Öffnen Sie Simplicity Commander:
commander
- Öffnen Sie das Drop-down-Menü Kit auswählen... oben links und wählen Sie das Kit aus, das mit einem Bootloader geflasht werden soll. Dieses Menü enthält alle erkannten JLink-Geräte und listet sie nach Seriennummer auf. Trenne für eine einfachere Auswahl alle JLink-fähigen Geräte außer dem zu flashenden Gerät, sodass die Liste nur ein Kit enthält.
- Wähle auf der linken Seite die Kachel Flash aus.
- Klicken Sie im Abschnitt Flash MCU auf Browse (Durchsuchen).
Gehen Sie zu
connectedhomeip/third_party/silabs/matter_support/matter/efr32/bootloader_binaries
und suchen Sie die Datei.s37
, die der von Ihnen festgelegten UmgebungsvariableEFR32_BOARD
entspricht:- Wenn Ihr Board die 10-dBm-Version verwendet und Sie
BRD4186C
verwendet haben, wählen Siebootloader-storage-spiflash-single-1024k-BRD4186C-gsdk4.1.s37
aus. - Wenn Ihr Board die 20-dBm-Version verwendet und Sie
BRD4187C
verwendet haben, wählen Siebootloader-storage-spiflash-single-1024k-BRD4187C-gsdk4.1.s37
aus.
Klicken Sie auf Öffnen, um die Datei auszuwählen.
- Wenn Ihr Board die 10-dBm-Version verwendet und Sie
Klicken Sie auf Flash.
Beachten Sie, dass nach dem Flashen des Bootloaders das nachfolgende Flashen der Anwendung das Flag --erase
auslassen sollte. Andernfalls muss der Bootloader neu geflasht werden. Das Flag --erase
löscht den gesamten Flash des Boards, einschließlich des Bootloaders.
Beispiel validieren
- Prüfen Sie die Protokolle auf Ihrem Board. Öffnen Sie zwei Terminal-Fenster.
- Im ersten Fenster:
JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
- Im zweiten Fenster:
Die Logs werden im zweiten Fenster ausgegeben.JLinkRTTClient
- Im ersten Fenster:
- Das Gerät sollte sich auf dem Computer als serielles USB-Gerät präsentieren. Sie können sie in
/dev/
nachschlagen:
Sie können die serielle Konsole mit minicom oder Bildschirm öffnen. Wenn sich das Gerät beispielsweise inls -la /dev/tty*
/dev/ttyACM0
befindet:
Über die serielle Konsole können Sie OpenThread-Befehle (z. B.screen /dev/ttyACM0 115200
state
) eingeben. - Wenn das EFR32-Board bereits gekoppelt wurde, sollten Sie es auf die Werkseinstellungen zurücksetzen:
- Halten Sie die Taste PB0 > 10 Sekunden lang gedrückt.
- Die LEDs blinken dreimal. Halten Sie die Taste gedrückt, bis der QR-Code auf dem kleinen Display aktualisiert wird.
EFR32MG12
Dieses Beispiel fungiert als Gerätetyp einer Glühbirne mit Ein-/Aus-Funktion. Die Schritte wurden auf dem Entwicklungsboard von SiLabs EFR32MG12 (Mighty Gecko) überprüft.
In diesem Beispiel werden eine Testanbieter-ID (VID) und eine Produkt-ID (PID) von 0x8005
verwendet.
Ersteinrichtung
- Installieren Sie die Abhängigkeiten wie im Repository
connectedhomeip
angegeben: - Installieren Sie Simplicity Commander und achten Sie darauf, dass sich dessen Binärprogramm (Commander) in
PATH
befindet. Beispiel:
.export PATH=$PATH:/Applications/Commander.app/Contents/MacOS/
- Installieren Sie JLink auf Ihrem Computer (für blinkendes Bild erforderlich), wie unter Logging-Ausgabe ansehen für das EFR32-Beleuchtungsbeispiel beschrieben.
- Klonen und initialisieren Sie das Repository
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
- Umgebungsvariablen exportieren:
export EFR32_BOARD=BRD4161A
Das Image erstellen und das Board flashen
- Erstelle das Bild für die Beleuchtungs-App:
Das Bild wird im Ordnercd 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
generiert. - Verbinden Sie das EFR32-Board mit Ihrem Computer und laden Sie das Bild auf Ihr EFR32-Board:
python3 out/debug/chip-efr32-lighting-example.flash.py --erase
Beispiel validieren
- Prüfen Sie die Protokolle auf Ihrem Board. Öffnen Sie zwei Terminal-Fenster.
- Im ersten Fenster:
JLinkExe -device EFR32MG12PXXXF1024 -if JTAG -speed 4000 -autoconnect 1
- Im zweiten Fenster:
Die Logs werden im zweiten Fenster ausgegeben.JLinkRTTClient
- Im ersten Fenster:
- Das Gerät sollte sich auf dem Computer als serielles USB-Gerät präsentieren. Sie können sie in
/dev/
nachschlagen:
Sie können die serielle Konsole mit minicom oder Bildschirm öffnen. Wenn sich das Gerät beispielsweise inls -la /dev/tty*
/dev/ttyACM0
befindet:
Über die serielle Konsole können Sie OpenThread-Befehle (z. B.screen /dev/ttyACM0 115200
state
) eingeben. - Wenn das EFR32-Board bereits gekoppelt wurde, sollten Sie es auf die Werkseinstellungen zurücksetzen:
- Halten Sie die Taste PB0 > 10 Sekunden lang gedrückt.
- Die LEDs blinken dreimal. Halten Sie die Taste gedrückt, bis der QR-Code auf dem kleinen Display aktualisiert wird.
Nächste Schritte
Wenn das Matter-Beispiel erfolgreich erstellt wurde, erstellen Sie ein Entwicklerprojekt.