I am aiming to achieve smooth robot navigation using the Waypoint Follower action server in the nav2 stack. Specifically, I want the robot to drive around a room close to the walls without slowing down when reaching waypoints.

Here's what I've tried:

Waypoint Follower: I provided the action server with a set of waypoints. Even after using the WaitAtWaipoint plugin with waypoint_pause_duration = 0, the robot still slows down at each waypoint. I observed that a new path calculation occurs every time a waypoint is reached. This makes me think I can't achieve continuous motion with this approach since the path should ideally be calculated before reaching the waypoints.

NavThroughPoses: This didn’t work as expected since in certain scenarios, like narrow corridors, the controller tries to skip waypoints.

Custom Planner Plugin: Implementing this was challenging, especially when creating a path that starts and ends at the same point. For instance, I want the robot to drive around the room without reporting that the destination has been reached, but I had to resort to workarounds to achieve this.

Given these challenges, is there an alternative or suggestion you'd recommend to ensure smooth navigation in this context?


1 Answer 1


Try NavThroughPoses. The WPF stops at each pose, that's what it does and what it is documented to do. If you would not like your robot to stop at the given waypoints, then WPF is not the right solution for you. NavThroughPoses computes the path through many poses and does not stop between them; that is the right solution.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.