微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 协调器偶尔没有ACK,导致节点数据重发

协调器偶尔没有ACK,导致节点数据重发

时间:10-02 整理:3721RD 点击:

我用CC2530, ZStack-CC2530-2.5.1a版本的协议栈。

网络模式使用的是星型网络,在一个协调器和一个节点的情况下。节点发送数据给协调器。协调器偶尔不返回ACK包,请问这是什么情况?

上图中第一个包协调器立刻回了一个ACK,但是第二个包协调器就没有回ACK,等待超时之后,节点重新发送,直到第4包协调器才回应了ACK。

在节点给协调器后面发送的4条数据来看,第一条是应用层发起的发送,Seq number=0xC0,后面的三条是MAC重发的数据,因为Seq number还是0xC0,在我们的协议栈里面底层默认重发次数在f8wcondig.cfg文件里面

/* The maximum number of retries allowed after a transmission failure */
-DAPSC_MAX_FRAME_RETRIES=3

在最后一次发送的时候协调器收到回复了。

原因

可能节点端的无线性能或者和协调器的距离比较远,导致发送有时候没法收到。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top