用的zha1.2.2版本的协议栈,调用AF_DataRequest 发送数据,返回值0.成功。每次我都发的相同数据,但是通过抓包显示的数据每次都不一样
ret= AF_DataRequest(&zclIKH_DstAddr, &zclIKH_epDesc,cid, len, pBuf, &transId, AF_SKIP_ROUTING, AF_DEFAULT_RADIUS);
我发送4个字节,nwk payload 显示收到12个bytes 而是数据没规律。我发送2个字节 显示收到10个bytes
这是什么情况,我用老版本的zstack2.4.0 收发是没问题的
Alvin Chen:
你的payload length不会改变,你用什么抓包工具? 可以上传你的抓包?或者你用ubiqua或者shark 都可以看到更多的细节。
user4928689:
回复 Alvin Chen:
用的Ubiqua,我发的4bytes 数据 为 数字 1 ,2 ,3 ,4 抓包如上图
user4928689:
回复 user4928689:
encrypted 如果是加密了,怎么解密得到我的数据啊, 从长度推断 我发2个显示10个 我发4个显示12个bytes 感觉 多了8个,但是 数据貌似没有规律
Alvin Chen:
回复 user4928689:
你配置了ubiqua key了?你如果没有改动就按照下面的帖子去设置。
e2echina.ti.com/…/138315
user4928689:
回复 Alvin Chen:
可以了,配置ubiqua key 后看见数据对了,请问我接收端怎么解析这个数据?
YiKai Chen:
回复 user4928689:
接收端直接在AF_INCOMING_MSG就可以解析这个数据
user4928689:
回复 YiKai Chen:
我在函数解析力读取pData->cmd.Data[i]; 还是和packet sniffer抓包一样,数据是杂乱的。zha1.2.2发送出来的数据,在接收端要用什么算法解析吗,不能直接这样赋值吧。我的意思是用什么方法解析?
配置ubiqua key 可以看见数据,我解析的时候怎么利用这个key 得到正确的数据,不配置就是无规律的。
YiKai Chen:
回复 user4928689:
你用Z-Stack 1.2.2a的話必須要用zcl格式去送封包,不然你的AF_INCOMING_MSG會在zcl_event_loop的zcl_ProcessMessageMSG被忽略,當然你也可以在zcl_event_loop裡面收到AF_INCOMING_MSG先去處理
user4928689:
回复 YiKai Chen:
你的意思是我用zha1.2.2a 的发送端必须按照zcl格式 组包发送吗,不然接收端无法解析是吗,那按照zcl组包的格式看那个文档或者教程?直接调用AF_DataRequest 发送不可以吗
user4928689:
回复 user4928689:
我直接在ZDApp_event_loop 任务函数里面 处理可以吗,我如果不想用zcl格式的包