diff --git a/src/core/thread/mle_router.cpp b/src/core/thread/mle_router.cpp index 7fe9b36d0..8a76169c9 100644 --- a/src/core/thread/mle_router.cpp +++ b/src/core/thread/mle_router.cpp @@ -125,6 +125,11 @@ void MleRouter::SetRouterRoleEnabled(bool aEnabled) break; } + + if (IsRouterRoleEnabled() && IsAttached() && !mStateUpdateTimer.IsRunning()) + { + mStateUpdateTimer.Start(kStateUpdatePeriod); + } } otError MleRouter::BecomeRouter(ThreadStatusTlv::Status aStatus)