【求助】概率出现设备收到控制包,并进行动作后,未回复report的情况

Zigbee 子设备开发


Post Reply
Xxl
Posts: 2

你好,我们在测试中发现,网关向设备发送控制包后,设备实际有控制成功,但未回复report给网关,导致设备实际状态与网关上展示的状态不一致,这会是什么原因导致的?麻烦帮忙分析下,附件为抓包文件,第2374个包,网关向设备发送Off后,设备未回复

Attachments
2374控制未回复.cubx.txt
(376 KiB) Downloaded 5 times
User avatar
huanghuan
Posts: 301

Re: 【求助】概率出现设备收到控制包,并进行动作后,未回复report的情况

1.你好,从当前的抓包情况来看,在2446行E8D0 这个设备连续发了3次aps ack,nwk seq为173;后续在2479行的aps ack 已经到了 175,这说明 设备E8D0在 2446行到2479行中间有一包 174的onoff report由于一些问题没有发出来(从aps ack连发3次来看,是网络波动导致的发送失败)
2.请确认如果本次report确实对你的设备使用造成了问题,你可以使用send data函数中将QOS置为QOS_1 ,在这种模式下,report将需要对端回复default respond是会结束,期间会不断开启尝试重传,你可以将重传时间为你想要的时间,比如3s。
3.有注意到期间网关下发的off 间隔只有 100ms,请确认网关下发间隔是否符合你们预期

Xxl
Posts: 2

Re: 【求助】概率出现设备收到控制包,并进行动作后,未回复report的情况

huanghuan 2025年 Sep 3日 11:27

1.你好,从当前的抓包情况来看,在2446行E8D0 这个设备连续发了3次aps ack,nwk seq为173;后续在2479行的aps ack 已经到了 175,这说明 设备E8D0在 2446行到2479行中间有一包 174的onoff report由于一些问题没有发出来(从aps ack连发3次来看,是网络波动导致的发送失败)
2.请确认如果本次report确实对你的设备使用造成了问题,你可以使用send data函数中将QOS置为QOS_1 ,在这种模式下,report将需要对端回复default respond是会结束,期间会不断开启尝试重传,你可以将重传时间为你想要的时间,比如3s。
3.有注意到期间网关下发的off 间隔只有 100ms,请确认网关下发间隔是否符合你们预期

2.我们使用的是tuya_zigbee_send_data这个接口,需要如何进行设置?

User avatar
huanghuan
Posts: 301

Re: 【求助】概率出现设备收到控制包,并进行动作后,未回复report的情况

  1. 请将.qos参数置为 QOS_1,并将tal_zg_send_data中的timeout设置为你需要的超时时间,比如1s
    //....
    send_data.qos = QOS_1;
    ....
    tal_zg_send_data(&send_data, NULL, 1000);
    .....//
Post Reply