本人在做测试,router节点发送数据给COO,每隔1秒发一次。在AF_DATA_CONFIRM_CMD观察发送数据的状态,发送存在ZMacChannelAccessFailure的情况,抓包发现这个数据没有发送出去。在这种情况下,是不是意味着信道干扰导致不能正常发送?MAC层是否会启动重新发送机制??还是需要我运用再次发送一次数据??能否介绍下相关的机制。谢谢
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
AF_DATA_CONFIRM_CMD是AF层的返回,当返回ZMacChannelAccessFailure,NWK操作了两次MAC层发送,AF_DATA_CONFIRM_CMD返回值是第二次MAC_MCPS_DATA_CNF的返回值。遇到信道干扰时,千万不可立即重发,否则干扰越厉害。应该等待一段时间避开冲突点。
发得快就容易遇到这个错误,一般100ms发一次比较合适。改相关参数在MAC PIB里面改,默认是320us一个回退周期,一共是1 到 (3+7+15+15)个周期,加上2次重发最大能达到60ms