diff --git a/nav2_behavior_tree/src/behavior_tree_engine.cpp b/nav2_behavior_tree/src/behavior_tree_engine.cpp index de3eb350863..54857bce807 100644 --- a/nav2_behavior_tree/src/behavior_tree_engine.cpp +++ b/nav2_behavior_tree/src/behavior_tree_engine.cpp @@ -67,7 +67,9 @@ BehaviorTreeEngine::run( result = tree->tickOnce(); - onLoop(); + if (result == BT::NodeStatus::RUNNING || result == BT::NodeStatus::IDLE) { + onLoop(); + } if (!loopRate.sleep()) { RCLCPP_DEBUG_THROTTLE(