diff --git a/df_datalink_sp/src/networking/link_layer/link_layer.c b/df_datalink_sp/src/networking/link_layer/link_layer.c index 2ee9195..7d915bc 100644 --- a/df_datalink_sp/src/networking/link_layer/link_layer.c +++ b/df_datalink_sp/src/networking/link_layer/link_layer.c @@ -1137,15 +1137,17 @@ static int32_t Linklayer_Routine(L2_INST *instPtr) L2_IterEditNode(instPtr->nodeList, &increment, IntcNodeTTL); #ifdef DATALINK_ENABLE_AUTORECONNECT - L2_IterDeleteNode(instPtr->nodeList, IsNodeConnected); - if (L2_GetNodeListLen(instPtr->nodeList) < instPtr->config.netScale - 1) - { - // reset scan process - L2_EVENT l2Event; - // Assert Net-Setup Done. - l2Event.event = (L2_GetNodeType(instPtr) == L2_NODE_HEAD) ? L2_EV_LOST_NODE : L2_EV_LOST_CXN; - l2Event.msg = NULL; - AssertL2Event(instPtr, &l2Event); + if(L2_GetMainState(instPtr) != L2_INIT_STATE){ + L2_IterDeleteNode(instPtr->nodeList, IsNodeConnected); + if (L2_GetNodeListLen(instPtr->nodeList) < instPtr->config.netScale - 1) + { + // reset scan process + L2_EVENT l2Event; + // Assert Net-Setup Done. + l2Event.event = (L2_GetNodeType(instPtr) == L2_NODE_HEAD) ? L2_EV_LOST_NODE : L2_EV_LOST_CXN; + l2Event.msg = NULL; + AssertL2Event(instPtr, &l2Event); + } } #endif return Status;