TI中文支持网
TI专业的中文技术问题搜集分享网站

用silicon lab的zigbee网关给cc2530发送zcl指令接收不到的问题

大家好,我最近在做一个用silicon lab的zigbee芯片做网关,用cc2530作设备端灯泡的测试。我发现灯泡能够正常的入网分配地址,在网关下查看能看到灯泡子设备,但是给灯泡发zcl on-off的指令时,灯泡接受不到这个指令。

我调试发现GenericApp_ProcessEvent()函数里下面这个case一直进入不了

case AF_INCOMING_MSG_CMD:

GenericApp_MessageMSGCB( MSGpkt );

通过抓包看到,cc2530在mac层已经对zcl指令帧回复了ACK,但是在应用层上一只获取不到这个指令,这种可能是什么方面的原因呢?

YiKai Chen:

如果是要支持HA on/off cluster為什麼不用SampleLight 來作燈泡?

gaoyang9992006:

应该是你发送的这个指令,因为两家协议不同,没有识别出来,而不是没有收到。。

Alvin Chen:

你的endpoint 对吗?

user5242421:

回复 YiKai Chen:

因为要给客户做演示demo,表示我们可以也可以兼容多家的芯片,所以网关用silicon lab的,终端设备用TI的。

user5242421:

回复 gaoyang9992006:

最坏的就是这种可能了,但是感觉不太像这个原因。发出的ZCL指令应该是通用的吧,wireshark上都能直接识别出这是zcl on-off指令,我待会把抓包文件贴一下。

user5242421:

回复 Alvin Chen:

我把GENERICAPP_ENDPOINT设置为10,然后发送的时候也指定了端点10. 我后来在GenericApp_ProcessEvent()函数下直接这么写:case AF_INCOMING_MSG_CMD:GenericApp_MessageMSGCB( MSGpkt );HalLedSet(HAL_LED_2,HAL_LED_MODE_ON);break;
也是没什么反应,这个case根本进不来。 我贴一下wireshark抓包的文件。

Alvin Chen:

回复 user5242421:

如果符合规范不会出现不通的情况,你最好上传你的包看一下,上传sniffer抓包的或者ubiqua都可以,你协议栈版本?

user5242421:

cc2530抓包.rarsilicon lab.rar

user5242421:

回复 user5242421:

添加的两个压缩文件第一个是cc2530入网以及向他发送zcl指令时的wireshark抓包结果;
第二个是能够正常接受指令的silicon终端设备的抓包结果,对比能看到后面silicon接受到zcl指令之后会回复zcl response,而前面的没有

user5242421:

我上传了两个压缩包,都是wireshark的抓包结果。第一个是cc2530入网以及接受zcl指令时的抓包过程;第二个是作为对比的,用siliconlab的终端能够正常接收指令的抓包结果。两个比较能看出来,最后接收zcl指令时,silicon终端回复了zcl response,而cc2530没有回复。

赞(0)
未经允许不得转载:TI中文支持网 » 用silicon lab的zigbee网关给cc2530发送zcl指令接收不到的问题
分享到: 更多 (0)