4.1.4 BDB Reset

The user can reset the BDB in the following ways:
  • Reset via Touchlink commissioning cluster
  • Reset via local action

Reset via Touchlink Commissioning Cluster

To reset a target to its factory new state via the Touchlink commissioning cluster, an initiator must execute the Touchlink procedure steps up to the identify request with an extended channel scan. Then, the initiator must send a reset to factory defaults command to the target. Upon receiving a ResetToFactoryNewRequest inter-PAN command frame from the Touchlink commissioning cluster with a valid transaction identifier, which occurs immediately after a Touchlink device discovery, the target must initiate a leave request from the network.
void BDB_ResetVia_TouchlinkCluster(ResetTargetCallback_t pfcallback);
The following example provides an insight into the usage of Reset via the Touchlink commissioning cluster:
static void ResetTargetCallback(ResetTargetStatus_t status)
{
 ....
}
BDB_ResetVia_TouchlinkCluster(ResetTargetCallback);

Parameters:

  • pfcallback – Callback handler with the status code

Reset via Local Action

To reset and exit its current network, the node must initiate a leave request on the network. After receiving leave confirmation, the node must clear all Zigbee persistent data, with the exception of the outgoing network frame counter.
void BDB_ResetToFactoryNew (bool leaveNetwork);

Parameters:

  • leaveNetwork – True or false