Silicon-Labs-LOGO

ZAP se vyvíjí se silikonovými laboratořemi

ZAP-Developing-With-Silicon-Labs-PRODUCT

Specifikace

  • Název produktu: Silicon Labs ZAP
  • Typ: Generátor kódu a uživatelské rozhraní
  • Kompatibilita: Zigbee Cluster Library (Zigbee) nebo datový model (Matter)
  • Rozvinutý od: Connectivity Standards Alliance

Návod k použití produktu

  • ZAP Začínáme
    • Chcete-li začít se ZAP, postupujte takto:
      • Stáhněte si spustitelný soubor ZAP z oficiálního úložiště.
      • Nainstalujte závislosti pomocí příkazu npm install.
      • Informace o instalaci specifické pro Windows naleznete v příručce Instalace ZAP pro operační systém Windows.
  • Vývoj Zigbee
    • Pokud vyvíjíte aplikace Zigbee:
      • Použijte Simplicity Studio, které obsahuje ZAP a další potřebné nástroje.
  • Vývoj hmoty
    • Pokud vyvíjíte aplikace Matter:
      • Možnosti zahrnují použití Simplicity Studio nebo přístup k repozitářům Silicon Labs nebo CSA Github.
      • V případě potřeby si přečtěte pokyny k aktualizaci pro ZAP mimo cyklus vydání Simplicity Studio.

Nejčastější dotazy

  • Otázka: Jaké jsou dostupné různé verze binárních souborů ZAP?
    • A: K dispozici jsou dvě verze – oficiální vydání s ověřenými sestaveními a předběžná verze s nejnovějšími funkcemi.
  • Otázka: Co mám dělat, pokud během instalace narazím na problémy s kompilací nativní knihovny?
    • A: Chcete-li tyto problémy vyřešit, přečtěte si informace o nejčastějších dotazech o skriptech pro konkrétní platformu.

“`

Silicon Labs ZAP
Silicon Labs ZAP

Vývoj se Silicon Labs ZAP

Začínáme
ZAP Začínáme znovuview Instalace ZAP Instalace ZAP Windows FAQ
Základy Základy ZAP
Uživatelská příručka ZAP Uživatelská příručka Konecview Vlastní XML Vlastní XML Tags pro Zigbee Více typů zařízení na koncový bod Typ zařízení Funkce Stránka Oznámení Datový model/Specifikace ZCL Shoda Řízení přístupu Spouštění aplikací ZAP for Matter nebo Zigbee Generování kódu pro Matter nebo Zigbee Aktualizace ZAP ve Studiu Souběžný víceprotokol mezi Zigbee a Matter Integrace SLC CLI se ZAP

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

1/35

Vývoj se Silicon Labs ZAP
Vývoj se Silicon Labs ZAP
ZAP
ZAP je obecný modul pro generování kódu a uživatelské rozhraní pro aplikace a knihovny založené na Zigbee Cluster Library od Zigbee nebo Data Model od Matter. Specifikace byla vyvinuta Connectivity Standards Alliance. ZAP vám umožňuje provádět následující operace:
Proveďte přizpůsobené generování všech globálních artefaktů (konstant, typů, ID atd.) na základě specifikace ZCL/Data-Model. Proveďte přizpůsobené generování všech uživatelsky vybraných artefaktů konfigurace (konfigurace aplikace, konfigurace koncového bodu atd.) na základě specifikace ZCL/Data-Model a konfigurace aplikace poskytnuté zákazníkem. Poskytněte koncovému uživateli uživatelské rozhraní, aby si mohl vybrat konkrétní konfiguraci aplikace (koncové body, clustery, atributy, příkazy atd.).

ZAP-Developing-With-Silicon-Labs-FIG- (1)

Obsah v těchto částech popisuje, jak vyvíjet aplikace Zigbee a Matter pomocí konfigurace vrstev ZCL (Zigbee) nebo datového modelu (Matter) pomocí ZAP.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

2/35

ZAP Začínáme

ZAP Začínáme
Začínáme se ZAP
Tyto části popisují různé metody vytváření aplikací Zigbee a Matter. Všimněte si, že Simplicity Studio poskytuje způsob, jak vytvářet aplikace Zigbee a Matter od začátku do konce, kde jsou všechny nástroje předinstalované spolu se Simplicity Studio (včetně ZAP). Můžete se také rozhodnout prozkoumat další způsoby vytváření aplikací, jak je popsáno zde.
Vývoj Zigbee
Vývojáři aplikací Zigbee mohou vytvářet své aplikace pomocí Simplicity Studio, které již obsahuje ZAP a další nástroje, které vám pomohou vytvořit aplikaci od začátku do konce.
Vývoj hmoty
Vývojáři Matter Application mohou vytvářet své aplikace pomocí následujících metod: Simplicity Studio: To zahrnuje ZAP a další nástroje, které jsou potřebné k sestavení aplikace Matter od začátku do konce. Github (Silicon Labs) Github (CSA)
Poznámka: Chcete-li aktualizovat ZAP mimo cyklus vydání Simplicity Studio, přečtěte si aktualizaci ZAP v Simplicity Studio a ZAP Installation Guide

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

3/35

Instalace ZAP

Následující části popisují instalaci ZAP a jak aktualizovat ZAP v Simplicity Studio IDE.
Doporučeno stažení spustitelného souboru ZAP)
Toto je doporučený způsob, jak začít se ZAP. Nejnovější binární soubory ZAP můžete získat od aa https://github.com/project-chip/zp/releses. Předpřipravené binární soubory přicházejí ve dvou různých verzích.
Oficiální vydání: Ověřené sestavení s vyhrazenými testovacími sadami Matter a Zigbee. Formát názvu vydání je vYYYY.DD.MM. Předběžná verze: Sestavení s nejnovějšími funkcemi a opravami chyb, ale tato sestavení NEJSOU ověřena speciálními testovacími sadami Matter a Zigbee. Formát názvu vydání je vYYYY.DD.MM-nightly.
Instalace ZAP ze zdroje
Základní pokyny k instalaci ZAP
Protože se jedná o aplikaci node.js, musíte mít nainstalované prostředí uzlu. Nejlepší způsob, jak toho dosáhnout, je stáhnout nejnovější instalaci uzlu, která zahrnuje node a npm. Pokud máte na své pracovní stanici nainstalovanou starší verzi uzlu, může to způsobit problémy, zejména pokud je velmi stará. Ujistěte se, že máte nejnovější verzi uzlu v16.x s npm, která je součástí. Spuštěním node –version zkontrolujte, která verze je stažena. Doporučuje se v18.x. Poté, co budete mít požadovanou verzi uzlu, můžete spustit následující:
Nainstalujte závislosti
K instalaci závislostí použijte následující příkazy:

ZAP-Developing-With-Silicon-Labs-FIG- (2)
instalace npm
Poznámka: Pro instalaci ZAP specifickou pro Windows viz Instalace ZAP pro OS Windows Není neobvyklé, že se v tomto okamžiku setkáte s problémy s kompilací nativní knihovny. Existují různé skripty src-script/install-* pro různé platformy. Podívejte se na informace o tom, který skript se má spustit na různých platformách, a poté znovu spusťte npm install.
Spusťte aplikaci
Ke spuštění aplikace použijte následující příkazy:

ZAP-Developing-With-Silicon-Labs-FIG- (3)
npm spustit zap
Spusťte front-end v režimu vývoje
Podporuje opětovné načtení horkého kódu, hlášení chyb a tak dále. Pomocí následujících příkazů spusťte vývoj front-endu
režim:ZAP-Developing-With-Silicon-Labs-FIG- (4)
kvasar dev -m elektron
or

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

4/35

ZAP Insta at o ll in
npm run electron-dev

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

5/35

Instalace ZAP Windows
Instalace ZAP Windows
Instalace ZAP pro OS Windows
1. Windows Powershell
Do vyhledávacího pole na ploše zadejte Windows Powershell a spusťte jej jako správce. Spusťte všechny následující příkazy uvnitř Powershell.
2. Čokoláda
Instalovat z https://chocolatey.org/install. Zkontrolujte, zda je nainstalováno správně, pomocí následujících příkazů:
čoko -v
Nainstalujte balíček pkgconfiglite pomocí následujících příkazů:
Choco install pkgconfiglite
3. Nainstalujte Node
Pro instalaci spusťte následující příkazy:
Choco install nodejs-lts
*Verze musí být 18, aby prošla testem kontroly verze, po instalaci zkontrolujte pomocí node -v *Pokud jste již nainstalovali Node a selhaly některé testy podobné tomu, že nemůžete najít Node, znovu nainstalujte Node s chocolatey.
4. Postupujte podle základních pokynů pro instalaci ZAP
Postupujte podle pokynů k instalaci ZAP ze zdroje v části Instalace ZAP. Při dodržování základních pokynů pro instalaci ZAP dávejte pozor na následující chyby a na to, jak je vyřešit:
sqlite3
Pokud při spouštění ZAP (např. npm run zap ), uvidíte ve vyskakovacím okně chybu o sqlite3.node, spusťte:
npm rebuild sqlite3
stavitel elektronů
Pokud se při provádění npm install po instalaci vyskytne chyba u následujícího příkazu souvisejícího s electron-builder install-appdeps , npx electron-rebuild canvas failed nebo node-pre-gyp , aktuální verze canvas není kompatibilní s Windows a chyba instalace nezpůsobí selhání při spuštění ZAP. node-canvas nyní pracuje na řešení a problém bude vyřešen v blízké budoucnosti.
„postinstall“: „electron-builder install-app-deps && husky install && npm rebuild canvas –update-binary && npm run version-stamp”

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

6/35

Instalace ZAP Windows
Plátno
Pokud selže test spuštění npm kvůli chybě Testovací sada se nespustila. Nelze najít modul '../build/Release/canvas.node' nebo
zapnode_modulescanvasbuildReleasecanvas.node není platná aplikace Win32. , přestavte plátno následovně:
npm rebuild canvas –update-binary
získat index.html nebo Jiné problémy se serverem
Pokud test spuštění npm selže kvůli chybě, požadavek index.html selhal se stavovým kódem 404 v testech jednotek nebo se serverem
problémy s připojením v testech e2e-ci, spusťte následující příkazy:
npm spustit sestavení
Ostatní
Zkontrolujte, zda je verze uzlu v18 a zkuste ji nainstalovat pomocí Chocolatey.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

7/35

FAQ
FAQ
Často kladené otázky
Otázka: Jak spustit uživatelské rozhraní ve vývojovém režimu? Odpověď: Uživatelské rozhraní můžete spustit ve vývojovém režimu, což povede k následujícímu nastavení:
Samostatný HTTP server pro vývoj kvasaru, který se živě obnovuje na portu 8080 ZAP back-end běžící na portu 9070 Chrome nebo jiný prohlížeč, běží nezávisle Chcete-li se dostat k tomuto nastavení, postupujte podle pokynů níže. ò Nejprve spusťte vývojový server ZAP, který začíná na portu 9070.
npm spusťte zap-devserver – Dále spusťte vývojový server kvasaru, který začíná na portu 8080.
quasar dev ô Nasměrujte svůj prohlížeč nebo jej spusťte proti správnému URL s argumentem restPort:
google-chrome http://localhost:8080/?restPort=9070

Otázka: Jak to udělat, aby to fungovalo na Mac/Linux OS? A:
npm install se používá ke stažení všech požadovaných závislých balíčků. Pokud vidíte chyby související s node-gyp a chybějícími místními knihovnami, jako je pixman atd., chybí vám nativní závislosti, které byste mohli uspokojit při kompilaci nepředpřipravených binárních souborů uzlů pro některé kombinace platforem a verzí. Npm on cloud neustále aktualizuje seznam poskytovaných binárních souborů, takže je možné, že si je v pohodě vyzvednete, ale pokud ne, toto jsou pokyny pro různé platformy:
Fedora Core s dnf:
dnf nainstalovat pixman-devel cairo-devel pango-devel libjpeg-devel giflib-devel
nebo spusťte skript:
src-script/install-packages-fedora
Ubuntu s apt-get:
apt-get update apt-get install –fix-missing libpixman-1-dev libcairo-dev libsdl-pango-dev libjpeg-dev libgif-dev
nebo spusťte skript:

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

8/35

FAQ
src-script/install-packages-ubuntu
OSX na Macu s homebrew brew:
brew install pkg-config cairo pango libpng jpeg giflib librsvg
nebo spusťte skript:
src-script/install-packages-osx
Otázka: Jak to udělat, aby to fungovalo na OS Windows?
A: Ujistěte se, že je vždy aktuální a že neexistují žádné změny, které nebyly potvrzeny. Tip: git pull, git status a git stash jsou vaši přátelé. Aby Zap fungoval v OS Windows, musíte použít Chocolately. Ujistěte se, že jste si stáhli balíček pkgconfiglite.
Choco install pkgconfiglite
Pokud máte problémy s Káhirou, napřample pokud se vám zobrazí chyba o cairo.h': Žádná taková file nebo adresáře, proveďte následující: ò Zkontrolujte, zda je váš počítač 32bitový nebo 64bitový. ó V závislosti na tom si z této stránky stáhněte příslušný balíček
https://github.com/benjamind/delarre.docpad/blob/master/src/documents/posts/installing-node-canvas-for-windows.html.md. ô Create a folder on your C drive called GTK if it doesn’t already exist. õ Unzip the downloaded content into C:/GTK. ö Copy all the dll files from C:/GTK/bin to your node_modules/canvas/build/Release folder in your zap folder. ÷ Add C:/GTK to the path Environment Variable by going to System in the Control Panel and doing the following:
Klepněte na Pokročilá nastavení systému. Na záložce Upřesnit klikněte na Proměnné prostředí. V části Systémové proměnné najděte proměnnou prostředí PATH a vyberte ji. Klikněte na Upravit a přidejte do něj C:/GTK. Pokud proměnná prostředí PATH neexistuje, klepněte na tlačítko Nový. Pokud není soubor jpeglib.h nalezen, zkuste následující: ò Na terminálu spusťte: choco install libjpeg-turbo ó Ujistěte se, že je čistý pomocí: git clean -dxff a znovu spusťte npm install ô pokud se nevyskytnou žádné chyby a zobrazí se pouze varování, zkuste použít opravu npm audit õ pokud nemůžete spustit ZAP, přejděte file src-script/zap-start.js ö Změnit
÷ const { spawn } = require('cross-spawn') to const { spawn } = require('child_process') ø Spusťte npm a spusťte zap. Reference:
https://github.com/fabricjs/fabric.js/issues/3611 https://github.com/benjamind/delarre.docpad/blob/master/src/documents/posts/installing-node-canvas-for-windows.html.md [https://chocolatey.org/packages/libjpeg-turbo#dependencies](https://chocolatey.org/packages/libjpeg-turbo#dependencies)
Otázka: Zobrazuje se mi chyba „sqlite3_node“ nenalezen nebo podobná.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

9/35

FAQ
Odpověď: Znovu vytvořte své nativní vazby sqlite3. Chcete-li to ve většině případů opravit, spusťte:
instalace npm
./node_modules/.bin/electron-rebuild -w sqlite3 -p
Pokud se to stále nevyřeší, postupujte takto:
rm -rf node_modules a poté zkuste výše uvedené příkazy znovu. Občasná aktualizace vašeho npm také znamená rozdíl:
instalace npm -g npm
Otázka: Zobrazuje se mi chyba „Verze N-API této instance uzlu je 1. Tento modul podporuje verze N-API 3. Tato instance uzlu nemůže spustit tento modul.“
A: Upgradujte verzi uzlu. Řešení tohoto problému je diskutováno v tomto vláknu Stack Overflow: https://stackoverflow.com/questions/60620327/the-n-apiversion-of-this-node-instance-is-1-this-module-supports-n-api-version
Otázka: Můj vývojový počítač z jakéhokoli důvodu nefunguje se ZAP. Mohu použít dokovací kontejner?
A: Ano, můžete. TBD.
Otázka: Jak spustím ZAP uvnitř VSCode?
A: Pokud v cestě zadáte VSCode, zadejte zap repo a zadejte kód . Tím se otevře ZAP ve VSCode. Chcete-li spustit ZAP v režimu ladění, vyberte pracovní plochu ZAP a klikněte na ikonu Spustit na levém panelu nástrojů. Budete mít na výběr z několika možností pro spuštění ZAP, vyberte Node.js Debug Terminal . Tím se otevře okno terminálu, ze kterého můžete zadat npm run zap , čímž se připojí debugger a spustí ZAP jako normálně z příkazového řádku. Gratulujeme, nyní byste měli vidět spuštěný ZAP v ladicím programu. Ve VSCode můžete nastavit body přerušení stejně jako v jakémkoli jiném IDE.
Otázka: Test jednotky uživatelského rozhraní selhal s některými chybami kolem plátna, které nebylo vytvořeno pro správnou verzi uzlu. co mám dělat?
Odpověď: Pokud se zobrazí následující chyba:ZAP-Developing-With-Silicon-Labs-FIG- (5)
FAIL test/ui.test.js Testovací sada se nezdařila spustit Modul 'canvas.node' byl zkompilován proti jiné verzi Node.js pomocí NODE_MODULE_VERSION 80. Tato verze Node.js vyžaduje NODE_MODULE_VERSION 72. Zkuste prosím znovu zkompilovat nebo znovu nainstalovat modul (například nainstalovat pomocí `npmpm` nebo `npmpm` pomocí `np`ild`nbuil`.
ve společnosti Object. (node_modules/canvas/lib/bindings.js:3 18)
pak spusťte: npm rebuild canvas –update-binary

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

10/35

Základy ZAP

Základy ZCL/datového modelu ZAP
Tato sekce obsahuje informace pro nové uživatele ZAP. Klikněte na ikonu výukového programu v pravém horním rohu uživatelského rozhraní ZAP, která ukazuje, jak vytvořit konfiguraci ZAP. Výukový program vás provede následujícími kroky: Vytvoření koncového bodu Výběr typu zařízení Konfigurace clusteru Konfigurace atributu Konfigurace příkazu Podrobné informace naleznete v příručce Zigbee Cluster Configurator Guide

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

11/35

Uživatelská příručka ZAP
Uživatelská příručka ZAP
Uživatelská příručka ZAP
Části v této příručce poskytují další podrobnosti o různých funkcích poskytovaných ZAP.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

12/35

Vlastní XML

Přidání vlastního XML z uživatelského rozhraní ZAP
Klikněte na ikonu „Rozšíření“ v uživatelském rozhraní ZAP. Kliknutím na tlačítko „+“ přidat vyberte vlastní xml file Po přidání vlastního xml by se v uživatelském rozhraní ZAP měly zobrazit vlastní clustery, atributy, příkazy atd.
Vytvoření vlastního vlastního XML v Zigbee
Tato část ukazuje, jak vytvořit vlastní vlastní clustery a rozšířit stávající standardní clustery o vlastní atributy a příkazy pro Zigbee.
Clustery specifické pro výrobce v Zigbee
Ke standardnímu profesionálovi můžete přidat clustery specifické pro výrobcefile. Poskytujeme example tohoto níže. Chcete-li to provést, musíte splnit dvě povinnosti:
ID clusteru MUSÍ být v rozsahu specifickém pro výrobce, 0xfc00 – 0xffff. Definice clusteru musí obsahovat kód výrobce, který bude aplikován na VŠECHNY atributy a příkazy v tomto clusteru a musí být poskytnut při odesílání a přijímání příkazů a interakci s atributy. Přampten:

ZAP-Developing-With-Silicon-Labs-FIG- (6)
Sample Mfg Specific Cluster Generál Tento cluster poskytuje exampo tom, jak lze aplikační rámec rozšířit tak, aby zahrnoval clustery specifické pro výrobce.
0xFC00
ember sample atribut
ember sampatribut 2


A sample příkaz specifický pro výrobce v rámci sample specifické pro výrobce
shluk.


Příkazy specifické pro výrobce ve standardním clusteru Zigbee
Do libovolného standardního clusteru Zigbee můžete přidat své vlastní příkazy s následujícími požadavky:
Vaše příkazy specifické pro výrobce mohou používat jakékoli ID příkazu v rozsahu ID příkazu, 0x00 – 0xff. Musíte také zadat kód výrobce příkazu, aby jej bylo možné odlišit od ostatních příkazů v klastru a bylo možné s ním správně zacházet. PřampSoubor rozšíření On/Off clusteru o výrobní příkazy:

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

13/35

Vlastní XML
<command source=”client” code=”0 0006″ name=”SampleMfgSpecificOffWithTransition” optional=”true” ManufacturerCode=”0 1002″> Klientský příkaz, který vypne zařízení s přechodem daným dobou přechodu v Ember Sample atribut doby přechodu.ampleMfgSpecificOnWithTransition” optional=”true” ManufacturerCode=”0 1002″> Klientský příkaz, který zapne zařízení s přechodem daným časem přechodu v Ember Sample atribut doby přechodu.ampleMfgSpecificToggleWithTransition” optional=”true” ManufacturerCode=”0 1002″> Klientský příkaz, který přepíná zařízení s přechodem daným časem přechodu v Ember Sample atribut doby přechodu.ampleMfgSpecificOnWithTransition2″ optional=”true” ManufacturerCode=”0 1049″> Klientský příkaz, který zapne zařízení s přechodem daným časem přechodu v Ember Sample atribut doby přechodu.ampleMfgSpecificToggleWithTransition2″ optional=”true”
Kód výrobce=”0 1049″> Klientský příkaz, který přepíná zařízení s přechodem daným časem přechodu v Ember Sample atribut doby přechodu.

Atributy specifické pro výrobce ve standardním clusteru Zigbee
Do libovolného standardního clusteru Zigbee můžete přidat své vlastní atributy s následujícími požadavky:
Vaše atributy specifické pro výrobce mohou používat jakékoli id ​​atributu v rozsahu id atributů, 0x0000 – 0xffff. Musíte také zadat kód výrobce atributu, aby jej bylo možné odlišit od ostatních atributů v clusteru a bylo s ním možné zacházet správně. PřampSoubor rozšíření On/Off clusteru o výrobní atributy:
<attribute side=”server” code=”0 0006″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME” type=”INT16U” min=”0 0000″
max=”0xFFFF” writable=”true” default=”0 0000″ volitelné=”true” ManufacturerCode=”0 1002″>SampSpecifický atribut le Mfg: 0 0000 0 1002
<attribute side=”server” code=”0 0000″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_2″ type=”INT8U” min=”0 0000″ max=”0xFFFF” writable=”true” default=”0 0000″ volitelné=”true” ManufacturerCode=”0 1049″>SampSpecifický atribut le Mfg: 0 0000 0 1049
<attribute side=”server” code=”0 0001″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_3″ type=”INT8U” min=”0 0000″ max=”0xFFFF” writable=”true” default=”0 00″ volitelné=”true” ManufacturerCode=”0 1002″>SampSpecifický atribut le Mfg: 0 0001 0 1002
<attribute side=”server” code=”0 0001″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_4″ type=”INT16U” min=”0 0000″ max=”0xFFFF” writable=”true” default=”0 0000″ volitelné=”true” ManufacturerCode=”0 1049″>SampSpecifický atribut le Mfg: 0 0001 0 1040
Vytváření vlastního XML v Matteru
Tato část ukazuje, jak vytvořit vlastní vlastní clustery a rozšířit stávající standardní clustery o vlastní atributy a příkazy pro Matter.
Clustery in Matter specifické pro výrobce
V Matter můžete přidat clustery specifické pro výrobce. Poskytujeme example tohoto níže.
is a 32-bit combination of the manufacturer code and the id for the cluster. (required) The most significant 16 bits are the manufacturer code. The range for test manufacturer codes is 0xFFF1 – 0xFFF4. The least significant 16 bits are the cluster id. The range for manufacturer-specific clusters are: 0xFC00 – 0xFFFE.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

14/35

Vlastní XML
V následujícím example, výsledkem kombinace ID dodavatele (ID výrobce testu) 0xFFF1 a ID clusteru 0xFC20 je value of 0xFFF1FC20. The commands and attributes within this cluster will adopt the same Manufacturer ID. Exampten:
Generál Sample MEI 0xFFF1FC20 SAMPLE_MEI_CLUSTER Sample MEI cluster představuje rozšíření výrobce clusteru FlipFlop
Odpověď na AddArguments, která vrátí součet. Příkaz, který vezme dva argumenty uint8 a vrátí jejich součet. Jednoduchý příkaz bez jakýchkoli parametrů a bez odezvy.
Atributy specifické pro výrobce ve standardních klastrech hmoty
Do jakéhokoli standardního clusteru Matter můžete přidat atributy specifické pro výrobce s následujícími požadavky:
T aaaa shluk, ke kterému se přidávají atributy, musí být specifikovány –
rozší ř ení > ">
Kód atributu je 32bitová kombinace kódu výrobce a id atributu. Nejvýznamnějších 16 bitů je kód výrobce. Rozsah kódů výrobce testu je 0xFFF1 – 0xFFF4. Nejméně významných 16 bitů je ID atributu. Rozsah pro neglobální atributy je 0x0000 – 0x4FFF.
ExampSoubor rozšíření On/Off Matter clusteru o atributy specifické pro výrobce:
<attribute side=”server” code=”0xFFF0006″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_2″ type=”INT8U” min=”0 0000″
max=”0xFFFF” writable=”true” default=”0 0000″ volitelné=”true”>Sample Specifický atribut Mfg 2AMPLE_MFG_SPECIFIC_TRANSITION_TIME_4″ type=”INT16U” min=”0 0000″
max=”0xFFFF” writable=”true” default=”0 0000″ volitelné=”true”>SampSpecifický atribut le Mfg 4
Příkazy specifické pro výrobce ve standardních klastrech hmoty
Do libovolného standardního clusteru Matter můžete přidat příkazy specifické pro výrobce s následujícími požadavky:
T aaaa musí být specifikován shluk, do kterého se přidávají příkazy –
rozší ř ení > ">
Kód příkazu je 32bitová kombinace kódu výrobce a id příkazu. Nejvýznamnějších 16 bitů je kód výrobce. Rozsah kódů výrobce testu je 0xFFF1 – 0xFFF4. Nejméně významných 16 bitů je ID příkazu. Rozsah pro neglobální příkazy je 0x0000 – 0x00FF.
Exampsoubor rozšíření On/Off Matter clusteru o clustery specifické pro výrobce:

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

15/35

Vlastní XML

<command source=”client” code=”0xFFF10000″ name=”SampleMfgSpecificOnWithTransition2″ optional=”true”> Klientský příkaz, který zapne zařízení s přechodem daným časem přechodu v Ember Sample atribut doby přechodu.
<command source=”client” code=”0xFFF10001″ name=”SampleMfgSpecificToggleWithTransition2″ optional=”true”>
Klientský příkaz, který přepíná zařízení s přechodem daným časem přechodu v Ember Sample atribut doby přechodu.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

16/35

Vlastní XML Tags pro Zigbee

Následující dokument hovoří o každém z xml tags spojený se Zigbee.
Každý xml file je uvedena mezi konfigurátorem tags:

Datové typy lze definovat v konfigurátoru tag. Zigbee aktuálně podporuje definici bitmap, enumů, celých čísel, řetězců nebo struktur. Před definováním více typů se ujistěte, že jste zkontrolovali všechny existující atomické typy definované v types.xml a všechny neatomické typy definované v ostatních xml files. Můžete je definovat následovně:
Bitmap: name: název typu bitmapy. typ: Lze definovat bitmapu o velikosti mezi 8-64 bity, přičemž všechny by měly být násobky 8. Každá bitmapa může mít více polí se jménem a přidruženou maskou. např:

“`
Enum: name: název typu enum. typ: Lze definovat enum o velikosti mezi 8-64 bity, přičemž všechny by měly být násobky 8. Každý enum může mít více položek s názvem a hodnotou, která je s ním spojena. např:

Integer: Integer typy jsou již definovány pod atomickými typy, které existují v types.xml. Jejich velikost se může pohybovat od 8 do 64 bitů a mohou být podepsané nebo nepodepsané. např:

Řetězec: Typy řetězců jsou již definovány pod atomickými typy, které existují v types.xml. Současné typy řetězců zahrnují oktetový řetězec, znakový řetězec, dlouhý oktetový řetězec a dlouhý znakový řetězec, např.:

Struct: name: název typu struktury. Každá struktura může mít více položek s názvem a typem, který je s ní spojen. Typ může být libovolný předdefinovaný typ pod datovými typy. např:

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

17/35

Vlastní XML Tags pro Zigbee

<item name=”structItem1″ type=” Any defined type name in the xml files]”/>

Vlastní clustery lze definovat v konfigurátoru tag. jméno: název domény klastru: doména klastru. Cluster se zobrazí v uživatelském rozhraní ZAP pod touto doménou. popis: Popis kódu klastru: klastrový kód definovat: klastr definovat, který je použit generátorem kódu k definování klastru určitým způsobem výrobce kód: Používá se k definování výrobního specifického klastru. To musí být mezi 0xfc00 – 0xffff. Kód výrobce pro cluster je třeba definovat takto:

Výrobní cluster automaticky vytváří atributy a příkazy pod ním stejného kódu výrobce, pokud výslovně neuvádí kód výrobce. IntroductionIn: Používá se k určení verze specifikace, ve které byl cluster představen. Toto používá generátor kódu k přidání další logiky. removeIn: Používá se k určení verze specifikace, ve které byl cluster odebrán. Toto používá generátor kódu k přidání další logiky. singleton(boolean): Používá se k určení clusteru jako singletonu, takže existuje pouze jedna instance tohoto clusteru sdílená mezi koncovými body. atribut: definuje atribut pro název clusteru: Název atributu je uveden mezi atributem tag.
název atributu
side(client/server): Strana clusteru, ke které je atribut také přidružen. kód: kód atributu kód výrobce: Lze jej použít k definování atributu specifického pro výrobce mimo specifikaci zigbee uvedenou ve standardním xml. definovat: atribut definovat, který je použit generátorem kódu k definování atributu určitým způsobem typ: typ atributu, kterým může být kterýkoli z datových typů uvedených v xml default: výchozí hodnota pro atribut. min: Minimální povolená hodnota pro atribut max: Maximální povolená hodnota pro zapisovatelný atribut: Je hodnota atributu zapisovatelná nebo ne. To lze použít k tomu, aby se zabránilo změně atributu příkazy write. optional(boolean): Používá se k určení, zda je atribut pro klastr volitelný či nikoli. min: Minimální povolená hodnota atributu, pokud jde o typ celé číslo, výčet nebo bitmapu. max: Maximální povolená hodnota atributu, pokud se jedná o typ typu celé číslo, enum nebo bitmapa: Používá se k určení maximální délky atributu, je-li typu řetězec. minLength: Používá se k určení minimální délky atributu, pokud je typu string. reportable(boolean): Sděluje, zda je atribut reportovatelný nebo ne. isNullable(boolean): Povoluje hodnoty null pro atribut. array(boolean): Používá se k deklaraci atributu typu array. IntroductionIn: Používá se k určení verze specifikace, ve které byl atribut zaveden. Toto používá generátor kódu k přidání další logiky. removeIn: Používá se k určení verze specifikace, ve které byl atribut odebrán. Toto používá generátor kódu k přidání další logiky. příkaz: definovat příkaz pro název clusteru: Název příkazu.

kód: příkazový kód

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

18/35

Vlastní XML Tags pro Zigbee
kód výrobce: Lze jej použít k definování příkazu specifického pro výrobce mimo specifikaci zigbee uvedenou ve standardním xml. popis: popis zdroje příkazu (klient/server): zdroj příkazu. optional(boolean): Používá se k určení, zda je příkaz pro klastr volitelný či nikoli. IntroductionIn: Používá se k určení verze specifikace, ve které byl příkaz zaveden. Toto používá generátor kódu k přidání další logiky. removeIn: Používá se k určení verze specifikace, ve které byl příkaz odstraněn. Toto používá generátor kódu k přidání další logiky. argumenty příkazu:
Každý příkaz může mít sadu argumentů příkazu název: název argumentu příkazu typ: typ argumentu příkazu, což může být kterýkoli z typů uvedených v xml. min: Minimální povolená hodnota pro argument, pokud je typu celé číslo, výčet nebo bitmapa. max: Maximální povolená hodnota pro argument, pokud se jedná o celé číslo, enum nebo bitmapový typ délka: Používá se k určení maximální povolené délky pro argument příkazu, pokud je typu string. minLength: Používá se k určení minimální povolené délky pro argument příkazu, pokud je typu string. array(boolean): K určení, zda je argument příkazu typu array. presentIf(string): Může to být podmíněný řetězec logických operací založený na jiných argumentech příkazu, kde můžete očekávat argument příkazu, pokud se podmíněný řetězec vyhodnotí jako true. např:

Poznámka: Zde status je další název argumentu příkazu. optional(boolean): Používá se k určení argumentu příkazu jako volitelného. countArg: Používá se, když je argument příkazu typu pole. Toto se používá ke zmínce o dalším argumentu příkazu, který označuje velikost pole pro tento argument.

IntroductionIn: Používá se k určení verze specifikace, ve které byl argument příkazu zaveden. Toto používá generátor kódu k přidání další logiky. removeIn: Používá se k určení verze specifikace, ve které byl argument příkazu odstraněn. Toto používá generátor kódu k přidání další logiky. Rozšíření clusteru lze definovat v konfigurátoru tag. Rozšíření clusteru se používá k rozšíření standardního clusteru o výrobní atributy a příkazy, např

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

19/35

Vlastní XML Tags pro Zigbee
<attribute side=”server” code=”0 0006″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME” type=”INT16U” min=”0 0000″ max=”0xFFFF” zapisovatelný=”true” default=”0 0000″ optional=”true” ManufacturerCode=”0 1002″>SampSpecifický atribut le Mfg: 0 0000 0 1002AMPLE_MFG_SPECIFIC_TRANSITION_TIME_2″ type=”INT8U” min=”0 0000″ max=”0xFFFF” writable=”true” default=”0 0000″ volitelné=”true” ManufacturerCode=”0 1049″>SampSpecifický atribut le Mfg: 0 0000 0 1049AMPLE_MFG_SPECIFIC_TRANSITION_TIME_3″ type=”INT8U” min=”0 0000″ max=”0xFFFF” writable=”true” default=”0 00″ volitelné=”true” ManufacturerCode=”0 1002″>SampSpecifický atribut le Mfg: 0 0001 0 1002AMPLE_MFG_SPECIFIC_TRANSITION_TIME_4″ type=”INT16U” min=”0 0000″ max=”0xFFFF” writable=”true” default=”0 0000″ volitelné=”true” ManufacturerCode=”0 1049″>SampSpecifický atribut le Mfg: 0 0001 0 1040ampleMfgSpecificOffWithTransition” optional=”true” ManufacturerCode=”0 1002″> Klientský příkaz, který vypne zařízení s daným přechodem
v době přechodu v Ember Sample atribut doby přechodu.ampleMfgSpecificOnWithTransition” optional=”true” ManufacturerCode=”0 1002″> Klientský příkaz, který zapne zařízení s daným přechodem
v době přechodu v Ember Sample atribut doby přechodu.ampleMfgSpecificToggleWithTransition” optional=”true” ManufacturerCode=”0 1002″> Klientský příkaz, který přepíná zařízení s daným přechodem
v době přechodu v Ember Sample atribut doby přechodu.ampleMfgSpecificOnWithTransition2″ optional=”true” ManufacturerCode=”0 1049″> Klientský příkaz, který zapne zařízení s daným přechodem
v době přechodu v Ember Sample atribut doby přechodu.ampleMfgSpecificToggleWithTransition2″ optional=”true” ManufacturerCode=”0 1049″> Klientský příkaz, který přepíná zařízení s daným přechodem
v době přechodu v Ember Sample atribut doby přechodu.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

20/35

Více typů zařízení na koncový bod

Jedná se o funkci Matter-only, kde si uživatel může vybrat více než jeden typ zařízení na koncový bod. Přidání více typů zařízení aaa přidá konfigurace clusteru v rámci typů zařízení ke konfiguraci koncového bodu.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

21/35

Více typů zařízení na koncový bod

Obrázek výše ukazuje, že koncový bod 1 má vybraný více než jeden typ zařízení. „Primární zařízení“ označuje typ primárního zařízení, se kterým bude koncový bod spojen. Primární typ zařízení je vždy přítomen na indexu 0 seznamu vybraných typů zařízení, takže výběr jiného primárního typu zařízení změní pořadí vybraných typů zařízení. Výběr typu zařízení má také omezení založená na specifikaci datového modelu. ZAP chrání uživatele před výběrem neplatných kombinací typů zařízení na koncovém bodu pomocí těchto omezení.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

22/35

Na stránce funkce Typ zařízení
Na stránce funkce Typ zařízení
Na stránce funkce Typ zařízení
ZAP podporuje vizualizaci a přepínání funkcí Matter na stránce funkcí typu zařízení. Budou zobrazeny pouze funkce typu zařízení specifikované v material-devices.xml v úložišti CHIP.

Přechod na stránku funkcí
ò Spusťte ZAP in Matter s aktuální sadou Matter SDK. ó Vytvořte koncový bod s typem zařízení Matter. ô Klepněte na tlačítko Funkce typu zařízení v horní střední části clusteru view. Pamatujte, že toto tlačítko je dostupné pouze v ZAP
konfigurace pro Matter a kdy v Matter SDK existují data o shodě. Kliknutím na toto tlačítko se otevře výše uvedený obrázek.
Shoda
Shoda definuje volitelnost a závislost pro atributy, příkazy, události a datové typy. Určuje, zda je prvek v určitých konfiguracích ZAP povinný, volitelný nebo nepodporovaný.
Shoda funkcí typu zařízení má přednost před shodou funkcí clusteru. NapřampFunkce osvětlení má volitelnou shodu v klastru On/Off, ale je deklarována jako povinná v typu zařízení On/Off Light, který zahrnuje klastr On/Off. Vytvořením koncového bodu s typem zařízení On/Off Light se na stránce funkcí zobrazí funkce Osvětlení jako povinná.
Přepínání funkcí
Když na stránce funkcí kliknete na přepínací tlačítko pro aktivaci nebo deaktivaci funkce, ZAP:
Aktualizujte přidružené prvky (atributy, příkazy, události) tak, aby byly v souladu, a zobrazte dialog zobrazující změny.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

23/35

Matter Device Type Feature Page Aktualizujte funkci bit v atributu featureMap přidruženého clusteru

Povolit dialog funkcí

Zakázat dialog funkcí

Přepínání je pro některé funkce zakázáno, pokud má jejich shoda neznámou hodnotu nebo aktuálně nepodporovaný tvar t. V tomto případě ZAP zobrazí varování v oznamovací ap ne.
Vyhovující prvky Wa

Když přepnete prvek, ZAP může zobrazit varování o shodě zařízení i varování o shodě. Pokud stav prvku neodpovídá očekávané shodě, ZAP zobrazí varovnou ikonu a zaznamená varování do oznámení. PřampSoubor varování o shodě a shodě zobrazený pro prvek:

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

24/35

Oznámení
Oznámení
Oznámení
Následující část definuje, jak jsou uživatelům ZAP podávána upozornění v uživatelském rozhraní.
Oznámení o balíčku
Oznámení o balíčku jsou varování nebo chybové zprávy spojené s jakýmkoli konkrétním balíčkem načteným do ZAP. Napřample, na obrázcích níže, kliknutím na ikonu varování pod stavovým sloupcem se dostanete do dialogu zobrazujícího všechna upozornění pro daný balíček.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

25/35

Oznámení
Oznámení o relaci
Oznámení o relaci jsou varování nebo chybové zprávy, které jsou spojeny s relací uživatele. Tato varování/chyby lze zobrazit kliknutím na tlačítko Upozornění na panelu nástrojů v horní části uživatelského rozhraní ZAP. Napřample, obrázek níže ukazuje stránku s upozorněními na relace po isc file byl načten do ZAP.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

26/35

Shoda se specifikací datového modelu/ZCL
Shoda se specifikací datového modelu/ZCL
Shoda datového modelu a specifikace ZCL
Tato funkce v ZAP pomáhá uživatelům vidět selhání shody datového modelu nebo ZCL s jejich stávajícími konfiguracemi ZAP. Varovné zprávy o selhání shody se objeví v podokně Oznámení v uživatelském rozhraní ZAP a budou také přihlášeny do konzoly při spuštění ZAP prostřednictvím CLI. Funkce kompatibility aktuálně poskytuje upozornění na shodu typu zařízení a klastru na koncovém bodu.
Upozornění na shodu v uživatelském rozhraní ZAP
Když uživatel otevře soubor .zap file pomocí uživatelského rozhraní ZAP se jim v podokně oznámení uživatelského rozhraní ZAP zobrazí upozornění na všechna selhání souladu. Napřample, obrázek níže ukazuje stránku s upozorněními na relace po .zap file byla otevřena s problémy s dodržováním předpisů.

Zprávy o dodržování předpisů zmizí, jakmile budou problémy vyřešeny pomocí uživatelského rozhraní ZAP, takže můžete sledovat pouze zbývající problémy s dodržováním předpisů. Pokud uživatel zakáže povinné prvky (cluster/příkazy/atributy) konfigurace, zobrazí se také nová varování kvůli souladu. Oznámení o shodě se specifikací budou vždy sledovat všechna selhání, která jsou zavedena do konfigurace ZAP, ale vezměte na vědomí, že varování, která se zobrazí během otevírání souboru .zap file jsou propracovanější o tom, proč nevyhověl ve srovnání s varováními, která se zobrazují při interakci s uživatelským rozhraním. Toto je záměrné a během otevírání souboru .zap se provádí úplná kontrola souladu file.
Upozornění na shodu na konzole

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

27/35

Shoda se specifikací datového modelu/ZCL
Když uživatel otevře soubor .zap file pomocí samostatného uživatelského rozhraní ZAP nebo rozhraní příkazového řádku ZAP uvidí upozornění přihlášená do konzoly/terminálu pro všechna selhání souladu. Napřample, obrázek níže ukazuje upozornění na upozornění na relace na konzole/terminálu po .zap file byla otevřena s problémy s dodržováním předpisů.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

28/35

Řízení přístupu

Funkce řízení přístupu
ZAP podporuje řízení přístupu u všech entit ZCL. Mapování těchto funkcí na požadované a podporované funkce sady SDK pro řízení přístupu závisí na implementaci sady SDK. ZAP obecně poskytuje datový model a mechanismus pro jeho zakódování do metainformací files a šířit tato data do šablon generování, aniž by se datovým bodům přiřazovaly konkrétní významy.
Základní podmínky
Řízení přístupu ZAP definuje tři základní pojmy takto: ò operace: definováno jako něco, co lze provést. Přample: číst, psát, vyvolávat. ó role: definována jako výsada herce. Jako například „View privilegium“, „Administrativní role“ a syn dále. ô modifikátory: definované jako speciální podmínky řízení přístupu, jako jsou data citlivá na strukturu nebo data v rozsahu struktury. Základní pojmy jsou definovány v metadatovém XML pod vrcholem tag . Následuje exampsoubor definic základních pojmů řízení přístupu:
<role type=”view”popis=”View privilegium”/>
Tento exampSoubor definuje tři operace, čtení, zápis a vyvolání, dva modifikátory a čtyři role.
Přístup k trojčatům
Každá jednotlivá přístupová podmínka může být definována pomocí přístupového tripletu v XML. Access triplet je kombinací operace, role a modifikátoru. Jsou volitelné, takže můžete mít pouze jeden z nich. Chybějící část tripletu obecně znamená permisivita, která je pro dané SDK specifická pro implementaci. Entita, která definuje svůj přístup, může mít jednu nebo více trojic přístupu. Následuje exampten:
v0
Toto je definice atributu, který má přístupový triplet, deklaruje, že umožňuje operaci zápisu pomocí role správy s aplikovaným modifikátorem v rozsahu tkaniny.
Výchozí oprávnění

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

29/35

Řízení přístupu
Entity ZCL mohou definovat svá vlastní individuální oprávnění. Existuje však také globální definice výchozích oprávnění pro
dané typy. Ty se u daného subjektu předpokládají, pokud neposkytne nějaká vlastní specifická oprávnění.
Výchozí oprávnění jsou deklarována prostřednictvím a tag na nejvyšší úrovni XML file. Přampten:
aa a< ccess op="invoke"/> a A aa < ccess op=”re d”/> a< ccess op=”write”/> a aa aa < ccess op=”re d” role=”view”/> aa < ccess op=”write” role=”oper te”/> a
Pomocníci šablon
Základním pomocníkem šablony, který lze použít, je iterátor {{#access}} … {{/access}}. Tento iterátor iteruje přes všechny dané přístupové triplety.
Podporuje následující dvě možnosti:
entity=”atribut/příkaz/událost” – pokud entitu nelze určit z kontextu, nastaví se typ entity. includeDefault=”true/false” – určuje, zda jsou zahrnuty výchozí hodnoty nebo ne. Následuje exampten:
{{#zcl_clusters}}
a Cluster: {{n me}} [{{code}}] a {{#zcl_ ttributes}} aa – atribut: {{n me}} [{{code}}] aa {{# ccess entity=” ttribute”}}
O a RM a M * p: {{oper tion}} / ole: {{role}} / odifier: {{ ccess odifier}} a{{/ ccess}} a {{/zcl_ ttributes}} a {{#zcl_comm nds}} aa – comm nd: {{n me}} [{{code}}] RM a entita=“ a”{}} p: {{oper tion}} / ole: {{role}} / odifier: {{ ccess odifier}} a{{/ ccess}} a {{/zcl_comm nds}}
{{#zcl_events}}
a – událost: {{n me}} [{{code}}] a {{# ccess entity=”event”}} O a RM a M * p: {{oper tion}} / ole: {{role}} / odifier: {{ ccess odifier}} a{{/ ccess}}
{{/zcl_events}}
{{/zcl_clusters}}

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

30/35

Spuštění aplikací ZAP for Matter nebo Zigbee
Spuštění aplikací ZAP for Matter nebo Zigbee
Spuštění aplikací ZAP for Matter nebo Zigbee
Následující části popisují spouštění ZAP v samostatném režimu s metadaty specifickými pro Matter nebo Zigbee. Cílem je spustit ZAP se správnými argumenty souvisejícími s metadaty XML (definice typů clusterů a zařízení podle specifikací CSA) a šablon generování, které se používají ke generování příslušného kódu.
Spuštění ZAP s Matter
Následující skript při spouštění ZAP přebírá správná metadata ze sady Matter SDK. https://github.com/project-chip/connectedhomeip/blob/master/scripts/tools/zap/run_zaptool.sh Poznámka: Ke spuštění ZAP in Matter můžete také použít následující přístup Zigbee.
Spuštění ZAP pomocí Zigbee
Následující příkaz spustí ZAP se specifikacemi ZCL a šablonami generování ze sady SDK.
[zap-path] -z [sdk-path]/gsdk/app/zcl/zcl-zap.json -g [sdk-path]/gsdk/protocol/zigbee/app/framework/gen-template/gen-templates.json
zap-path: Toto je cesta ke zdroji ZAP nebo spustitelnému sdk-path: Toto je cesta k SDK
Spuštění ZAP bez metadat
Pamatujte, že když spouštíte ZAP přímo prostřednictvím spustitelného souboru nebo ze zdroje pomocí npm run zap, spouštíte ZAP s testovacími metadaty pro Matter/Zigbee zabudovanými v ZAP a ne se skutečnými metadaty pocházejícími z Matter a Zigbee SDK zmíněných výše. Proto nezapomeňte vytvořit své konfigurace ZAP pomocí metadat SDK a nikoli otevřením ZAP přímo pomocí vestavěných testovacích metadat.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

31/35

Generování kódu pro Matter nebo Zigbee

Generování Code for Matter, Zigbee nebo Custom SDK
Následující části popisují, jak generovat kód pomocí ZAP.
Vygenerujte kód pomocí uživatelského rozhraní ZAP
Spusťte uživatelské rozhraní ZAP podle pokynů v části Spuštění ZAP for Matter nebo Zigbee a klikněte na tlačítko Generate v horní liště nabídek.
Generujte kód bez uživatelského rozhraní
Následující pokyny poskytují různé způsoby generování kódu prostřednictvím rozhraní CLI bez spouštění uživatelského rozhraní ZAP.
Generování kódu ze zdroje ZAP
Spusťte následující příkaz a vygenerujte kód pomocí ZAP ze zdroje: node src-script/zap-generate.js –genResultFile –stateDirectory ~/.zap/gen -z ./zcl-builtin/silabs/zcl.json -g ./test/gen-
template/zigbee/gen-templates.json -i ./test/resource/three-endpoint-device.zap -o ./tmp
Generování kódu ze spustitelného souboru ZAP
Spusťte následující příkaz pro vygenerování kódu pomocí spustitelného souboru ZAP: [zap-path] generation –genResultFile –stateDirectory ~/.zap/gen -z ./zcl-builtin/silabs/zcl.json -g ./test/gen-template/zigbee/gen-
templates.json -i ./test/resource/three-endpoint-device.zap -o ./tmp
Generování kódu ze spustitelného souboru ZAP CLI
Spusťte následující příkaz a vygenerujte kód pomocí spustitelného souboru ZAP CLI: [zap-cli-path] generation –genResultFile –stateDirectory ~/.zap/gen -z ./zcl-builtin/silabs/zcl.json -g ./test/gen-template/zigbee/gen-
templates.json -i ./test/resource/three-endpoint-device.zap -o ./tmp

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

32/35

Aktualizujte ZAP ve Studiu

Aktualizujte ZAP
Aktualizujte ZAP v Simplicity Studio
Tento mechanismus lze použít při práci s rozšířením Matter nebo Zigbee z verzí SDK Silicon Labs. ZAP lze aktualizovat v rámci Simplicity Studio bez vydání Simplicity Studio stažením nejnovějšího spustitelného souboru ZAP (doporučeno) nebo stažením nejnovějšího ze zdroje ZAP, jak je uvedeno v instalační příručce ZAP. Poté, co budete mít nejnovější ZAP na základě aktuálně používaného operačního systému, můžete aktualizovat ZAP v aplikaci Studio jako sadu adaptérů. Po stažení nejnovější verze ZAP postupujte podle následujících pokynů:
Přejděte do Simplicity Studio a vyberte Předvolby > Simplicity Studio > Adapter Pack. Klikněte na Přidat… a vyhledejte rozbalenou složku ZAP, kterou jste stáhli, a klikněte na Vybrat složku . Klikněte na Použít a Zavřít a nově přidaný ZAP bude použit vždy, když .zap file je otevřena.
Poznámka: Někdy mohou být starší instance ZAP již spuštěny i po aktualizaci na nejnovější ZAP. Ujistěte se, že jste ukončili všechny existující instance ZAP tak, aby byla použita nově načtená instance ZAP namísto staré instance, která stále funguje na pozadí.
Aktualizujte ZAP for Matter Development v Github
Při práci s úložištěm Matter nebo Matter-Silicon Labs na Githubu nastavte proměnné prostředí s ohledem na ZAP, abyste mohli vytvářet/generovat nové konfigurace ZAP nebo znovu generovat stávajícíample konfigurace ZAP po použití změn. Nastavte ZAP_DEVELOPMENT_PATH na ZAP ze zdroje stažením nejnovějšího nebo nastavte ZAP_INSTALLATION_PATH na spustitelný soubor ZAP, který jste si stáhli jako poslední ve vašem místním adresáři. Všimněte si, že když jsou nastaveny ZAP_DEVELOPMENT_PATH i ZAP_INSTALLATION_PATH, použije se ZAP_DEVELOPMENT_PATH.
Následují exampsoubory, které ukazují výše používané proměnné prostředí:
Spuštění ZAP pomocí specifikace Matter Regenerace všech sample Konfigurace ZAP pro aplikace Matter
Poznámka: Při používání spustitelných souborů ZAP se ujistěte, že používáte oficiální vydání před nočním vydáním pro větší stabilitu. Vidět
Stažení spustitelného souboru ZAP v instalační příručce ZAP

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

33/35

Souběžný multiprotokol mezi Zigbee a Matter
Souběžný multiprotokol mezi Zigbee a Matter
MCoanttceurrrent Multiprotokol mezi Zigbee a
ZAP lze použít ke konfiguraci konfigurací ZCL (Zigbee) a Data-Model (Matter) ve víceprotokolové aplikaci pro Zigbee a Matter. ZAP vám umožňuje vytvářet koncové body pro Zigbee a Matter explicitně ve stejné konfiguraci file. Pokud jsou koncové body Zigbee a Matter na stejném identifikátoru koncového bodu (napřample, LO Dimmable Light na koncovém bodu Id 1 a Matter Dimmable Light na další instanci koncového bodu 1), ZAP se stará o synchronizaci společných atributů napříč atributy Matter a Zigbee. Ujistěte se, že synchronizované atributy mají stejný datový typ. Společné atributy mezi Zigbee a Matter jsou stanoveny prostřednictvím a file s názvem multi-protocol.json . Uživatel může propojit libovolné dva clustery napříč Zigbee a Matter spolu s jejich odpovídajícími atributy pomocí clusteru a kódů atributů. Tento file naleznete v [SDKPath]/app/zcl/multi-protocol.json . Tento file byl nejprve aktualizován s určitou sadou klastrů a atributů, ale uživatel to může aktualizovat file podle potřeby a ZAP se postará o synchronizaci konfigurace atributů napříč Zigbee a Matter pro běžné identifikátory koncových bodů.
Výukový program ZAP můžete také najít v jakékoli víceprotokolové aplikaci Zigbee a Matter na stránce výukových programů. Tento tutoriál vás provede procesem vytváření víceprotokolové aplikace. Tento výukový program je k dispozici pouze tehdy, když otevřete existující multiprotokolovou aplikaci a lze jej nalézt, jak je znázorněno na obrázku níže:

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

34/35

Integrujte SLC CLI se ZAP
Integrujte SLC CLI se ZAP
Integrujte SLC CLI se ZAP
Chcete-li integrovat SLC CLI se ZAP, postupujte podle následujících kroků: ò Nainstalujte SLC CLI podle pokynů k instalaci v Uživatelské příručce Simplicity Studio 5. ó Nainstalujte ZAP podle pokynů v instalační příručce ZAP. ô Chcete-li integrovat SLC CLI se ZAP, přidejte proměnnou prostředí STUDIO_ADAPTER_PACK_PATH, která ukazuje na aplikaci ZAP
adresář. õ Nezapomeňte restartovat SLC CLI Daemon po kroku 3. ö Každý projekt, který používá ZAP, bude nyní používat cestu definovanou v kroku 3 při generování z SLC CLI. Viz SLC CLI
Použití pro pokyny k použití SLC CLI pro vaše projekty.

Copyright © 2025 Silicon Laboratories. Všechna práva vyhrazena.

35/35

Dokumenty / zdroje

SILICON LABS Vývoj ZAP se Silicon Labs [pdfUživatelská příručka
ZAP vyvíjí se Silicon Labs, ZAP, vyvíjí se Silicon Labs, Silicon Labs, Labs

Reference

Zanechte komentář

Vaše emailová adresa nebude zveřejněna. Povinná pole jsou označena *