SWRA671 June 2020 CC1312R , CC1312R , CC1314R10 , CC1314R10 , CC1352P , CC1352P , CC1352R , CC1352R , CC1354P10 , CC1354P10 , CC1354R10 , CC1354R10 , CC2652P , CC2652P , CC2652R , CC2652R , CC2652R7 , CC2652R7 , CC2652RB , CC2652RB , CC2652RSIP , CC2652RSIP
In order to clone the network properties of a ZC it is important to recognize what kind of information is kept within the TC, and which of that information is crucial to maintaining the already formed network. Data within the TC is kept in non-volatile memory (NVM). The reason for this is that NVM can hold saved data even if the power is turned off. The necessary NV items to clone the network properties and a brief description as to the purpose of each is provided in Table 2.
Content | NV Region Name | Description |
---|---|---|
Extended Address | ZCD_NV_EXTADDR | IEEE Identification Address (specific to each device) |
Personal Area Network ID | ZCD_NV_PANID | 2 byte ID used to represent the PAN |
Extended PAN ID | ZCD_NV_EXTENDED_PAN_ID | By default the 64-bit EPID is set to the device’s own IEEE Address. This value could be used during network joining instead of the 2 byte short address |
On a Network Flag | ZCD_NV_BDBNODEISONANETWORK | Boolean used to represent if the device is part of a network (1= On NWK, 0= Not on NWK) |
Group Table | ZCD_NV_GROUP_TABLE | Indicates the groups that have been formed between sets of end points in the network |
Network Information Base | ZCD_NV_NIB | Contains the attributes required to manage the network layer of the device |
Active Key Information | ZCD_NV_NWK_ACTIVE_KEY_INFO | The network key actively in use |
Alternate Key Information | ZCD_NV_NWK_ALTERN_KEY_INFO | Latest alternate key proposed by the coordinator. |
Network Security Table | ZCD_NV_EX_NWK_SEC_MATERIAL_TABLE | Stores the frame counter and the extended PAN ID of the ZC device |
Trust Center Link Key Table | ZCD_NV_EX_TCLK_TABLE | Includes the TX/RX frame counters, extended address, key attributes/type, and the seed shift index of the corresponding devices added to the network |
Trust Center Link Key IC Table | ZCD_NV_EX_TCLK_IC_TABLE | Includes the key and address of corresponding devices added to the network through the use of install codes. |
Each of the entries in Table 2 is crucial to cloning the network properties of a ZC, and is the minimum information required. An item identification (Item ID) is given to each item in NVM so the NV driver is able to identify the location of where it is stored within Flash memory space. Within the example projects found in the SimpleLink CC13X2/CC26X2 SDK, the ‘zcomdef.h’ file (Stack -> Sys -> zcomdef.h’) contains the item IDs for each of the NVM regions. Memory regions described in Table 3 contain Sub IDs and the table or list itself has a System ID. The value associated to each System ID can be found within the SimpleLink CC13X2/CC26X2 SDK under each project in the nvintf.h file (Application -> Services -> nvintf.h).
NV Region | System | System ID |
---|---|---|
ZCD_NV_EX_LEGACY | Z-Stack | NVINTF_SYSID_ZSTACK |
ZCD_NV_EX_ADDMGR | Z-Stack | NVINTF_SYSID_ZSTACK |
ZCD_NV_EX_BINDING_TABLE | Z-Stack | NVINTF_SYSID_ZSTACK |
ZCD_NV_EX_DEVICE_LIST | Z-Stack | NVINTF_SYSID_ZSTACK |
ZCD_NV_EX_TCLK_TABLE | Z-Stack | NVINTF_SYSID_ZSTACK |
ZCD_NV_EX_TCLK_IC_TABLE | Z-Stack | NVINTF_SYSID_ZSTACK |
ZCD_NV_EX_APS_KEY_DATA_TABLE | Z-Stack | NVINTF_SYSID_ZSTACK |
ZCD_NV_EX_SEC_MATERIAL_TABLE | Z-Stack | NVINTF_SYSID_ZSTACK |
ZCL_PORT_SCENCE_TABLE_NV_ID | Application | NVINTF_SYSID_APP |
ZCL_PORT_PROXY_TABLE_NV_ID | Application | NVINTF_SYSID_APP |
ZCL_PORT_SINK_TABLE_NV_ID | Application | NVINTF_SYSID_APP |
The system ID is used to specify the system in which the tables or lists are a part of (for example, Zigbee, 15.4, Application). Depending on the number of max entries to a table or list (configurable at compile time), see Table 4. There will be that many locations in Flash reserved for information.
NV Region | Bytes Per Entry | Pre-Configurable Value | Default |
---|---|---|---|
ZCD_NV_EX_NWK_SEC_MATERIAL_TABLE | 12 | - | 1 |
ZCD_NV_EX_TCLK_TABLE | 20 | ZDSECMGR_TC_DEVICE_MAX | 40 |
ZCD_NV_EX_TCLK_IC_TABLE | 20 | ZDSECMGR_TC_DEVICE_MAX | 40 |
ZCD_NV_GROUP_TABLE | 322 | APS_MAX_GROUPS | 1 |
Sub IDs start at the value 0x0000 and increment upward to the entry of choice, maximum value configurable through the table presented above.
NOTE
For the purpose of this report and application, only the entries defined in Table 2 will be discussed.