您好!
根据 TI 15.4堆栈文档、非信标模式下的关联序列如下图所示。
如果传感器设备发送关联请求并成功接收到关联响应、但由于某些原因(例如电源故障)、它无法发送数据请求(和后续数据包)。
TI 15.4堆栈如何处理这种情况?
在协调器中、关联指示和 commStatus 指示之间的持续时间约为900毫秒。
如果我在关联时在这段时间内断开此传感器的电源、则整个关联过程未完成、但此条目已记录到 Cllc_associatedDevList[]、并且永远不会删除。
你有什么建议吗?
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.
您好!
根据 TI 15.4堆栈文档、非信标模式下的关联序列如下图所示。
如果传感器设备发送关联请求并成功接收到关联响应、但由于某些原因(例如电源故障)、它无法发送数据请求(和后续数据包)。
TI 15.4堆栈如何处理这种情况?
在协调器中、关联指示和 commStatus 指示之间的持续时间约为900毫秒。
如果我在关联时在这段时间内断开此传感器的电源、则整个关联过程未完成、但此条目已记录到 Cllc_associatedDevList[]、并且永远不会删除。
你有什么建议吗?
Hecter_r、您好!
收集器(在协处理器模式下运行)是否可以向传感器发送取消关联请求?
我不确定 appsrv、c 中的 appsrv_processRemoveDeviceReq()是否是为此目的而设计的。
在我的第二种情况下,收集 器尝试通过在传感器1加入超时后调用 appsrv_processRemoveDeviceReq()来发送取消关联请求。
我无法观察到该数据包是由监听器中的收集器发送的、我不确定该命令是否已排队、因为传感器1已关闭、无法向收集器发送数据请求。
但是,调用 appsrv_processRemoveDeviceReq()后,所有要发送到传感器2的数据都被卡住,传感器2无法接收!
如果我在 appsrv_processRemoveDeviceReq ()中标记了 ApiMac_mlmeDisassociateReq (&disassocReq),则一切都正常。
您对此有什么想法吗?
我进行了以下测试:
1.将 MAC_CFG_TX_DATA_MAX 从2增加到4 ->相同的错误。
2.将 MAC_CFG_TX_MAX 从5增加到10 -->正常工作。
请参阅随附的日志和屏幕截图:
从数据包1到19、主机收集器每5秒向传感器1 (0x0001)发送一次应用保持活动状态。
在第23号数据包中、传感器2 (00:12:4b:00:18:9a:E3:bb)尝试关联、但由于我的中断、如上所述、失败。
2秒后、收集器尝试向传感器2发送取消关联、并将其从关联表中删除。
之后、收集器无法向传感器1发送任何数据包。