@@ -1102,6 +1102,7 @@ static void ws_bootstrap_start_configuration_learn(protocol_interface_info_entry
1102
1102
// Clear all temporary information
1103
1103
ws_bootstrap_ip_stack_reset (cur );
1104
1104
1105
+ cur -> ws_info -> pas_requests = 0 ;
1105
1106
// Reset advertisement solicit trickle to start discovering network
1106
1107
trickle_start (& cur -> ws_info -> trickle_pan_config_solicit , & trickle_params_pan_discovery );
1107
1108
trickle_inconsistent_heard (& cur -> ws_info -> trickle_pan_config_solicit , & trickle_params_pan_discovery );
@@ -1334,7 +1335,6 @@ static void ws_bootstrap_event_handler(arm_event_s *event)
1334
1335
ws_bootstrap_ip_stack_activate (cur );
1335
1336
ws_bootstrap_rpl_activate (cur );
1336
1337
ws_bootstrap_network_start (cur );
1337
- ws_bootstrap_advertise_start (cur );
1338
1338
// Wait for RPL start
1339
1339
if (cur -> bootsrap_mode == ARM_NWK_BOOTSRAP_MODE_6LoWPAN_BORDER_ROUTER ) {
1340
1340
ws_bootstrap_event_routing_ready (cur );
@@ -1345,6 +1345,7 @@ static void ws_bootstrap_event_handler(arm_event_s *event)
1345
1345
break ;
1346
1346
case WS_ROUTING_READY :
1347
1347
tr_info ("Routing ready" );
1348
+ ws_bootstrap_advertise_start (cur );
1348
1349
ws_bootstrap_state_change (cur , ER_BOOTSRAP_DONE );
1349
1350
break ;
1350
1351
case WS_ADDRESS_ADDED :
@@ -1483,7 +1484,13 @@ void ws_bootstrap_seconds_timer(protocol_interface_info_entry_t *cur, uint32_t s
1483
1484
}
1484
1485
if (trickle_timer (& cur -> ws_info -> trickle_pan_config_solicit , & trickle_params_pan_discovery , seconds )) {
1485
1486
// send PAN Configuration solicit
1487
+ if (cur -> ws_info -> pas_requests > PCS_MAX ) {
1488
+ // if MAX PCS sent restart discovery
1489
+ ws_bootstrap_event_discovery_start (cur );
1490
+ return ;
1491
+ }
1486
1492
tr_info ("Send PAN configuration Solicit" );
1493
+ cur -> ws_info -> pas_requests ++ ;
1487
1494
ws_bootstrap_pan_config_solicit (cur );
1488
1495
}
1489
1496
if (trickle_timer (& cur -> ws_info -> trickle_pan_advertisement , & trickle_params_pan_discovery , seconds )) {
0 commit comments