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

无线发送返回ZMacChannelAccessFailure的相关疑问

本人在做测试,router节点发送数据给COO,每隔1秒发一次。在AF_DATA_CONFIRM_CMD观察发送数据的状态,发送存在ZMacChannelAccessFailure的情况,抓包发现这个数据没有发送出去。在这种情况下,是不是意味着信道干扰导致不能正常发送?MAC层是否会启动重新发送机制??还是需要我运用再次发送一次数据??能否介绍下相关的机制。谢谢

Aries Lord:

AF_DATA_CONFIRM_CMD是AF层的返回,当返回ZMacChannelAccessFailure,NWK操作了两次MAC层发送,AF_DATA_CONFIRM_CMD返回值是第二次MAC_MCPS_DATA_CNF的返回值。遇到信道干扰时,千万不可立即重发,否则干扰越厉害。应该等待一段时间避开冲突点。

dozen yao:

回复 Aries Lord:

恩,返回这个错误,实际上是CSMA退避后,还是不能发送导致的吧。我现在的想法是把这个CSMA退避运行次数和时间延长。如果还是失败,那么就返回错误的结果给运用,让运用判断是否需要再次发送。点对点测试发现信道干扰是主要的不能发送的原因。

Aries Lord:

回复 dozen yao:

发得快就容易遇到这个错误,一般100ms发一次比较合适。改相关参数在MAC PIB里面改,默认是320us一个回退周期,一共是1 到 (3+7+15+15)个周期,加上2次重发最大能达到60ms

dozen yao:

回复 Aries Lord:

回退周期应该是单片机时钟觉得的吧?一共是1到(7+15+31)个周期吧,默认minBe=3,maxBe=5。移3位-1=7,移4位-1=15,移5位-1=31。这样计算是不是正确?

谢谢你的回答

赞(0)
未经允许不得转载:TI中文支持网 » 无线发送返回ZMacChannelAccessFailure的相关疑问
分享到: 更多 (0)