目前现场的已有终端是用的2530的芯片方案,但是代码都是模组厂家的,没有办法修改,协调器用2652 的开发板来做,在zc_light基础上之前根据指导文档,已经修改了信道、PANID,association过程正常,然后终端设备会发送device annce,报文格式如下
我自己分析或者软件分析,貌似APS payload的第一个字节是多余的,不确定是否分析的对,这个报文协调器能够正常处理吗?
从抓包来看association之后,就是终端发送的device annce,然后抓到了协调器会发送下面报文
这个报文还是发送到之前给分配的短地址,并没有使用devcie annce发布的短地址
然后终端设备会发送数据,如下:
在协调上把light的SAMPLELIGHT_ENDPOINT改为0X0B,但是断点调试并未进入afIncomingData或者zclSampleLight_processAfIncomingMsgInd,不知道我跟踪这两个函数是否正确(使用TI的2652开发板作为end设备的时候,也修改ed_sw的SAMPLELIGHT_ENDPOINT 为0x0B的时候,是会进入zclSampleLight_processAfIncomingMsgInd),另外看了其他的帖子,检查了一下 bdb_interface.h中的BDB_DEFAULT_TC_REQUIRE_KEY_EXCHANGE 宏是FALSE
我现在就像想在协调器这边可以收到这个报文,而且发送的报文也要不加密的,NWK和APS也sec域也都是0的报文,这样终端才能正常解析。还请帮忙看看,再附上完整的2652协调器+2530终端的抓包
ti ok2.psd
Viki Shi:
请问使用的协议栈版本是什么?抓包我待会看一下
YiKai Chen:
我記得2652协调器使用的z-stack是無法不加密的,你的抓包看來設備並沒有入網成功
user6283840:
回复 Viki Shi:
你好,
我的协议栈版本是sdk_3_10_00_53
user6283840:
回复 YiKai Chen:
请问,从那里看出来是没有入网的?因为密钥分配没有成功吗?还是那里?如果无法不加密,那么如何和低版本的互通那?
user6283840:
回复 YiKai Chen:
多谢回答,也就是说如果和2.x版本的2530互通,只有一个z-stack home版本才行?也只有密钥分配成功了以后,协调器才能增加邻居表项?后面才能收到包?
YiKai Chen:
回复 user6283840:
2.x版本的2530是什麼?
user6283840:
回复 YiKai Chen:
终端设备是cc2530的芯片,软件版本不确定。
user6283840:
回复 Viki Shi:
2652上的协议栈是是sdk_3_10_00_53,cc2530上的不知道
YiKai Chen:
回复 user6283840:
cc2530的芯片软件版本不确定,那沒辦法給出具體建議