Robots Atlas>ROBOTS ATLAS
Nav2

Motion planning · Control & Planning

Nav2

1.4.0 Kilted

Active Open source Real-time capable API available
CATEGORYMotion planning · Control & Planning
READINESSTRL 9
ADOPTION SCALEIndustry Standard
LICENSESApache-2.0
FIRST RELEASE2020

Nav2 (Navigation 2) is the flagship ROS 2 navigation stack, developed by Open Navigation LLC and the ROS 2 community. It is the successor to the original ROS Navigation Stack and brings autonomous-vehicle-grade technology down to mobile robotics, optimized for indoor and outdoor robots. The architecture is built on Behavior Trees (BT) orchestrating independent task servers (planner, controller, behavior, smoother, route, waypoint follower).

Key components: Planner Server (NavFn, Smac Planner 2D/Hybrid/Lattice, Theta*) generates the global path; Controller Server (DWB, MPPI, Regulated Pure Pursuit, Graceful Controller, Rotation Shim) computes local velocity commands; Costmap 2D with plugins (StaticLayer, ObstacleLayer, VoxelLayer, InflationLayer, Denoise, KeepoutFilter, SpeedFilter) builds the environment representation; AMCL provides particle-filter localization on a known map; Collision Monitor and Detector deliver a safety layer. Smoother Server (Constrained, Savitzky-Golay, Simple) smooths paths, and Waypoint Follower executes multi-step missions.

Nav2 supports all major kinematics: differential drive, omnidirectional, Ackermann, and legged — used by quadruped and humanoid robots. Active ROS 2 distribution support: Humble (LTS), Jazzy, Kilted, Rolling. The project is used in production by 100+ companies worldwide, including TurtleBot 3/4, Nova Carter, Otto Motors, Clearpath Robotics, and many research robots.

Type & Roles
Software types
Control Stack

A Control Stack is the set of software components responsible for control logic, motion planning, command execution, and coordination of a robot's actuators. It receives high-level goals or waypoints (from planning or AI layers) and translates them into low-level actuator commands, closed-loop feedback control, and safety checks. Common implementations include MoveIt (arm manipulation), Nav2 (mobile navigation), and custom whole-body control stacks for humanoids.

API Library

An API Library is a software package that exposes programmatic interfaces for communicating with a device, service, or system. In robotics it typically forms a lightweight integration layer built on top of the manufacturer's official API or an open-source project, abstracting low-level protocol details and providing language-native bindings (Python, C++, Java, etc.).

Developer Tool

A Developer Tool is software designed to support the development workflow, including configuration, debugging, testing, monitoring, validation, and integration of robotic and embedded systems. Examples include IDE plugins, visual debuggers, log analysers, hardware-in-the-loop (HIL) test harnesses, and code-generation utilities specific to robotics platforms.

Select an item to see its description.
Main category
Control & PlanningMiddlewarePerception & Vision Software
Roles in robotics ecosystem
Motion PlanningSLAM & LocalizationPerception
Robot Control

Robot Control denotes the role of software responsible for motion control, command execution, coordination of actuating elements and the direct operational logic of the robot.

Select an item to see its description.
Software family
Family
ROS 2 Ecosystem
Maturity & Adoption
9 / 9
Proven in operational conditions
ResearchPrototypeProduction
Adoption scaleIndustry Standard
Maintenance statusMaintained by Foundation
First release2020
Last update15 November 2024
Deployments

TurtleBot 3/4, Clearpath Husky/Jackal/Boxer, Nova Carter (NVIDIA), Otto Motors AGV, Stretch RE-2 (Hello Robot), Unitree Go2 (community ports). 100+ commercial deployments in logistics, healthcare, and hospitality.

Community

2.9k★ on GitHub ros-navigation/navigation2, 1.3k forks, 300+ contributors, regular ROSCon talks. Professional support from Open Navigation LLC (Steve Macenski).

ROS supportCompatibility with ROS / ROS 2 ecosystem
Official ROS 2 PackagePakiet dostępny w oficjalnym rejestrze ROS 2 przez rosdep / apt (packages.ros.org)
ROS 2 Nav2 PluginPlugin do frameworka Nav2 (Navigation2) dla ROS 2
System capabilities
Open source
Source code is publicly available under an open-source license — enables security audits, custom modifications, and integration without licensing barriers.
Real-time capable
Designed with timing-determinism guarantees — meets the requirements of control loops, safety systems, and tasks demanding low, predictable latency.
⟨/⟩
API available
The software exposes a programmable interface (REST, gRPC, SDK, or language bindings) that enables automation and integration with other systems.
📦
Pre-built / binary
Distributed as ready-to-use binary packages, container images, or installers — no need to build from source.
Programming languages
C++Python
Operating systems
Ubuntu 22.04Ubuntu 20.04DebianJetPack Linux
Minimum hardware requirements
Minimum hardware requirements
CPUDual-core x86-64 or ARM64 (Jetson Orin Nano OK for small robots)
RAM (GB)4
GPUOptional GPU for AI-based planners (MPPI Cost Critic with TensorRT)
Disk (GB)5

Requires a fully working ROS 2 install (Humble/Jazzy/Kilted). High-resolution 2D costmaps need more RAM.

Packaging & distribution
Package managers
apt / debROS 2 Binary Release (packages.ros.org)colcon (ROS 2 build tool)rosdep / bloomDocker / Docker HubSource – CMake / ament_cmake
CPU architectures
x86_64 (AMD64)ARM64 / AArch64NVIDIA Jetson – AArch64 (JetPack)
Installation difficulty
LevelModerate
Protocols and interfaces
Communication protocols
DDS (Data Distribution Service)Fast DDS (eProsima)CycloneDDSROS 2 TopicsROS 2 ServicesROS 2 Actions
Hardware interfaces
Ethernet 1000BASE-T (Gigabit Ethernet)USB 3.0 / 3.1 Gen 1
Latency classes
Soft Real-Time (20–100 ms)Hard Real-Time (5–20 ms)
Deployment types
On RobotEdgeLocal WorkstationContainerized
Supported simulators
Gazebo Harmonic
Gazebo Garden
Gazebo Fortress
Gazebo Classic (Gazebo 11)
NVIDIA Isaac Sim
Webots
Official Docker images
ghcr.io/ros-navigation/navigation2ros:humbleros:jazzy
Licenses
Apache-2.0Apache License 2.0v2.0

License family: Permissive

ModificationDistributionCommercial useSublicensingPrivate useROS-compatibleOSI approvedFSF Free/LibreRequires attributionPatent grant
BSD-3-ClauseBSD 3-Clause Licensev3-Clause

License family: Permissive

ModificationDistributionCommercial useSublicensingPrivate useROS-compatibleOSI approvedFSF Free/LibreRequires attribution
Version history
1.4.0 KiltedMay 2025

Route Server stable, Following Server, MPPI Eigen refactor (+40% perf).

1.3.0 JazzyMay 2024

Docking Server, Loopback Simulator, Route Server preview.

1.2.0 IronMay 2023

Collision Monitor, Velocity Smoother, Denoise Layer.

1.1.0 HumbleMay 2022

LTS for ROS 2 Humble, MPPI controller, Smac Planner Lattice.

1.0.0May 2020

First stable Nav2 release for ROS 2 Foxy.