微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 协议栈中终端节点有在断网等情况下自己清除网络信息的逻辑吗?

协议栈中终端节点有在断网等情况下自己清除网络信息的逻辑吗?

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

1个协调器 7个不休眠节点 2个休眠节点都定义了NV_RESTORE 且初次联网限制联网,需要按按键。

情况是这样的:有部分信号不好的节点,运行两三天之后会断网,显示断网的LED灯正常一直闪烁,但是抓不到他发出的包。这时重启这个终端节点他也不会再执行搜网操作,因为保存在NV中的网络信息已经没有了,作为“新”设备等待按按键再搜网。

查看过协调器的连接表还有这个节点的信息,但是节点没有协调器的信息。通常终端节点运行两三天才会出现这个问题。

请问协议栈终端节点有断网太久或什么其他情况清除NV数据的逻辑吗?你觉得还有什么可能?

节点里面会有一个地方会触发从rejoin到join状态,在多次rejoin没有成功的情况下。

else
{
if ( devStartMode == MODE_RESUME )
{
if ( ++retryCnt <= MAX_RESUME_RETRY )
{
if ( _NIB.nwkPanId == 0xFFFF || _NIB.nwkPanId == INVALID_PAN_ID )
devStartMode = MODE_JOIN;
else
{
devStartMode = MODE_REJOIN;
_tmpRejoinState = true;
}
}
// Do a normal join to the network after certain times of rejoin retries
else if( AIB_apsUseInsecureJoin == true )
{
devStartMode = MODE_JOIN;
}
}

感谢您的回复!

就算是JOIN也会发送Beacon,而且重启后之后 devState = DEV_HODE 不会重连了,不能从NV中获得网络信息。

就我自己出现过这种情况?

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

网站地图

Top