All Projects → project-chip → zap

project-chip / zap

Licence: Apache-2.0 license
ZAP is Zigbee Cluster Library configuration tool and generator. It allows users to configure their ZCL application using web-like interface and then generate the required artifacts for this application, based upon the templates inside a given ZCL SDK.

Programming Languages

ZAP
15 projects
javascript
184084 projects - #8 most used programming language
Vue
7211 projects
typescript
32286 projects
shell
77523 projects
Sass
350 projects

ZCL Advanced Platform

ZCL Advanced Platform

Generation and back-end tests Cypress UI tests Build and release

What is ZAP?

ZAP is a generic generation engine and user interface for applications and libraries based on Zigbee Cluster Library, the specification developed by the Connectivity Standards Alliance.

ZAP allows you to perform the following:

  • perform SDK-specific customized generation of all global artifacts (constants, types, IDs, etc) based on the ZCL specification
  • provide UI for the end-user to select specific application configuration (clusters, attributes, commands, etc.)
  • perform SDK-specific customized generation of all user selected configuration artifacts (application configuration, endpoint configuration, etc) based on ZCL specification and customer-provided application configuration.

ZAP is a generic templating engine. Examples are provided for how to generate artifacts for the C language environment, but one could easily add new templates for other language environments, such as C++, java, node.js, python or any other.

Quick instructions

This is a node.js application, so you need node environment installed. The best way is to simply download latest install of node and you will get node and npm. If you have an older version of node installed on your workstation, it may give you trouble, particularly if it's very old. So make sure you have latest node v16.x version, with the npm that comes with it available. Run node --version to check what version is picked up. v14.x mostly works as well, there is some success with v18.x, but at this point v16.x is recommended.

Once you have a desired version of node, you can run:

npm ci

which will download install all the project dependencies. It is not uncommon to run into native library compilation problems at this point. There are various src-script/install-* scripts for different platforms. Please refer to FAQ for additional details of which script to run on different platforms and then rerun npm ci.

Then run:

npm run zap

Refer to more detailed instructions for more details.

License

This software is licensed under Apache 2.0 license.

Detailed Documentation

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].