Silicon-Labs-LOGO

Pagbuo ng ZAP Gamit ang Silicon Labs

ZAP-Developing-With-Silicon-Labs-PRODUCT

Mga pagtutukoy

  • Pangalan ng Produkto: Silicon Labs ZAP
  • Uri: Code generation engine at user interface
  • Pagkakatugma: Zigbee Cluster Library (Zigbee) o Data Model (Matter)
  • Binuo ni: Connectivity Standards Alliance

Mga Tagubilin sa Paggamit ng Produkto

  • Pagsisimula ng ZAP
    • Upang makapagsimula sa ZAP, sundin ang mga hakbang na ito:
      • I-download ang ZAP Executable mula sa opisyal na repositoryo.
      • I-install ang mga dependency gamit ang npm install command.
      • Para sa pag-install na partikular sa Windows, sumangguni sa gabay sa Pag-install ng ZAP para sa Windows OS.
  • Pag-unlad ng Zigbee
    • Kung gumagawa ka ng mga Zigbee application:
      • Gumamit ng Simplicity Studio na kinabibilangan ng ZAP at iba pang kinakailangang tool.
  • Pag-unlad ng Usapin
    • Kung gumagawa ka ng mga application ng Matter:
      • Kasama sa mga opsyon ang paggamit ng Simplicity Studio o pag-access sa mga repositoryo ng Silicon Labs o CSA Github.
      • Sumangguni sa mga tagubilin sa pag-update para sa ZAP sa labas ng ikot ng paglabas ng Simplicity Studio kung kinakailangan.

Mga FAQ

  • Q: Ano ang iba't ibang bersyon ng ZAP binary na available?
    • A: Mayroong dalawang bersyon na available – Opisyal na release na may mga na-verify na build at pre-release na may mga pinakabagong feature.
  • Q: Ano ang dapat kong gawin kung makatagpo ako ng mga problema sa compilation ng native library habang nag-i-install?
    • A: Sumangguni sa impormasyon ng FAQ tungkol sa mga script na partikular sa platform upang malutas ang mga naturang isyu.

“`

Silicon Labs ZAP
Silicon Labs ZAP

Pagbuo gamit ang Silicon Labs ZAP

Pagsisimula
ZAP Pagsisimulang Muliview FAQ ng ZAP sa Pag-install ng ZAP sa Windows
Mga Pangunahing Pangunahing ZAP
User's Guide ZAP User's Guide Overview Custom XML Custom XML Tags para sa Zigbee Maramihang Mga Uri ng Device Bawat Endpoint Matter Uri ng Device Mga Notification ng Pahina ng Tampok na Data-Model/ZCL na Detalye Pagsunod sa Access Control Paglulunsad ng ZAP para sa Matter o Zigbee na mga application Pagbuo ng code para sa Matter o Zigbee Update ZAP sa Studio Concurrent Multi-protocol sa pagitan ng Zigbee at Matter Isama ang SLC CLI sa ZAP

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

1/35

Pagbuo gamit ang Silicon Labs ZAP
Pagbuo gamit ang Silicon Labs ZAP
ZAP
Ang ZAP ay isang generic na code generation engine at user interface para sa mga application at library batay sa Zigbee Cluster Library mula sa Zigbee o sa Data Model mula sa Matter. Ang detalye ay binuo ng Connectivity Standards Alliance. Binibigyang-daan ka ng ZAP na isagawa ang mga sumusunod na operasyon:
Magsagawa ng customized na henerasyon na partikular sa SDK ng lahat ng mga pandaigdigang artifact (constants, uri, ID, at iba pa) batay sa detalye ng ZCL/Data-Model. Magsagawa ng customized na henerasyon na partikular sa SDK ng lahat ng artifact ng configuration na pinili ng user (configuration ng application, configuration ng endpoint, at iba pa) batay sa detalye ng ZCL/Data-Model at configuration ng application na ibinigay ng customer. Magbigay ng UI para sa end-user upang pumili ng isang partikular na configuration ng application (mga endpoint, cluster, attribute, command, at iba pa).

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

Ang nilalaman sa mga seksyong ito ay naglalarawan kung paano bumuo ng mga Zigbee at Matter application sa pamamagitan ng pag-configure ng ZCL (Zigbee) o Data Model (Matter) Layers gamit ang ZAP.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

2/35

Pagsisimula ng ZAP

Pagsisimula ng ZAP
Pagsisimula sa ZAP
Ang mga seksyong ito ay naglalarawan ng iba't ibang paraan upang lumikha ng Zigbee at Matter application. Tandaan na ang Simplicity Studio ay nagbibigay ng paraan upang gawin ang iyong Zigbee at Matter na mga application mula sa dulo hanggang sa dulo kung saan ang lahat ng tool ay paunang naka-install kasama ng Simplicity Studio (kabilang ang ZAP). Maaari ka ring magpasya na tuklasin ang iba pang mga paraan ng paggawa ng iyong mga application, gaya ng inilarawan dito.
Pag-unlad ng Zigbee
Maaaring buuin ng mga developer ng Zigbee application ang kanilang mga application gamit ang Simplicity Studio, na kinabibilangan na ng ZAP at iba pang tool na makakatulong sa iyong buuin ang iyong application mula sa dulo hanggang sa dulo.
Pag-unlad ng Usapin
Maaaring buuin ng mga developer ng Matter Application ang kanilang mga application gamit ang mga sumusunod na pamamaraan: Simplicity Studio: Kabilang dito ang ZAP at iba pang mga tool na kinakailangan upang buuin ang Matter application nang dulo hanggang dulo. Github (Silicon Labs) Github (CSA)
Tandaan: Upang i-update ang ZAP sa labas ng ikot ng paglabas ng Simplicity Studio, tingnan ang pag-update ng ZAP sa Simplicity Studio at Gabay sa Pag-install ng ZAP

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

3/35

Pag-install ng ZAP

Inilalarawan ng mga sumusunod na seksyon ang pag-install ng ZAP at kung paano i-update ang ZAP sa Simplicity Studio IDE.
Pag-download ng ZAP Executable Recommended)
Ito ang inirerekomendang paraan ng pagsisimula sa ZAP. Makukuha mo ang pinakabagong ZAP binary mula sa aa https://github.com/project-chip/zp/releses. Ang mga prebuilt binary ay may dalawang magkaibang bersyon.
Opisyal na release: Na-verify na mga build na may nakalaang Matter at Zigbee test suite. Ang format ng pangalan ng release ay vYYYY.DD.MM. Pre-release: Bumubuo gamit ang mga pinakabagong feature at pag-aayos ng bug ngunit HINDI na-verify ang mga build na ito gamit ang mga nakalaang Matter at Zigbee test suite. Ang format ng pangalan ng release ay vYYYY.DD.MM-gabi-gabi.
Pag-install ng ZAP mula sa Pinagmulan
Mga pangunahing tagubilin sa Pag-install ng ZAP
Dahil isa itong node.js application, kailangan mong naka-install ang node environment. Ang pinakamahusay na paraan upang gawin ito ay i-download ang pinakabagong pag-install ng node, na kinabibilangan ng node at npm. Kung mayroon kang mas lumang bersyon ng node na naka-install sa iyong workstation, maaari itong magdulot ng mga isyu, lalo na kung ito ay napakaluma. Tiyaking mayroon kang pinakabagong bersyon ng node v16.x kasama ang npm na kasama. Patakbuhin ang node –version upang tingnan kung aling bersyon ang kukunin. Inirerekomenda ang v18.x. Pagkatapos mong magkaroon ng gustong bersyon ng node, maaari mong patakbuhin ang sumusunod:
I-install ang Dependencies
Gamitin ang sumusunod na mga utos upang mag-install ng mga dependency:

ZAP-Developing-With-Silicon-Labs-FIG- (2)
pag-install ng npm
Tandaan: Para sa pag-install ng ZAP na partikular sa Windows, tingnan ang Pag-install ng ZAP para sa Windows OS Karaniwang magkaroon ng mga problema sa compilation ng native na library sa puntong ito. Mayroong iba't ibang src-script/install-* script para sa iba't ibang platform. Tingnan ang impormasyon ng FAQ tungkol sa kung aling script ang tatakbo sa iba't ibang platform at pagkatapos ay muling patakbuhin ang npm install .
Simulan ang Application
Gamitin ang mga sumusunod na command upang simulan ang application:

ZAP-Developing-With-Silicon-Labs-FIG- (3)
npm tumakbo zap
Simulan ang Front-End sa Development Mode
Sinusuportahan ang pag-reload ng hot-code, pag-uulat ng error, at iba pa. Gamitin ang mga sumusunod na command para simulan ang front-end sa development
mode:ZAP-Developing-With-Silicon-Labs-FIG- (4)
quasar dev -m electron
or

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

4/35

ZAP Insta sa o ll in
npm tumakbo electron-dev

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

5/35

Windows sa Pag-install ng ZAP
Windows sa Pag-install ng ZAP
Pag-install ng ZAP para sa Windows OS
1. Windows Powershell
Sa desktop search bar, ipasok ang Windows Powershell at tumakbo bilang administrator. Patakbuhin ang lahat ng sumusunod na command sa loob ng Powershell.
2. Chocolatey
I-install mula sa https://chocolatey.org/install. Suriin kung naka-install nang maayos gamit ang mga sumusunod na command:
choco -v
I-install ang pkgconfiglite package gamit ang mga sumusunod na command:
choco install pkgconfiglite
3. I-install ang Node
Patakbuhin ang sumusunod na mga utos upang mai-install:
choco install nodejs-lts
*Ang bersyon ay dapat na 18 upang pumasa sa pagsusuri ng bersyon ng pagsubok, pagkatapos i-install, suriin gamit ang node -v *Kung na-install mo na ang Node, at nabigo ang ilang mga pagsubok na katulad ng hindi mahanap ang Node , muling i-install ang Node na may chocolatey muli.
4. Sundin ang Mga Pangunahing Tagubilin sa Pag-install ng ZAP
Sundin ang mga tagubilin sa pag-install ng ZAP mula sa pinagmulan sa Pag-install ng ZAP. Habang sinusunod ang mga pangunahing tagubilin para sa pag-install ng ZAP, bantayan ang mga sumusunod na error at kung paano lutasin ang mga ito:
sqlite3
Kapag nagpapatakbo ng ZAP (hal., npm run zap ), kung makakita ka ng error tungkol sa sqlite3.node sa isang pop up window, patakbuhin ang:
npm muling itayo ang sqlite3
tagabuo ng elektron
Kapag gumagawa ng npm install, sa post-install, kung may naganap na error sa sumusunod na command na nauugnay sa electron-builder install-appdeps , npx electron-rebuild canvas failed o node-pre-gyp , ang kasalukuyang bersyon ng canvas ay hindi tugma sa Windows at ang error sa pag-install ay hindi magdudulot ng pagkabigo sa pagpapatakbo ng ZAP. Ang node-canvas ay nagtatrabaho sa solusyon ngayon at ang isyu ay malulutas sa malapit na hinaharap.
“postinstall”: “electron-builder install-app-deps && husky install && npm rebuild canvas –update-binary && npm run version-stamp”

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

6/35

Windows sa Pag-install ng ZAP
Canvas
Kung nabigo ang npm run test dahil sa error Nabigong tumakbo ang Test suite. Hindi mahanap ang module na '../build/Release/canvas.node' o
Ang zapnode_modulescanvasbuildReleasecanvas.node ay hindi wastong Win32 application. , muling buuin ang canvas gaya ng sumusunod:
npm rebuild canvas –update-binary
kumuha ng index.html o Iba Pang Mga Isyu sa Server
Kung nabigo ang npm run test dahil sa error get index.html request failed with status code 404 in unit tests or having server
mga isyu sa koneksyon sa mga pagsubok sa e2e-ci, patakbuhin ang mga sumusunod na command:
npm run build
Iba pa
Suriin kung ang bersyon ng node ay v18 at subukang i-install ito gamit ang Chocolatey.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

7/35

FAQ
FAQ
Mga Madalas Itanong
Q: Paano simulan ang UI sa isang development mode? A: Maaari mong simulan ang UI sa isang development mode, na magreresulta sa isang sumusunod na setup:
Paghiwalayin ang quasar development HTTP server, na live na nagre-refresh sa port 8080 ZAP back end na tumatakbo sa port 9070 Chrome o iba pang browser, na tumatakbo nang hiwalay Upang makarating sa setup na iyon, sundin ang mga tagubilin sa ibaba. ò Una, patakbuhin ang ZAP development server, na magsisimula sa port 9070.
npm run zap-devserver ó Susunod, patakbuhin ang quasar development server, na magsisimula sa port 8080.
quasar dev ô Ituro ang iyong browser o patakbuhin ang isa laban sa nararapat URL kasama ang restPort argument:
google-chrome http://localhost:8080/?restPort=9070

T: Paano ito gagawin sa Mac/Linux OS? A:
Ang npm install ay ginagamit upang i-download ang lahat ng kinakailangang dependency package. Kung makakita ka ng mga error na nauugnay sa node-gyp at nawawalang mga lokal na aklatan, tulad ng pixman , at iba pa, nawawala ang mga native na dependencies upang masiyahan sa pag-compile ng mga non-prebuilt node binary para sa ilang kumbinasyon ng mga platform at bersyon. Patuloy na ina-update ng Npm sa cloud ang listahan ng mga ibinigay na binary, kaya posible na kunin mo ang mga ito nang maayos, ngunit kung hindi mo gagawin, ito ay mga tagubilin para sa iba't ibang mga platform:
Fedora Core na may dnf :
dnf install pixman-devel cairo-devel pango-devel libjpeg-devel giflib-devel
o patakbuhin ang script:
src-script/install-packages-fedora
Ubuntu na may apt-get :
apt-get update apt-get install –fix-missing libpixman-1-dev libcairo-dev libsdl-pango-dev libjpeg-dev libgif-dev
o patakbuhin ang script:

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

8/35

FAQ
src-script/install-packages-ubuntu
OSX sa isang Mac na may Homebrew brew :
brew install pkg-config cairo pango libpng jpeg giflib librsvg
o patakbuhin ang script:
src-script/install-packages-osx
T: Paano ito gagawin sa Windows OS?
A: Siguraduhin na ito ay palaging napapanahon at walang mga pagbabago na hindi pa nagagawa. Tip: git pull, git status at git stash ang iyong mga kaibigan. Dapat mong gamitin ang Chocolately para gumana ang Zap sa Windows OS. Siguraduhing i-download ang pkgconfiglite package.
choco install pkgconfiglite
Kung mayroon kang mga isyu sa cairo, halimbawaample kung nakakuha ka ng error tungkol sa cairo.h': Hindi ganoon file o direktoryo, gawin ang sumusunod: ò Suriin kung ang iyong computer ay 32 o 64 bit. ó Depende doon, i-download ang naaangkop na package mula sa site na ito
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:
Mag-click sa Advanced na Mga Setting ng System. Sa advanced na tab mag-click sa Environment Variables. Sa seksyong System Variables, hanapin ang PATH environment variable at piliin ito. I-click ang I-edit at idagdag ang C:/GTK dito. Kung wala ang PATH environment variable, i-click ang Bago. Kung hindi makita ang jpeglib.h, subukan ang sumusunod: ò Sa terminal, patakbuhin ang: choco install libjpeg-turbo ó Siguraduhing malinis ito sa pamamagitan ng paggamit ng: git clean -dxff at patakbuhin muli ang npm install ô kung walang nangyaring mga error at tanging mga babala lang ang lalabas, subukang gamitin ang npm audit fix õ kung hindi mo kayang patakbuhin ang ZAP, pumunta sa file src-script/zap-start.js ö Baguhin
÷ const { spawn } = require('cross-spawn') to const { spawn } = require('child_process') ø Patakbuhin ang npm at patakbuhin ang zap. Mga sanggunian:
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)
T: Nakatanggap ako ng error na "sqlite3_node" na hindi nakita o katulad.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

9/35

FAQ
A: Muling buuin ang iyong katutubong sqlite3 bindings. Upang ayusin ito sa karamihan ng mga kaso, patakbuhin ang:
pag-install ng npm
./node_modules/.bin/electron-rebuild -w sqlite3 -p
Kung hindi pa rin ito maayos, gawin:
rm -rf node_modules at pagkatapos ay subukang muli ang mga utos sa itaas. Paminsan-minsan, ang pag-upgrade ng iyong npm ay nagdudulot din ng pagkakaiba:
npm install -g npm
T: Nakatanggap ako ng error "Ang bersyon ng N-API ng instance ng Node na ito ay 1. Sinusuportahan ng module na ito ang (mga) bersyon ng N-API 3. Hindi maaaring patakbuhin ng instance na Node na ito ang module na ito."
A: I-upgrade ang iyong bersyon ng node. Ang solusyon para dito ay tinalakay sa Stack Overflow thread na ito: https://stackoverflow.com/questions/60620327/the-n-apiversion-of-this-node-instance-is-1-this-module-supports-n-api-version
T: Ang aking development PC ay hindi gumagana sa ZAP sa anumang dahilan. Maaari ba akong gumamit ng isang docker container?
A: Oo kaya mo. TBD.
Q: Paano ko tatakbo ang ZAP sa loob ng VSCode?
A: Kung VSCode ka sa iyong landas ilagay ang zap repo at i-type ang code . Bubuksan nito ang ZAP sa VSCode. Upang patakbuhin ang ZAP sa debug mode, piliin ang ZAP workspace at mag-click sa icon ng Run sa kaliwang toolbar. Magkakaroon ka ng ilang opsyong mapagpipilian upang patakbuhin ang ZAP, piliin ang Node.js Debug Terminal . Magbubukas ito ng terminal window kung saan maaari kang magpasok ng npm run zap , na makakabit sa debugger at magpapatakbo ng ZAP gaya ng karaniwan mong gagawin mula sa command line. Binabati kita, dapat mo na ngayong makita ang ZAP na tumatakbo sa debugger. Maaari kang magtakda ng mga breakpoint sa VSCode tulad ng gagawin mo sa anumang iba pang IDE.
T: Nabigo ang UI unit test na may ilang mga error sa paligid ng canvas na hindi binuo para sa tamang bersyon ng node. Anong gagawin ko?
A: Kung nakikita mo ang sumusunod na error:ZAP-Developing-With-Silicon-Labs-FIG- (5)
FAIL test/ui.test.js Test suite bigong tumakbo Ang module na 'canvas.node' ay na-compile laban sa ibang bersyon ng Node.js gamit ang NODE_MODULE_VERSION 80. Ang bersyon na ito ng Node.js ay nangangailangan ng NODE_MODULE_VERSION 72. Pakisubukang muling i-compile o muling i-install ang module (halimbawa, `n`reinstall` gamit ang `n`pmnpm).
sa Object. (node_modules/canvas/lib/bindings.js:3 18)
pagkatapos ay tumakbo: npm rebuild canvas –update-binary

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

10/35

ZAP Fundamentals

ZCL/Data-Model ZAP Fundamentals
Ang seksyong ito ay naglalaman ng impormasyon para sa mga bagong gumagamit ng ZAP. Mag-click sa icon ng tutorial sa kanang sulok sa itaas ng ZAP UI, na nagpapakita kung paano gumawa ng configuration ng ZAP. Gagabayan ka ng tutorial sa mga sumusunod: Gumawa ng endpoint Pumili ng uri ng device Mag-configure ng cluster Mag-configure ng attribute Mag-configure ng command Para sa detalyadong sanggunian, tingnan ang Zigbee Cluster Configurator Guide

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

11/35

Gabay sa Gumagamit ng ZAP
Gabay sa Gumagamit ng ZAP
Gabay sa Gumagamit ng ZAP
Ang mga seksyon sa ilalim ng gabay na ito ay nagbibigay ng higit pang mga detalye tungkol sa iba't ibang feature na ibinigay ng ZAP.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

12/35

Custom na XML

Pagdaragdag ng Custom XML mula sa ZAP UI
Mag-click sa icon na "Mga Extension" sa ZAP UI. Mag-click sa "+" add button para pumili ng custom na xml file Ang mga custom na cluster, attribute, command, atbp ay dapat na lumabas sa ZAP UI kapag naidagdag na ang custom na xml.
Paglikha ng sarili mong custom na XML sa Zigbee
Ipinapakita ng seksyon kung paano gumawa ng sarili mong mga custom na cluster at palawigin ang mga kasalukuyang karaniwang cluster na may mga custom na attribute at command para sa Zigbee.
Mga Cluster na Partikular sa Manufacturer sa Zigbee
Maaari kang magdagdag ng mga cluster na partikular sa manufacturer sa isang karaniwang profile. Nagbibigay kami ng isang exampito sa ibaba. Upang magawa ito, dapat mong tuparin ang dalawang obligasyon:
DAPAT nasa hanay na partikular sa manufacturer ang cluster ID, 0xfc00 – 0xffff. Ang kahulugan ng cluster ay dapat na may kasamang code ng manufacturer na ilalapat sa LAHAT ng attribute at command sa loob ng cluster na iyon at dapat ibigay kapag nagpapadala at tumatanggap ng mga command at nakikipag-ugnayan sa mga attribute. Halample:

ZAP-Developing-With-Silicon-Labs-FIG- (6)
Sample Mfg Specific Cluster Heneral Nagbibigay ang cluster na ito ng examptungkol sa kung paano mapalawak ang Application Framework upang maisama ang mga cluster na partikular sa manufacturer.
0xFC00
ember sample attribute
ember sampang katangian 2


Isang sample utos na partikular sa tagagawa sa loob ng samptukoy sa tagagawa
kumpol.


Mga Utos na Partikular sa Manufacturer sa Standard Zigbee Cluster
Maaari kang magdagdag ng sarili mong mga command sa anumang karaniwang Zigbee cluster na may mga sumusunod na kinakailangan:
Ang iyong mga command na partikular sa manufacturer ay maaaring gumamit ng anumang command id sa loob ng command id range, 0x00 – 0xff. Dapat ka ring magbigay ng code ng tagagawa para sa utos upang ito ay makilala sa iba pang mga utos sa cluster at mapangasiwaan nang naaangkop. Halample ng pagpapalawak ng On/Off cluster na may mga manufacturing command:

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

13/35

Custom na XML
<command source=”client” code=”0 0006″ name=”SampleMfgSpecificOffWithTransition” opsyonal=”true” manufacturerCode="0 1002″> Utos ng kliyente na nag-o-off sa device sa pamamagitan ng paglipat na ibinigay ng oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.ampleMfgSpecificOnWithTransition” opsyonal=”true” manufacturerCode=”0 1002″> Utos ng kliyente na nag-o-on sa device gamit ang isang paglipat na ibinigay ng oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.ampleMfgSpecificToggleWithTransition” optional=”true” manufacturerCode="0 1002″> Ang utos ng kliyente na nagpapalipat-lipat sa device gamit ang isang paglipat na ibinigay ng oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.ampleMfgSpecificOnWithTransition2″ opsyonal=”true” manufacturerCode=”0 1049″> Utos ng kliyente na nag-o-on sa device gamit ang isang paglipat na ibinigay ng oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.ampleMfgSpecificToggleWithTransition2″ opsyonal=”totoo”
manufacturerCode="0 1049″> Ang utos ng kliyente na nagpapalipat-lipat sa device gamit ang isang paglipat na ibinigay ng oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.

Mga Katangian na Partikular sa Manufacturer sa Standard Zigbee Cluster
Maaari kang magdagdag ng iyong sariling mga katangian sa anumang karaniwang Zigbee cluster na may mga sumusunod na kinakailangan:
Maaaring gumamit ang iyong mga attribute na partikular sa manufacturer ng anumang attribute id sa loob ng attribute id range, 0x0000 – 0xffff. Dapat ka ring magbigay ng code ng manufacturer para sa attribute para makilala ito sa iba pang attribute sa cluster at mapangasiwaan nang naaangkop. Halample ng pagpapalawak ng On/Off cluster na may mga katangian ng pagmamanupaktura:
<attribute side=”server” code=”0 0006″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME” type=”INT16U” min=”0 0000″
max=”0xFFFF” writable=”true” default=”0 0000″ optional=”true” manufacturerCode="0 1002″>Sample Mfg Specific Attribute: 0 0000 0 1002
<attribute side=”server” code=”0 0000″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_2″ type=”INT8U” min=”0 0000″ max=”0xFFFF” writeable=”true” default=”0 0000″ optional=”true” manufacturerCode=”0 1049″>Sample Mfg Specific Attribute: 0 0000 0 1049
<attribute side=”server” code=”0 0001″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_3″ type=”INT8U” min=”0 0000″ max=”0xFFFF” writeable=”true” default=”0 00″ optional=”true” manufacturerCode=”0 1002″>Sample Mfg Specific Attribute: 0 0001 0 1002
<attribute side=”server” code=”0 0001″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_4″ type=”INT16U” min=”0 0000″ max=”0xFFFF” writeable=”true” default=”0 0000″ optional=”true” manufacturerCode=”0 1049″>Sample Mfg Specific Attribute: 0 0001 0 1040
Paggawa ng sarili mong custom na XML sa Matter
Ipinapakita ng seksyon kung paano gumawa ng sarili mong mga custom na cluster at i-extend ang mga kasalukuyang karaniwang cluster na may mga custom na attribute at command para sa Matter.
Mga Cluster na Partikular sa Manufacturer sa Matter
Maaari kang magdagdag ng mga cluster na partikular sa manufacturer sa Matter. Nagbibigay kami ng isang exampito sa ibaba.
Ang 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. Lahat ng karapatan ay nakalaan.

14/35

Custom na XML
Sa sumusunod na example, ang kumbinasyon ng vendor ID (Test Manufacturer ID) ng 0xFFF1 at ang cluster ID ng 0xFC20 ay nagreresulta sa isang value of 0xFFF1FC20. The commands and attributes within this cluster will adopt the same Manufacturer ID. Example:
Heneral Sampang MEI 0xFFF1FC20 SAMPLE_MEI_CLUSTER Ang SampAng cluster ng MEI ay nagpapakita ng mga extension ng tagagawa ng cluster FlipFlop
Tugon para sa AddArguments na nagbabalik ng kabuuan. Command na tumatagal ng dalawang uint8 argumento at ibinabalik ang kanilang kabuuan. Simpleng utos nang walang anumang mga parameter at walang tugon.
Mga Katangian na Partikular sa Manufacturer sa Standard Matter Cluster
Maaari kang magdagdag ng mga partikular na katangian ng manufacturer sa anumang karaniwang Matter cluster na may mga sumusunod na kinakailangan:
T aaaa kumpol niya dapat tukuyin ang mga katangiang isinasama -
e xte nd ed > “>
Ang code ng attribute ay isang 32-bit na kumbinasyon ng manufacturer code at ang id para sa attribute. Ang pinaka makabuluhang 16 bits ay ang manufacturer code. Ang hanay para sa mga test manufacturer code ay 0xFFF1 – 0xFFF4. Ang hindi bababa sa makabuluhang 16 bits ay ang attribute ID. Ang hanay para sa mga di-global na katangian ay 0x0000 – 0x4FFF.
Example ng pagpapalawak ng On/Off Matter cluster na may mga katangiang partikular sa paggawa:
<attribute side=”server” code=”0xFFF0006″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_2″ type=”INT8U” min=”0 0000″
max=”0xFFFF” writable=”true” default=”0 0000″ optional=”true”>Sample Mfg Specific Attribute 2AMPLE_MFG_SPECIFIC_TRANSITION_TIME_4″ type=”INT16U” min=”0 0000″
max=”0xFFFF” writable=”true” default=”0 0000″ optional=”true”>Sample Mfg Specific Attribute 4
Mga Utos na Partikular sa Manufacturer sa Standard Matter Clusters
Maaari kang magdagdag ng mga partikular na command ng manufacturer sa anumang karaniwang Matter cluster na may mga sumusunod na kinakailangan:
T aaaa kumpol niya dapat tukuyin ang mga utos na itinatakda –
e xte nd ed > “>
Ang code ng command ay isang 32-bit na kumbinasyon ng manufacturer code at ang id para sa command. Ang pinaka makabuluhang 16 bits ay ang manufacturer code. Ang hanay para sa mga test manufacturer code ay 0xFFF1 – 0xFFF4. Ang hindi bababa sa makabuluhang 16 bits ay ang command ID. Ang hanay para sa mga di-global na command ay 0x0000 – 0x00FF.
Example ng pagpapalawak ng On/Off Matter cluster na may mga cluster na partikular sa paggawa:

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

15/35

Custom na XML

<command source=”client” code=”0xFFF10000″ name=”SampleMfgSpecificOnWithTransition2″ opsyonal=”true”> Utos ng kliyente na nag-o-on sa device gamit ang isang paglipat na ibinigay ng oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.
<command source=”client” code=”0xFFF10001″ name=”SampleMfgSpecificToggleWithTransition2″ opsyonal=”true”>
Ang utos ng kliyente na nagpapalipat-lipat sa device gamit ang isang paglipat na ibinigay ng oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

16/35

Custom na XML Tags para sa Zigbee

Ang sumusunod na dokumento ay nagsasalita tungkol sa bawat isa sa xml tags nauugnay sa Zigbee.
Ang bawat xml file ay nakalista sa pagitan ng configurator tags:

Maaaring tukuyin ang mga uri ng data sa loob ng configurator tag. Kasalukuyang sinusuportahan ng Zigbee ang kahulugan ng mga bitmap, enum, integer, string o struct. Bago tumukoy ng higit pang mga uri, tiyaking suriin ang lahat ng umiiral na mga uri ng atomic na tinukoy sa mga uri.xml at lahat ng mga uri na hindi atomiko na tinukoy sa iba pang xml files. Maaari mong tukuyin ang mga ito tulad ng sumusunod:
Bitmap: pangalan: pangalan ng uri ng bitmap. uri: Maaaring tukuyin ang bitmap na may sukat sa pagitan ng 8-64 bits, lahat ng ito ay dapat na multiple ng 8. Ang bawat bitmap ay maaaring magkaroon ng maraming field na may pangalan at mask na nauugnay dito. hal:

“`
Enum: pangalan: pangalan ng uri ng enum. uri: Maaaring tukuyin ang Enum na may sukat sa pagitan ng 8-64 bits, lahat ng ito ay dapat na multiple ng 8. Ang bawat enum ay maaaring magkaroon ng maraming item na may pangalan at isang halaga na nauugnay dito. hal:

Integer: Ang mga uri ng integer ay tinukoy na sa ilalim ng mga uri ng atom na umiiral sa mga uri.xml. Ang kanilang laki ay maaaring mula sa 8-64 bits at maaaring pirmahan o hindi pirmahan. hal:

String: Ang mga uri ng string ay tinukoy na sa ilalim ng mga atomic na uri na umiiral sa mga uri.xml. Kasama sa mga kasalukuyang uri ng string ang octet string, char string, long octet string at long char string hal:

Struct: pangalan: pangalan ng uri ng struct. Ang bawat struct ay maaaring magkaroon ng maraming item na may pangalan at uri na nauugnay dito. Ang uri ay maaaring anumang paunang natukoy na mga uri sa ilalim ng mga uri ng data. hal:

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

17/35

Custom na XML Tags para sa Zigbee

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

Maaaring tukuyin ang mga Custom na Cluster sa loob ng configurator tag. pangalan: pangalan ng cluster domain: domain ng cluster. Lalabas ang cluster sa ZAP UI sa ilalim ng domain na ito. paglalarawan: Descirption ng cluster code: cluster code define: cluster define na ginagamit ng code generator para tukuyin ang cluster sa isang tiyak na paraan manufacturerCode: Ginagamit para tukuyin ang isang manufacturing specific cluster. Ito ay dapat nasa pagitan ng 0xfc00 – 0xffff. Ang code ng tagagawa para sa cluster ay kailangang tukuyin tulad ng sumusunod:

Awtomatikong ginagawa ng manufacturing cluster ang mga attribute at command sa ilalim nito ng parehong code ng manufacturer maliban kung tahasan nilang inilista ang manufacturer code. introducedIn: Ginagamit upang matukoy ang spec version kung saan ipinakilala ang cluster. Ito ay ginagamit ng code generator upang magdagdag ng karagdagang lohika. RemoveIn: Ginagamit upang matukoy ang spec version kung saan inalis ang cluster. Ito ay ginagamit ng code generator upang magdagdag ng karagdagang lohika. singleton(boolean): Ginagamit upang matukoy ang isang cluster bilang isang singleton na mayroon lamang isang instance ng cluster na iyon na nakabahagi sa mga endpoint. attribute: tumutukoy ng attribute para sa cluster name: Nabanggit ang pangalan ng attribute sa pagitan ng attribute tag.
pangalan ng katangian
side(client/server): Ang gilid ng cluster kung saan nauugnay din ang attribute. code: attribute code manufacturer code: Magagamit ito para tukuyin ang isang partikular na katangian ng manufacturer sa labas ng zigbee specification na binanggit ng karaniwang xml. tukuyin: tukuyin ang katangian kung alin ang ginagamit ng generator ng code upang tukuyin ang isang katangian sa isang tiyak na paraan uri: ang uri ng katangian na maaaring alinman sa mga uri ng data na binanggit sa xml default: default na halaga para sa katangian. min: Minimum na pinahihintulutang value para sa isang attribute max: Maximum na pinahihintulutang value para sa isang attribute na maisusulat: Ang attribute ba ay naisusulat o hindi. Magagamit ito para maiwasang mabago ang attribute sa pamamagitan ng write commands. opsyonal(boolean): Ginagamit upang matukoy kung ang isang katangian ay opsyonal o hindi para sa cluster. min: Minimum na pinahihintulutang halaga para sa isang katangian kapag ito ay isang uri ng integer, enum o bitmap. max: Maximum na pinapayagang halaga para sa attribute kapag ito ay isang integer, enum o bitmap type length: Ginagamit upang tukuyin ang maximum na haba ng attribute kapag ito ay uri ng string. minLength: Ginagamit upang tukuyin ang pinakamababang haba ng katangian kapag ito ay uri ng string. reportable(boolean): Sinasabi kung ang isang attribute ay reportable o hindi isNullable(boolean): Nagbibigay-daan sa mga null value para sa attribute. array(boolean): Ginagamit para magdeklara ng attribute ng type array. introducedIn: Ginagamit upang matukoy ang spec version kung saan ipinakilala ang attribute. Ito ay ginagamit ng code generator upang magdagdag ng karagdagang lohika. RemoveIn: Ginagamit upang matukoy ang spec version kung saan inalis ang attribute. Ito ay ginagamit ng code generator upang magdagdag ng karagdagang lohika. command: tukuyin ang isang command para sa isang cluster name: Pangalan ng command.

code: command code

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

18/35

Custom na XML Tags para sa Zigbee
code ng tagagawa: Magagamit ito upang tukuyin ang isang partikular na command ng tagagawa sa labas ng detalye ng zigbee na binanggit ng karaniwang xml. paglalarawan: paglalarawan ng pinagmulan ng utos (kliyente/server): pinagmulan ng utos. opsyonal(boolean): Ginagamit upang matukoy kung ang isang command ay opsyonal o hindi para sa cluster. introducedIn: Ginagamit upang matukoy ang spec version kung saan ipinakilala ang command. Ito ay ginagamit ng code generator upang magdagdag ng karagdagang lohika. RemoveIn: Ginagamit upang matukoy ang spec version kung saan inalis ang command. Ito ay ginagamit ng code generator upang magdagdag ng karagdagang lohika. mga argumento ng utos:
Ang bawat command ay maaaring magkaroon ng set ng command arguments name: pangalan ng command argument type: uri ng command argument na maaaring alinman sa mga uri na binanggit sa xml. min: Minimum na pinapayagang halaga para sa isang argumento kapag ito ay isang uri ng integer, enum o bitmap. max: Maximum na pinapayagang halaga para sa isang argument kapag ito ay isang integer, enum o bitmap type na haba: Ginagamit upang tukuyin ang maximum na pinapayagang haba para sa isang command argument kapag ito ay uri ng string. minLength: Ginagamit upang tukuyin ang pinakamababang pinapayagang haba para sa isang command argument kapag ito ay uri ng string. array(boolean): Upang matukoy kung ang command argument ay uri ng array. presentIf(string): Ito ay maaaring isang kondisyon na string ng mga lohikal na operasyon batay sa iba pang mga argumento ng command kung saan maaari mong asahan ang command argument kung ang conditional string ay mag-evaluate sa true. hal:

Tandaan: Narito ang status ay isa pang pangalan ng argumento ng command. opsyonal(boolean): Ginagamit upang matukoy ang command argument bilang opsyonal. countArg: Ginagamit kapag ang command argument ay nasa uri ng array. Ito ay ginagamit upang banggitin ang iba pang argumento ng command na nagsasaad ng laki ng array para sa argumentong ito.

introducedIn: Ginamit upang matukoy ang spec version kung saan ipinakilala ang command argument. Ito ay ginagamit ng code generator upang magdagdag ng karagdagang lohika. removedIn: Ginamit upang matukoy ang spec version kung saan inalis ang command argument. Ito ay ginagamit ng code generator upang magdagdag ng karagdagang lohika. Maaaring tukuyin ang Cluster Extension sa loob ng configurator tag. Ginagamit ang extension ng cluster para i-extend ang isang karaniwang cluster na may mga attribute at command sa pagmamanupaktura hal

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

19/35

Custom na XML Tags para sa Zigbee
<attribute side=”server” code=”0 0006″ define=”SAMPLE_MFG_SPECIFIC_TRANSITION_TIME” type=”INT16U” min=”0 0000″ max=”0xFFFF”writable=”true” default=”0 0000″ optional=”true” manufacturerCode=”0 1002″>Sample Mfg Specific Attribute: 0 0000 0 1002AMPLE_MFG_SPECIFIC_TRANSITION_TIME_2″ type=”INT8U” min=”0 0000″ max=”0xFFFF” writeable=”true” default=”0 0000″ optional=”true” manufacturerCode=”0 1049″>Sample Mfg Specific Attribute: 0 0000 0 1049AMPLE_MFG_SPECIFIC_TRANSITION_TIME_3″ type=”INT8U” min=”0 0000″ max=”0xFFFF” writeable=”true” default=”0 00″ optional=”true” manufacturerCode=”0 1002″>Sample Mfg Specific Attribute: 0 0001 0 1002AMPLE_MFG_SPECIFIC_TRANSITION_TIME_4″ type=”INT16U” min=”0 0000″ max=”0xFFFF” writeable=”true” default=”0 0000″ optional=”true” manufacturerCode=”0 1049″>Sample Mfg Specific Attribute: 0 0001 0 1040ampleMfgSpecificOffWithTransition” opsyonal=”true” manufacturerCode="0 1002″> Utos ng kliyente na nag-o-off sa device na may ibinigay na transition
sa oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.ampleMfgSpecificOnWithTransition” opsyonal=”true” manufacturerCode=”0 1002″> Utos ng kliyente na nag-o-on sa device na may ibinigay na transition
sa oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.ampleMfgSpecificToggleWithTransition” opsyonal=”true” manufacturerCode="0 1002″> Utos ng kliyente na nagpapalipat-lipat sa device na may ibinigay na transition
sa oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.ampleMfgSpecificOnWithTransition2″ opsyonal=”true” manufacturerCode=”0 1049″> Utos ng kliyente na nag-o-on sa device na may ibinigay na transition
sa oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.ampleMfgSpecificToggleWithTransition2″ opsyonal=”true” manufacturerCode=”0 1049″> Utos ng kliyente na nagpapalipat-lipat sa device na may ibinigay na transition
sa oras ng paglipat sa Ember Sampang katangian ng oras ng paglipat.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

20/35

Maramihang Uri ng Device Bawat Endpoint

Isa itong Matter-only na feature kung saan makakapili ang user ng higit sa isang uri ng device bawat endpoint. Ang pagdaragdag ng maraming uri ng aaa device ay magdadagdag sa mga configuration ng cluster sa loob ng mga uri ng device sa endpoint na configuration.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

21/35

Maramihang Uri ng Device Bawat Endpoint

Ipinapakita ng larawan sa itaas na ang endpoint 1 ay may higit sa isang uri ng device na napili. Ang "Pangunahing Device" ay tumutukoy sa pangunahing uri ng device kung saan iuugnay ang endpoint. Ang pangunahing uri ng device ay palaging nasa index 0 ng listahan ng mga uri ng device na napili kaya ang pagpili ng ibang pangunahing uri ng device ay magbabago sa pagkakasunud-sunod ng mga uri ng device na napili. Ang mga pagpipilian sa uri ng device ay mayroon ding mga hadlang batay sa Detalye ng Modelo ng Data. Pinoprotektahan ng ZAP ang mga user mula sa pagpili ng mga di-wastong kumbinasyon ng mga uri ng device sa isang endpoint gamit ang mga hadlang na ito.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

22/35

Page ng Tampok na Uri ng Device ng Matter
Page ng Tampok na Uri ng Device ng Matter
Page ng Tampok na Uri ng Device ng Matter
Sinusuportahan ng ZAP ang pag-visualize at pag-togg sa mga feature ng Matter sa page ng feature na uri ng device. Tanging ang mga feature ng uri ng device na tinukoy sa matter-devices.xml sa CHIP repository ang ipapakita.

Pag-navigate sa Pahina ng Tampok
ò Ilunsad ang ZAP sa Matter gamit ang up-to-date na Matter SDK. ó Gumawa ng endpoint gamit ang uri ng Matter device. ô I-click ang button na Mga Feature ng Uri ng Device sa itaas na gitna ng cluster view. Tandaan na ang button na ito ay available lamang sa ZAP
mga configuration para sa Matter at kapag mayroong data ng conformance sa Matter SDK. Ang pag-click sa button na ito ay magbubukas sa larawan sa itaas.
Pagsunod
Tinutukoy ng Conformance ang opsyonal at dependency para sa mga attribute, command, event, at uri ng data. Tinutukoy nito kung mandatory, opsyonal, o hindi sinusuportahan ang isang elemento sa ilalim ng ilang partikular na configuration ng ZAP.
Ang pagsang-ayon ng feature ng uri ng device ay nangunguna kaysa sa pagsang-ayon ng feature ng cluster. Para kay exampSa gayon, ang feature na Pag-iilaw ay may opsyonal na pagsang-ayon sa On/Off cluster ngunit idineklara bilang mandatory sa On/Off Light device na uri na kinabibilangan ng On/Off cluster. Ang paggawa ng endpoint gamit ang uri ng On/Off Light device ay magpapakita ng feature na Pag-iilaw bilang mandatory sa page ng feature.
Pag-toggling ng Tampok
Sa page ng feature, pagkatapos mong i-click ang toggle button para paganahin o huwag paganahin ang isang feature, ang ZAP ay:
I-update ang mga nauugnay na elemento (mga katangian, utos, kaganapan) para iwasto ang pagsunod, at magpakita ng dialogue na nagpapakita ng mga pagbabago.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

23/35

Matter Device Type Feature Page I-update ang feature bit sa featureMap attribute ng nauugnay na cluster

Paganahin ang Feature Dialogue

Huwag paganahin ang Feature Dialogue

Ang pag-toggling ay hindi pinagana para sa ilang mga tampok kapag ang kanilang pagkakatugma ay may hindi alam na halaga o isang kasalukuyang hindi suportadong form t. Sa ac se na ito, magpapakita ang ZAP ng mga babala sa notification ap ne.
a Wa Element Conform nce rnings

Kapag nag-toggle ka ng isang elemento, maaaring ipakita ng ZAP ang parehong mga babala sa pagsunod sa device at mga babala sa pagsunod. Kung ang estado ng elemento ay hindi tumutugma sa inaasahang pagsunod, magpapakita ang ZAP ng icon ng babala at itatala ang babala sa notification ap ne. Halample ng parehong mga babala sa pagsunod at pagsunod na ipinapakita para sa isang elemento:

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

24/35

Mga abiso
Mga abiso
Mga abiso
Tinutukoy ng sumusunod na seksyon kung paano ibinibigay ang mga notification sa mga user ng ZAP sa UI.
Mga Notification ng Package
Ang mga notification sa package ay ang mga babala o mensahe ng error na nauugnay para sa anumang partikular na package na na-load sa ZAP. Para kay exampSa mga larawan sa ibaba, ang pag-click sa icon ng babala sa ilalim ng column ng status ay magdadala sa iyo sa isang dialog na nagpapakita ng lahat ng notification para sa package na iyon.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

25/35

Mga abiso
Mga Notification ng Session
Ang mga notification sa session ay ang mga babala o mensahe ng error na nauugnay sa isang session ng user. Ang mga babala/error na ito ay makikita sa pamamagitan ng pag-click sa Notifications button sa toolbar sa itaas ng ZAP UI. Para kay exampSa gayon, ipinapakita ng larawan sa ibaba ang pahina ng mga notification sa session pagkatapos ng isang isc file ay na-load sa ZAP.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

26/35

Pagsunod ng Data-Model/ZCL Specification
Pagsunod ng Data-Model/ZCL Specification
Modelo ng Data at Pagsunod sa Detalye ng ZCL
Ang feature na ito sa ZAP ay tumutulong sa mga user na makita ang mga pagkabigo sa pagsunod para sa Modelo ng Data o ZCL sa kanilang mga kasalukuyang configuration ng ZAP. Ang mga mensahe ng babala para sa mga pagkabigo sa pagsunod ay lalabas sa pane ng Mga Notification sa ZAP UI at ila-log din sa console kapag pinapatakbo ang ZAP sa pamamagitan ng CLI. Ang feature ng pagsunod ay kasalukuyang nagbibigay ng mga babala para sa pagsunod sa uri ng device at cluster compliance sa isang endpoint.
Mga Babala sa Pagsunod sa ZAP UI
Kapag nagbukas ang isang user ng .zap file gamit ang ZAP UI makakakita sila ng mga babala sa pane ng mga notification ng ZAP UI para sa lahat ng pagkabigo sa pagsunod. Para kay exampOo, ipinapakita ng larawan sa ibaba ang page ng mga notification sa session pagkatapos ng .zap file ay binuksan sa mga isyu sa pagsunod.

Mawawala ang mga mensahe sa pagsunod kapag nalutas na ang mga isyu gamit ang ZAP UI upang masubaybayan mo lang ang mga natitirang isyu sa pagsunod. Lalabas din ang mga bagong babala para sa pagsunod kung idi-disable ng user ang mga mandatoryong elemento(cluster/commands/attributes) ng configuration. Palaging susubaybayan ng mga notification sa pagsunod sa detalye ang anumang mga pagkabigo na ipinakilala sa configuration ng ZAP ngunit tandaan na ang mga babala na lumalabas sa panahon ng pagbubukas ng isang .zap file ay mas detalyado kung bakit ito nabigo sa pagsunod kung ihahambing sa mga babala na lumalabas habang nakikipag-ugnayan sa UI. Ito ay ayon sa disenyo at isang buong pagsusuri sa pagsunod ay isinasagawa sa panahon ng pagbubukas ng isang .zap file.
Mga Babala sa Pagsunod sa Console

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

27/35

Pagsunod ng Data-Model/ZCL Specification
Kapag nagbukas ang isang user ng .zap file gamit ang ZAP standalone UI o ang ZAP CLI makakakita sila ng mga babala na naka-log in sa console/terminal para sa lahat ng mga pagkabigo sa pagsunod. Para kay exampOo, ipinapakita ng larawan sa ibaba ang mga babala sa notification ng session sa console/terminal pagkatapos ng isang .zap file ay binuksan sa mga isyu sa pagsunod.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

28/35

Access Control

Mga Tampok ng Access Control
Sinusuportahan ng ZAP ang access control sa lahat ng ZCL entity. Ito ay nakasalalay sa pagpapatupad ng SDK upang imapa ang mga feature na ito sa kinakailangan at sinusuportahang access control na mga feature ng SDK. Ang ZAP sa pangkalahatan ay nagbibigay ng modelo ng data at isang mekanismo para i-encode ito sa meta-info files at ipalaganap ang data na iyon sa mga template ng henerasyon, nang hindi nagtatalaga ng mga partikular na kahulugan sa mga punto ng data.
Batayang Tuntunin
Ang ZAP access control ay tumutukoy sa tatlong pangunahing termino, tulad ng sumusunod: ò operation : tinukoy bilang isang bagay na maaaring gawin. Halample: magbasa, magsulat, tumawag. ó papel: tinukoy bilang isang pribilehiyo ng isang aktor. Tulad ng "View pribilehiyo", "Pangasiwa ng tungkulin", at anak sa. mga modifier ng ô: tinukoy bilang mga espesyal na kundisyon ng kontrol sa pag-access, gaya ng data na sensitibo sa tela o data na sakop ng tela. Ang mga batayang termino ay tinukoy sa metadata XML sa ilalim ng isang tuktok tag . Ang sumusunod ay isang example ng access control base na mga kahulugan ng termino:
<role type=”view” paglalarawan =”View pribilehiyo”/>
Itong exampTinutukoy ni le ang tatlong operasyon, basahin, isulat at i-invoke, dalawang modifier at apat na tungkulin.
I-access ang Triplets
Ang bawat indibidwal na kondisyon ng pag-access ay maaaring tukuyin gamit ang isang triplet ng access sa XML. Ang access triplet ay isang kumbinasyon ng isang operasyon, tungkulin at modifier. Opsyonal ang mga ito, kaya maaari ka lang magkaroon ng isa sa mga ito. Ang nawawalang bahagi ng triplet ay karaniwang nangangahulugan ng mga permissive, na partikular sa pagpapatupad para sa ibinigay na SDK. Ang isang entity na tumutukoy sa pag-access nito ay maaaring magkaroon ng isa o higit pang triplet ng access. Ang sumusunod ay isang example:
sa0
Ito ay isang kahulugan ng isang attribute na may access triplet, na nagdedeklarang nagbibigay-daan ito sa pagpapatakbo ng pagsulat sa pamamagitan ng isang tungkuling pamahalaan, na may inilapat na fabric-scoped modifier.
Mga Default na Pahintulot

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

29/35

Access Control
Maaaring tukuyin ng mga entity ng ZCL ang kanilang sariling mga indibidwal na pahintulot. Gayunpaman, mayroon ding pandaigdigang kahulugan ng mga default na pahintulot para sa
ibinigay na mga uri. Ipinapalagay ang mga ito para sa ibinigay na entity, maliban kung nagbibigay ito ng anumang partikular na pahintulot ng sarili nitong.
Ang mga default na pahintulot ay ipinahayag sa pamamagitan ng a tag sa pinakamataas na antas ng XML file. Halample:
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
Mga Tulong sa Template
Ang pangunahing template helper na gagamitin ay ang {{#access}} … {{/access}} iterator. Ang iterator na ito ay umuulit sa lahat ng ibinigay na triplet ng access.
Sinusuportahan nito ang sumusunod na dalawang pagpipilian:
entity=”attribute/command/event” – kung hindi matukoy ang entity mula sa konteksto, itatakda nito ang uri ng entity. includeDefault=”true/false” – tinutukoy kung ang mga default na value ay kasama o hindi. Ang sumusunod ay isang example:
{{#zcl_clusters}}
isang Cluster: {{n me}} [{{code}}] a {{#zcl_ ttributes}} aa – ttribute: {{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}}] aa {{}} ccess}}] aa {{} *# ccess} p: {{oper tion}} / ole: {{role}} / odifier: {{ ccess odifier}} a{{/ ccess}} a {{/zcl_comm nds}}
{{#zcl_events}}
a – kaganapan: {{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. Lahat ng karapatan ay nakalaan.

30/35

Inilunsad ang ZAP para sa Matter o Zigbee na mga application
Inilunsad ang ZAP para sa Matter o Zigbee na mga application
Paglulunsad ng ZAP para sa Matter o Zigbee Application
Inilalarawan ng mga sumusunod na seksyon ang paglulunsad ng ZAP sa standalone mode gamit ang metadata na partikular sa Matter o Zigbee. Ang ideya ay ilunsad ang ZAP gamit ang mga tamang argumento na nauugnay sa XML metadata (ang mga cluster at mga uri ng mga kahulugan ng device ayon sa mga detalye ng CSA) at ang mga template ng henerasyon, na ginagamit upang bumuo ng naaangkop na code.
Inilunsad ang ZAP sa Matter
Kinukuha ng sumusunod na script ang tamang metadata mula sa Matter SDK kapag inilulunsad ang ZAP. https://github.com/project-chip/connectedhomeip/blob/master/scripts/tools/zap/run_zaptool.sh Tandaan: Maaari mo ring gamitin ang sumusunod na diskarte sa Zigbee upang ilunsad ang ZAP sa Matter.
Inilunsad ang ZAP sa Zigbee
Ang sumusunod na command ay naglulunsad ng ZAP kasama ang mga detalye ng ZCL at mga template ng henerasyon mula sa 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: Ito ang path sa ZAP source o executable sdk-path: Ito ang path sa SDK
Inilunsad ang ZAP nang walang Metadata
Tandaan na kapag direktang naglulunsad ng ZAP sa pamamagitan ng isang executable o mula sa source gamit ang npm run zap inilulunsad mo ang ZAP na may test metadata para sa Matter/Zigbee na naka-built in sa loob ng ZAP at hindi ang aktwal na metadata na nagmumula sa Matter at Zigbee SDK na binanggit sa itaas. Samakatuwid, tandaan na gawin ang iyong mga configuration ng ZAP sa pamamagitan ng paggamit ng SDK metadata at hindi sa pamamagitan ng direktang pagbubukas ng ZAP gamit ang built in na metadata ng pagsubok.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

31/35

Bumubuo ng code para sa Matter o Zigbee

Pagbuo ng Code para sa Matter, Zigbee o Custom SDK
Ang mga sumusunod na seksyon ay naglalarawan kung paano bumuo ng code gamit ang ZAP.
Bumuo ng Code Gamit ang ZAP UI
Ilunsad ang ZAP UI ayon sa mga tagubilin sa Paglulunsad ng ZAP for Matter o Zigbee at mag-click sa button na Bumuo sa tuktok na menu bar.
Bumuo ng Code nang walang UI
Ang mga sumusunod na tagubilin ay nagbibigay ng iba't ibang paraan ng pagbuo ng code sa pamamagitan ng CLI nang hindi inilulunsad ang ZAP UI.
Pagbuo ng Code mula sa ZAP Source
Patakbuhin ang sumusunod na command upang bumuo ng code gamit ang ZAP mula sa pinagmulan: 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
Pagbuo ng Code mula sa ZAP Executable
Patakbuhin ang sumusunod na command upang bumuo ng code gamit ang ZAP executable: [zap-path] generate –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
Pagbuo ng Code mula sa ZAP CLI Executable
Patakbuhin ang sumusunod na command upang bumuo ng code gamit ang ZAP CLI Executable: [zap-cli-path] generate –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. Lahat ng karapatan ay nakalaan.

32/35

I-update ang ZAP sa Studio

I-update ang ZAP
I-update ang ZAP sa Simplicity Studio
Maaaring gamitin ang mekanismong ito kapag nagtatrabaho sa Matter extension o Zigbee mula sa mga release ng Silicon Labs SDK. Maaaring i-update ang ZAP sa loob ng Simplicity Studio nang walang release ng Simplicity Studio sa pamamagitan ng pag-download ng pinakabagong ZAP executable (inirerekomenda) o pagkuha ng pinakabago mula sa ZAP source tulad ng ipinapakita sa ZAP Installation Guide. Pagkatapos mong magkaroon ng pinakabagong ZAP batay sa iyong kasalukuyang ginagamit na OS, maaari mong i-update ang ZAP sa loob ng Studio bilang isang adapter pack. Sundin ang mga tagubilin sa ibaba pagkatapos i-download ang pinakabagong ZAP:
Pumunta sa Simplicity Studio at piliin ang Preferences > Simplicity Studio > Adapter Packs. I-click ang Magdagdag... at mag-browse sa pinalawak na ZAP folder na iyong na-download at i-click ang Piliin ang Folder . I-click ang Ilapat at Isara at pagkatapos ay ang bagong idinagdag na ZAP ay gagamitin sa tuwing may .zap file ay binuksan.
Tandaan: Minsan maaaring may mga mas lumang pagkakataon ng ZAP na tumatakbo na kahit na matapos ang pag-update sa pinakabagong ZAP. Siguraduhing tapusin ang lahat ng umiiral na ZAP instance upang ang bagong kinuhang ZAP ay ginagamit sa halip na isang lumang instance, na gumagana pa rin sa background.
I-update ang ZAP para sa Matter Development sa Github
Kapag nagtatrabaho sa mga repo ng Matter o Matter-Silicon Labs sa Github, itakda ang mga variable ng kapaligiran na may kinalaman sa ZAP upang lumikha/bumuo ng mga bagong configuration ng ZAP o muling bumuo ng mga umiiral na sample ZAP configuration pagkatapos ilapat ang mga pagbabago sa mga ito. Itakda ang ZAP_DEVELOPMENT_PATH sa ZAP mula sa pinagmulan sa pamamagitan ng paghila sa pinakabago o itakda ang ZAP_INSTALLATION_PATH sa ZAP executable na huli mong na-download sa iyong lokal na direktoryo. Tandaan na kapag parehong nakatakda ang ZAP_DEVELOPMENT_PATH at ZAP_INSTALLATION_PATH, ZAP_DEVELOPMENT_PATH ang ginagamit.
Ang mga sumusunod ay examples na nagpapakita sa itaas na mga variable ng kapaligiran na ginagamit:
Paglulunsad ng ZAP gamit ang detalye ng Matter Regenerating all the sample ZAP configuration para sa Matter application
Tandaan: Kapag gumagamit ng mga executable ng ZAP, tiyaking gumagamit ka ng opisyal na release sa gabi-gabing release para sa higit na stability. Tingnan mo
Dina-download ang ZAP Executable sa ZAP Installation Guide

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

33/35

Kasabay na Multi-protocol sa pagitan ng Zigbee at Matter
Kasabay na Multi-protocol sa pagitan ng Zigbee at Matter
MCoanttceurrrent Multi-protocol sa pagitan ng Zigbee at
Maaaring gamitin ang ZAP upang i-configure ang mga configuration ng ZCL (Zigbee) at Data-Model (Matter) sa isang multi-protocol na application para sa Zigbee at Matter. Binibigyang-daan ka ng ZAP na lumikha ng mga endpoint para sa Zigbee at Matter nang tahasan sa parehong configuration file. Kung ang Zigbee at Matter endpoint ay nasa parehong endpoint Identifier (para sa halample, LO Dimmable Light sa endpoint Id 1 at Matter Dimmable Light sa isa pang instance ng endpoint 1), pinangangasiwaan ng ZAP ang pag-sync ng mga karaniwang attribute sa mga attribute ng Matter at Zigbee. Tiyaking ang mga attribute na sini-sync ay may parehong uri ng data. Ang mga karaniwang katangian sa pagitan ng Zigbee at Matter ay itinatag sa pamamagitan ng a file tinatawag na multi-protocol.json . Maaaring i-link ng user ang alinmang dalawang cluster sa Zigbee at Matter kasama ng kanilang mga kaukulang attribute gamit ang cluster at attribute code ayon sa pagkakabanggit. Ito file ay matatagpuan sa [SDKPath]/app/zcl/multi-protocol.json . Ito file ay na-update sa isang tiyak na hanay ng mga kumpol at mga katangian sa simula, ngunit maaaring i-update ito ng user file kung kinakailangan at ang ZAP ang bahala sa pag-sync ng configuration ng attribute sa Zigbee at Matter para sa mga karaniwang endpoint identifier.
Makakahanap ka rin ng ZAP tutorial sa anumang Zigbee at Matter multi-protocol application sa ilalim ng page ng mga tutorial. Gagabayan ka ng tutorial na ito sa proseso ng paglikha ng application na multi-protocol. Available lang ang tutorial na ito kapag nagbukas ka ng umiiral nang multi-protocol na application at makikita tulad ng ipinapakita sa larawan sa ibaba:

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

34/35

Isama ang SLC CLI sa ZAP
Isama ang SLC CLI sa ZAP
Isama ang SLC CLI sa ZAP
Sundin ang mga hakbang na ito upang isama ang SLC CLI sa ZAP: ò I-install ang SLC CLI sa pamamagitan ng pagsunod sa mga tagubilin sa pag-install sa Simplicity Studio 5 User Guide. ó I-install ang ZAP sa pamamagitan ng pagsunod sa mga tagubilin sa Gabay sa Pag-install ng ZAP. ô Para isama ang SLC CLI sa ZAP, magdagdag ng environment variable STUDIO_ADAPTER_PACK_PATH na tumuturo sa ZAP application
direktoryo. õ Tandaang i-restart ang SLC CLI Daemon pagkatapos ng hakbang 3. ö Ang anumang proyekto na gumagamit ng ZAP ay gagamit na ngayon ng path na tinukoy sa hakbang 3 kapag nabuo mula sa SLC CLI. Mangyaring sumangguni sa SLC CLI
Paggamit para sa mga tagubilin sa paggamit ng SLC CLI para sa iyong mga proyekto.

Copyright © 2025 Silicon Laboratories. Lahat ng karapatan ay nakalaan.

35/35

Mga Dokumento / Mga Mapagkukunan

SILICON LABS ZAP Pagbuo Gamit ang Silicon Labs [pdf] Manwal ng May-ari
ZAP Developing With Silicon Labs, ZAP, Developing With Silicon Labs, Silicon Labs, Labs

Mga sanggunian

Mag-iwan ng komento

Ang iyong email address ay hindi maipa-publish. Ang mga kinakailangang field ay minarkahan *