主题中讨论的其他部件:Z-stack, SIMPLELINK-CC13XX-CC26XX-SDK
我的非困端设备正在等待APS-ACK,AF-request-packet已通过其父节点转发到目标节点。 当我强制关闭目标节点电源时,终端设备将等待18秒。 当终端设备等待APS-ACK时,我强制关闭父设备电源,终端设备将触发"ZDO_SyncIndicationCB",但 afDataConfirm不会触发。
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.
我的非困端设备正在等待APS-ACK,AF-request-packet已通过其父节点转发到目标节点。 当我强制关闭目标节点电源时,终端设备将等待18秒。 当终端设备等待APS-ACK时,我强制关闭父设备电源,终端设备将触发"ZDO_SyncIndicationCB",但 afDataConfirm不会触发。
您可以使用相关的EP,transID和状态(ZMacTransactionExpired)直接调用afDataConfirm。 ACK计数器由 Z-Stack的RTG层处理,无论ZDO行为如何,计数器都将过期/清除。
我尚未确认SIMPLELINK-CC13XX-CC26XX-SDK上是否存在此类行为,是否存在问题取决于对问题的解释。 如果设备是孤立的,则显然不会接收APS ACK数据包。 这也可能是应用程序解释的内容。
此致,
Ryan
在Nwk_global_c中,有 一些参数
// Maximums for the data buffer queue #define NWK_MAX_DATABUFS_WAITING 8 // Waiting to be sent to MAC #define NWK_MAX_DATABUFS_SCHEDULED 5 // Timed messages to be sent #define NWK_MAX_DATABUFS_CONFIRMED 5 // Held after MAC confirms #define NWK_MAX_DATABUFS_TOTAL 12 // Total number of buffers
APS-Ack等待缓冲区的大小是多少?
未被APS ACKed的消息将从Nwk_DATABUF_Sent发送回 Nwk_DATABUF_scheduled状态,该状态将在等待时间结束后过期,同时原始缓冲区将标记为Nwk_DATABUF_Done,以便可以在下次重试时删除/刷新(如果保证)。
似乎已为SimpleLink SDK开发了一个解决方案: https://e2e.ti.com/f/1/t/109.2052万
此致,
Ryan