Green Power Commissioning#
Commissioning is the process of adding a GPD to the Zigbee network so it can perform application functionality. This process establishes the GPD in the Proxy Table and in the Sink Table. If there is an infrastructure device (Sink or Combo) that has matching functionality with the GPD, they can be commissioned as a pair and work together.
The GPD sends a series of GP commands to the listening GP infrastructure device (Sink or Combo) which adds it as a commissioned node for further data transactions. In this command exchange, the GPD and the GP infrastructure device agree on the functionality that matches and the security requirements for additional command/data transactions.
There are two types of commissioning process based on the capabilities and design of the GPD:
Unidirectional Commissioning: The GPD only sends the commissioning commands and does not receive any data back from the Zigbee network. In this type of commissioning, the application must predefine the Zigbee network channel and security requirements.
Bidirectional Commissioning: The GPD sends and receives data through a series of commands, called commissioning commands. With bidirectional commissioning, the GPD can find the Zigbee network channel and negotiate the security level key. This process consumes more energy because it includes both transmission and receive steps.
Unidirectional Commissioning#
The following figure illustrates how unidirectional commissioning works.


GP Proxy Commissioning Mode (Enter): The GPP will receive the GP Proxy Commissioning Mode from the GPS and start the GPP Commissioning Window timeout, which is the timeout for the GPP to exit Commissioning mode in case there is no pairing complete or on an exit command from the GPS. In commissioning mode the GPP will only accept GP Proxy Commissioning mode commands from the original GPS.
GP Command (Commissioning): Once the GPS and GPP are in commissioning mode, an action is performed on the Green Power Device (GPD) to send a Commissioning GPDF which will be received by the proxy. The proxy will check if this device is already in the proxy table. If not, an active entry with default values will be created.
Commissioning Notification (Commission): The GPP broadcasts a commissioning notification to the GPS. The GPS checks a functionality match, if security-related fields are supported (Key Type, Security Level, etc.). Once all the checks pass, the GPD capability is stored and the GPS proceeds to finalize commissioning by adding the GPD to the Sink Table and broadcasting a GP Pairing. If it is required, the GPS will assign the GPD an Assigned Alias. You have the option to define the Assigned Alias fo the GPD by using
bool sl_zigbee_af_green_power_server_update_alias_cb(sl_zigbee_gp_address_t \*gpdAddr, uint16_t \*alias): This function is called by the Green Power Server plugin during commissioning to updated the alias information from the user.
Once commissioning is finalized the GPS may send a GP Proxy Commissioning Mode Command (Exit) to have the GPP exit commissioning mode, or just wait for the GPP Commissioning Window timeout.
Bidirectional Commissioning#
The following figure illustrates how bidirectional commissioning works.


Upon the expiry of any commissioning timer, such as the server commissioning window expiry, generic switch commissioning or multi-sensor commissioning timer, the Green Power Server plugin will call:
void sl_zigbee_af_green_power_server_commissioning_timeout_cb(uint8_t commissioningTimeoutType,
uint8_t numberOfEndpoints,
uint8_t * endpoints)During commissioning if you need to check the pairing status of a commissioning gpd you can use :
void sl_zigbee_af_green_power_server_pairing_status_cb(EmberSinkPairingStatus status,
EmberCommissioningGpd *commissioningGpd))This callback can be monitored to get information in case a GPD Commissioning that has started ended up in success or failure. If a commissioning GPDF is dropped by the GPS, this callback will not provide any information regarding the GPDF.