Robots Atlas>ROBOTS ATLAS
Nav2

ROS / ROS 2 · Control & Planning

Nav2

Jazzy (1.3)

Active Open source Real-time capable API available
CATEGORYROS / ROS 2 · Control & Planning
READINESSTRL 8
ADOPTION SCALEEarly Development
LICENSESApache-2.0
FIRST RELEASE2019

Nav2 (Navigation2) is the official navigation stack for ROS 2, maintained by Open Navigation LLC and the ROS community. It provides a complete set of tools for autonomous navigation of mobile robots: global path planning (NavFn, Smac Planner), local obstacle avoidance (DWB, MPPI), localization (AMCL, SLAM Toolbox), and behavior management via Behavior Trees.

Nav2 operates as a set of ROS 2 nodes communicating via standard topics and services. The system supports 2D maps (costmap2d), sensor handling (LiDAR, depth cameras), odometry, and SLAM. It integrates with rclcpp lifecycle nodes and supports composable nodes for improved performance.

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.

Middleware

Middleware is a software layer that mediates between applications, services, sensors, drivers, and execution layers. In robotics, middleware is typically responsible for inter-process communication, message passing, hardware abstraction, and module integration within a single system. The most widely used robotics middleware is ROS (Robot Operating System), which provides a publish-subscribe message bus, service calls, and a rich ecosystem of packages.

Select an item to see its description.
Main category
Control & PlanningMiddleware
Roles in robotics ecosystem
Motion PlanningSLAM & LocalizationRobot ControlPerception
Software family
Family
ROS 2 Ecosystem
Maturity & Adoption
8 / 9
Prototype / pilot phase
ResearchPrototypeProduction
Adoption scaleEarly Development
Maintenance statusDiscontinued – Closed Source
First release2019
Last update15 November 2024
Deployments

TurtleBot3 (official reference platform); Fetch Robotics; iRobot Create 3; Amazon Astro; various AMR platforms in warehouse automation; used in ROSCon demo robots.

Community

TurtleBot3 (official reference platform); Fetch Robotics; iRobot Create 3; Amazon Astro; various AMR platforms in warehouse automation; used in ROSCon demo robots.

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 Lifecycle NodeWęzeł ROS 2 z zarządzaniem cyklem życia (lifecycle managed node)
ROS 2 Action Server / Service ServerSerwer akcji lub serwisów ROS 2 jako główny interfejs integracyjny
ROS 2 Component (Composable Node)Węzeł ROS 2 zarejestrowany jako composable node (component) dla intraprocess communication
ROS 2 Launch IntegrationGotowe pliki launch ROS 2 jako forma integracji systemowej
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.04Debian
Minimum hardware requirements
Minimum hardware requirements
RAM (GB)4
Disk (GB)10
Packaging & distribution
Package managers
apt / debcolcon (ROS 2 build tool)Docker / Docker HubROS 2 Binary Release (packages.ros.org)
CPU architectures
x86_64 (AMD64)ARM64 / AArch64
Installation difficulty
LevelModerate
Protocols and interfaces
Communication protocols
DDS (Data Distribution Service)ROS 2 TopicsROS 2 ServicesROS 2 Actions
Hardware interfaces
Ethernet 1000BASE-T (Gigabit Ethernet)USB 3.0 / 3.1 Gen 1UART / RS-232
Latency classes
Soft Real-Time (20–100 ms)Hard Real-Time (5–20 ms)
Deployment types
On RobotEdgeContainerized
Supported simulators
Gazebo Harmonic
Gazebo Classic (Gazebo 11)
Webots
NVIDIA Isaac Sim
Official Docker images
foxglove/studioros:jazzy-perceptionnvcr.io/nvidia/isaac/ros:humble-isaac-ros-visual-slam
Licenses
Apache-2.0Apache License 2.0v2.0

License family: Permissive

ModificationDistributionCommercial useSublicensingPrivate useROS-compatibleOSI approvedFSF Free/LibreRequires attributionPatent grant
Version history
Jazzy (1.3)May 2024

ROS 2 Jazzy Jalisco LTS support. Route Server, improved Costmap 2D, new velocity smoother plugins.

Humble (1.1)May 2022

ROS 2 Humble LTS support. New planners: Smac Planner (Hybrid-A*, State Lattice). Improved controller: MPPI. Behavior Trees v4.

1.0 (Foxy)Jun 2020

First stable release of Nav2 for ROS 2 Foxy Fitzroy. Basic path planning and collision avoidance.