ZigBeeForDomoticZ plugin Wiki

Enrolment process

What the plugin does when a new device joins the network. See Add a new device for the user side.

Discovery

  1. The device joins and sends a Device Announcement with its short address (NwkId), IEEE address and capabilities (router or end device, mains or battery powered).
  2. The plugin creates the device in its database and asks the device for its model name (Basic cluster 0x0000, attribute 0x0005) and for its active endpoints (Active Endpoint Request).
  3. For each endpoint, the plugin sends a Simple Descriptor Request, which returns the profile, the device type and the list of clusters of the endpoint.
  4. The plugin also asks for the Node Descriptor (manufacturer code, power and receiver capabilities).

When the model name is found in a device configuration file (certified or local, see Device configuration files), the plugin can skip part of the discovery and use the configuration file directly.

Provisioning and widget creation

Once the plugin knows enough about the device:

  1. It binds the clusters that must report to the coordinator, configures the attribute reporting, and reads the initial attribute values.
  2. It creates the Domoticz widgets:
    • from the device configuration file when the model is known (optimized device);
    • otherwise from the clusters found during the discovery (non-optimized device), following the standard cluster / widget association.

When the enrolment fails

The enrolment can stop when the plugin couldn’t collect enough information to create the widgets:

What to do: