14.2.3.1.4 BDB Reset
Reset of BDB can be done by the following ways
- Reset via touchlink commissioning cluster
- Reset via local action
1. Reset via touchlink commissioning cluster
To reset a target to its factory new state using the touchlink commissioning cluster, an initiator SHALL follow the steps of the touchlink procedure till identify request with an extended channel scan, then will send reset to factory new defaults command to target. On receipt of the touchlink commissioning cluster, reset to factory new request inter- PAN command frame with a valid transaction identifier, i.e., immediately following a touchlink device discovery, the target SHALL perform a leave request on the network.void BDB_ResetVia_TouchlinkCluster(ResetTargetCallback_t pfcallback);
Following example illustrates the usage of reset via touchlink commissioning cluster
static void ResetTargetCallback(ResetTargetStatus_t status) { .... } BDB_ResetVia_TouchlinkCluster(ResetTargetCallback);
Parameters:
- pfcallback - callback handler with the status code
2. Reset via local action
To reset and leave its current network, the node SHALL perform a leave request on the network. After getting leave confirm, the node SHALL then clear all Zigbee persistent data except the outgoing network frame counter
void BDB_ResetToFactoryNew (bool leaveNetwork);
Parameters:
- leaveNetwork - true or false