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

ZLL开发套件中Target模块向Remote模块发送Inter-PAN的ZCL信号,为什么将disableDefaultRsp设置为TRUE时能达到100%的发送成功率,反之成功率下降

问题背景:

         在Target模块中调用下面函数向Remoter周期发送信号:

ZStatus_t zcl_SendCommand( uint8 srcEP, afAddrType_t *destAddr,
                           uint16 clusterID, uint8 cmd, uint8 specific, uint8 direction,
                           uint8 disableDefaultRsp, uint16 manuCode, uint8 seqNum,
                           uint16 cmdFormatLen, uint8 *cmdFormat )

当其他参数不变,只改变disableDefaultRsp的情况下出现下面两种差异明显的场景:

场景1:disableDefaultRsp设置为TRUE时,Remoter能100%接收到Target端发送的数据包;

场景2:disableDefaultRsp设置为FALSE时,Remoter随着时间的推移接收到的数据包比例下降,最后接近于0。

        Target模块发送周期为200ms、400ms、600ms、800ms、1000ms和10s时都出现场景1和场景2两种形式。

问题1:按我自己的理解是disableDefaultRsp赋予FALSE时,接收端在接收到数据包后会调用zcl_SendDefaultRspCmd()而反馈回响应的反馈信息。如果在一定的时间内没有信息反馈回来则发送端(即Target模块)会进行重发,因此会降低丢包率。但是现在怎么得到相反的结果?

问题2:disableDefaultRsp=FALSE时,是否能开启ZCL层的重发机制?重发次数和时间间隔在哪设置?默认值是多少?

       

VV:

default response 没有收到,也不会有重发的。这个跟ACK不一样。

Remote是低功耗设备,平时是休眠的。 你的Target怎么给Remote一直发数据的?

qian Sun:

回复 VV:

我用Remote周期性的给Target发送ON/OFF命令,当Target收到ON/OFF命令时等待18ms再给Remote发送反馈信息。此时Remote还没有休眠,所以能接受到发送的数据包。请问下怎样启动MAC和NWK层的重发机制呢?

qian Sun:

回复 VV:

了解了,非常感谢!

赞(0)
未经允许不得转载:TI中文支持网 » ZLL开发套件中Target模块向Remote模块发送Inter-PAN的ZCL信号,为什么将disableDefaultRsp设置为TRUE时能达到100%的发送成功率,反之成功率下降
分享到: 更多 (0)