name=Network Steering

description=This plugin will perform the necesary steps to join the network of any ZigBee Profile.  It tries first to perform a join using an install code using the primary channel mask, and then the secondary channel mask.  If that does not work it then tries to use the default well-known link key (ZigBeeAlliance09) to join on the primary channel mask, and then the secondary channel mask. Finally, if the previous 2 key types fail, the plugin will try to use the distributed security link key (D0D1D2...) to try to join a network on the primary channel mask, and then the secondary channel mask.

quality=production
qualityString=Production Ready

category=ZigBee 3.0

providedApis=network-steering
api.network-steering.header=network-steering.h

requiredApis=scan-dispatch,update-tc-link-key

implementedCallbacks=emberAfPluginNetworkSteeringStackStatusCallback, emberAfPluginUpdateTcLinkKeyStatusCallback

sourceFiles=network-steering.c, network-steering-cli.c
sourceFilesSoc=network-steering-soc.c
sourceFilesHost=network-steering-host.c

# Turn this on by default
includedByDefault=true

events=finishSteering

options=channelMask, radioTxPower, radioTxCallback, scanDuration, commissioningTimeS

channelMask.name=Channel mask
channelMask.description=The channels that the plugin will scan when forming and joining.
channelMask.type=CHANNELS
channelMask.default=0x0318C800UL

radioTxPower.name=Radio output power
radioTxPower.description=The radio output power (in dBm) at which the node will operate.
radioTxPower.type=POWER
radioTxPower.default=3

radioTxCallback.name=Get radio output power from callback
radioTxCallback.description=Use a tx power callback to determine radio tx power.
radioTxCallback.type=BOOLEAN
radioTxCallback.default=false

scanDuration.name=Scan duration exponent
scanDuration.description=The exponent of the number of scan periods, where a scan period is 960 symbols, and a symbol is 16 miscroseconds.  The scan will occur for ((2^duration) + 1) scan periods.
scanDuration.type=NUMBER:0,14
scanDuration.default=5

commissioningTimeS.name=Network steering commissioning time (seconds)
commissioningTimeS.description=The amount of time (in seconds) that a node will open its network when performing network steering for node on a network, or at the end of the network steering process if a node is a router
commissioningTimeS.type=NUMBER:180,255
commissioningTimeS.default=180
# The minimum time here comes from the BDB spec, doc 13-0402.
