你好!
我有一个简单的问题、想象一下这种情况。
我有加密狗、创建网络、配对我的设备、然后在一段时间后、我决定更改加密狗。
是否有任何方法可以将网络从一个加密狗移动到另一个加密狗? 因此我不必再次配对设备?
此致、
Ayman Hammou
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
这是读数的 CLI 输出:
Success: Data Read for ZCD_NV_PANID Success: Data Read for ZCD_NV_EXTADDR Success: Data Read for ZCD_NV_EXTENDED_PAN_ID Success: Data Read for ZCD_NV_BDBNODEISONANETWORK Success: Data Read for ZCD_NV_NIB Failure: Could not read ZCD_NV_NWK_ACTIVE_KEY_INFO (610802) Failure: Could not read ZCD_NV_NWK_ALTERN_KEY_INFO (610802) Failure: Could not read from: ZCD_NV_EX_NWK_SEC_MATERIAL_TABLE Failure: Could not read from: ZCD_NV_EX_TCLK_TABLE Failure: Could not read from: ZCD_NV_EX_TCLK_IC_TABLE Failure: Could not read ZCD_NV_GROUP_TABLE (610802)
问题似乎也适用于其他 NV 元素。
这些是启用的标志。
-DMAC_CFG_APP_PENDING_QUEUE=TRUE -DMAC_CFG_TX_DATA_MAX=5 -DMAC_CFG_TX_MAX=8 -DMAC_CFG_RX_MAX=5 -DOSAL_NV_EXTENDED -DADDRMGR_NV_SINGLES -DBINDINGTABLE_NV_SINGLES -DASSOCLIST_NV_SINGLES -DZSTACK_DEVICE_BUILD="(DEVICE_BUILD_COORDINATOR | DEVICE_BUILD_ROUTER | DEVICE_BUILD_ENDDEVICE)" -DNWK_AUTO_POLL -DZNP_UART_BAUD=HAL_UART_BR_115200 -DZIGBEEPRO -DZIGBEE_FRAGMENTATION -DINTER_PAN -DMT_UTIL_FUNC -DMT_SYS_FUNC -DMT_AF_FUNC -DMT_ZDO_CB_FUNC -DMT_ZDO_FUNC -DMT_ZDO_MGMT -DMT_ZDO_EXTENSIONS -DMT_GP_CB_FUNC -DMT_APP_CNF_FUNC -DMT_SYS_KEY_MANAGEMENT
请在重新构建之前添加-DFEATURE_NVEXID (并可能关闭 CCS 编译器的优化以获得更好的调试体验)。 请注意 、如果未使用安装代码、则不会读取 ZCD_NV_EX_TCLK_IC_TABLE、并且 ZCD_NV_GROUP_TABLE 应在 config_nv_regions.txt 中重命名为 ZCD_NV_EX_GROUP_TABLE、位于项目 ID 0x0008、系统 ID 0x01、子 ID 0x0000以及与 SysConfig -> Z-Stack -> Group Size -> Group Table 等效的条目。 附件是在进行必要的更改后获得的示例。
e2e.ti.com/.../read_5F00_content.txt
此致、
Ryan
Ryan。
感谢您的建议、现在阅读有效、但当涉及克隆时、我得到了以下结果:
Success: Data Read for ZCD_NV_PANID Success: Data Read for ZCD_NV_EXTADDR Success: Data Read for ZCD_NV_EXTENDED_PAN_ID Success: Data Read for ZCD_NV_BDBNODEISONANETWORK Success: Data Read for ZCD_NV_NIB Success: Data Read for ZCD_NV_NWK_ACTIVE_KEY_INFO Success: Data Read for ZCD_NV_NWK_ALTERN_KEY_INFO Success: Data Read for ZCD_NV_EX_NWK_SEC_MATERIAL_TABLE Success: Data Read for ZCD_NV_EX_TCLK_TABLE Failure: Could not read from: ZCD_NV_EX_TCLK_IC_TABLE Success: Data Read for ZCD_NV_EX_GROUP_TABLE Read Complete. Refer to read_content.txt to view results. Success: Formed the Network Failure: Could not write to: ZCD_NV_PANID (Empty Return) Failure: Could not write to: ZCD_NV_EXTADDR (Empty Return) Failure: Could not write to: ZCD_NV_EXTENDED_PAN_ID (Empty Return) Failure: Could not write to: ZCD_NV_BDBNODEISONANETWORK (Empty Return) Failure: Could not write to: ZCD_NV_NIB (Empty Return) Failure: Could not write to: ZCD_NV_NWK_ACTIVE_KEY_INFO (Empty Return) Success: Wrote ZCD_NV_NWK_ALTERN_KEY_INFO to Memory Success: Wrote ZCD_NV_EX_NWK_SEC_MATERIAL_TABLE to Memory Success: Wrote ZCD_NV_EX_TCLK_TABLE to Memory Success: Wrote ZCD_NV_EX_GROUP_TABLE to Memory
如果这些 sys_nv_write 失败、是否正常?
这不是预期结果。 确保您的第一个 ZNP/ZC 建立了有效的网络。 然后、第二个 ZNP/ZC 应该在闪存新映像之前擦除其所有存储器。 接下来、使用 TI Zigbee 网络克隆工具的"工具"->"表单网络"选项初始化第二个 ZNP 的 NV 信息、然后使用"克隆内容"成功复制所有相关的 NV 存储器、例如我的示例:
While in operation this window will be frozen until completion. 2022-12-19 12:41:55.781855 Success: Data Read for ZCD_NV_PANID Success: Data Read for ZCD_NV_EXTADDR Success: Data Read for ZCD_NV_EXTENDED_PAN_ID Success: Data Read for ZCD_NV_BDBNODEISONANETWORK Success: Data Read for ZCD_NV_NIB Success: Data Read for ZCD_NV_NWK_ACTIVE_KEY_INFO Success: Data Read for ZCD_NV_NWK_ALTERN_KEY_INFO Success: Data Read for ZCD_NV_EX_NWK_SEC_MATERIAL_TABLE Success: Data Read for ZCD_NV_EX_TCLK_TABLE Failure: Could not read from: ZCD_NV_EX_TCLK_IC_TABLE Success: Data Read for ZCD_NV_EX_GROUP_TABLE Read Complete. Go to [view] to see content Success: Wrote ZCD_NV_PANID to Memory Success: Wrote ZCD_NV_EXTADDR to Memory Success: Wrote ZCD_NV_EXTENDED_PAN_ID to Memory Success: Wrote ZCD_NV_BDBNODEISONANETWORK to Memory Success: Wrote ZCD_NV_NIB to Memory Success: Wrote ZCD_NV_NWK_ACTIVE_KEY_INFO to Memory Success: Wrote ZCD_NV_NWK_ALTERN_KEY_INFO to Memory Success: Wrote ZCD_NV_EX_NWK_SEC_MATERIAL_TABLE to Memory Success: Wrote ZCD_NV_EX_TCLK_TABLE to Memory Success: Wrote ZCD_NV_EX_GROUP_TABLE to Memory Please Power Cycle/Restart the new ZC to complete the procedure. Ensure to do a physical reset if it is the first time restarting the device after programming with an XDS110. If using a LaunchPad the reset button may be pressed. 2022-12-19 12:41:56.701965 Window is now operational.
此致、
Ryan
嗯、我发现了导致写入失败的原因并修复了它。
建议列表:
def read_response(port): buf_hex = [] try: buf = port.read(2) # Read the SOF and LEN buf = buf.hex() # Convert read data to a hexadecimal string if buf[0:2] == 'fe': # Verify the SOF byte buf2 = port.read(int(buf[2:4], 16) + 3) # Read the rest of the frame + CMD0/CMD1/FCS buf_hex = buf + buf2.hex() # Append the rest of the frame buf_hex = buf_hex[2: len(buf_hex)] # Remove the SOF byte elif buf[0:2] == "00" and buf[2:4] == "fe": length = port.read(1) ll=int.from_bytes(length, byteorder = "big") buf2 = port.read(ll + 3) buf_hex = buf + buf2.hex() buf_hex = buf_hex[3:len(buf_hex)] except ValueError: buf_hex = [] return buf_hex