微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 关于zstack 加密后的通讯问题

关于zstack 加密后的通讯问题

时间:10-02 整理:3721RD 点击:

通讯设备:coordinator, end-device

协议栈: zstack HA 1.2

加密设置:-DSECURE=1,  -DZG_SECURE_DYNAMIC=1

End Device 设置: -DPOLL_RATE=0,  -DQUEUED_POLL_RATE=0,  -DRESPONSE_POLL_RATE=0

NV编译选项:NV_INIT, NV_RESTORE

问题描述:第一次上电,通讯正常,可通过协调器串口看到end device上报的数据。第二次上电,通讯不正常,串口无数据,通过sniffer抓包,确认end device数据包发出,协调器有ACK返回,断点调试确认协议栈没有实际意义上的处理收到的包。8-10 分钟左右之后,通讯恢复正常,串口有数据。

麻烦请看看这是什么原因造成的,如何改进?

谢谢!

为什么要把ZG_SECURE_DYNAMIC=1,加密的Key需要动态变化吗?

-DPOLL_RATE=0,节点无法收到协调器发给节点的数据了,为什么要这样做?

VV你好,

把ZG_SECURE_DYNAMIC=1 是因为 仅仅-DSECURE=1 的话,压根就没法通讯,设备没法入网。原因不明。

顺带一提,两个设备是在同一协议栈下编译,其余设置是一样的。

-DPOLL_RATE=0,是为了把功耗降到最低,电池很小,所以只能做最低功耗设计。

VV你好,

问题已解决,设置ZG_SECURE_DYNAMIC=0 即可,但奇怪的是之前这样设置是无法通讯的,而且通过抓包确认设备在入网的时候是被拒绝了的。现在又可以了,百思不得其解。

不过既然能通讯了就行了,话说zstack越用越深入,发现的各种奇怪问题也越来越多。想要稳定耐用不是很容易。

为什么不愿意把你的转包文件share出来呢?

 QUEUED_POLL_RATE 和 RESPONSE_POLL_RATE可以设置为10~100,这样可以保证节点需要接收数据时,先向协调器发一个数据包就能收到协调器数据。

ZG_SECURE_DYNAMIC设置为1,可以动态设置加密等级,加密有4个等级

#define ZG_SECURITY_NONE 0
#define ZG_SECURITY_RESIDENTIAL 1
#define ZG_SECURITY_PRO_STANDARD 1 // For now, same as residential
#define ZG_SECURITY_SE_STANDARD 4

您好:

为什么配置了加密后还是没有产生加密的感觉

然后让协调器和路由器通信,修改协调器的key后为什么二者还可以通信,理论上是不行的。

不清楚应该修改哪个key才能测试是否加了密

这个?

这个?

还是这个?

谢谢指导

您好,问一下,如何扩大cc2530可以挂载的路由数量。本来官方上第一级只能挂载6个,第二级也是6个。若想第一级挂10个行不行?

如何在路由下面再挂路由?如何配置呢?谢谢VV大神。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top