Funded by the European Union through the Horizon Europe programme under Grant Agreement No. 101070254 (CoreSense), and by MICIU/AEI/10.13039/501100011033 and ERDF/EU under grants PERMAP PID2024-161761OB-C21 and PLANNAV PID2024-161761OB-C22 (AURORAS).
📋 Roadmap Project: RoadMap
EasyNav Plugins provides the official collection of plugins for the Easy Navigation (EasyNav) framework.
These plugins extend the navigation core with planners, controllers, maps managers, localizers and recovery systems compatible with ROS 2.
Each plugin resides in its own ROS 2 package and is registered via pluginlib, allowing dynamic loading at runtime.
| Distribution | Status |
|---|---|
| humble | |
| jazzy | |
| kilted | |
| lyrical | |
| rolling |
With APT (Humble, Jazzy, Kilted and Lyrical), install the plugins your configuration uses:
sudo apt install ros-<distro>-easynav-costmap-maps-manager ros-<distro>-easynav-regulated-pp-controllerThey are also available with Pixi and from source (cloning this repository builds all of them). See the installation guide.
Path planning plugins implementing A*, costmap, or NavMap–based methods.
| Package | Description | Link |
|---|---|---|
easynav_costmap_planner |
A* planner over Costmap2D. |
README |
easynav_simple_planner |
Simple A* planner for SimpleMap. |
README |
easynav_navmap_planner |
A* planner over a NavMap mesh. | README |
Motion controllers for trajectory tracking and reactive behaviors.
| Package | Description | Link |
|---|---|---|
easynav_vff_controller |
Vector Field Force (VFF) reactive controller. | README |
easynav_mppi_controller |
Model Predictive Path Integral (MPPI) controller. | README |
easynav_simple_controller |
Simple proportional controller for testing. | README |
easynav_serest_controller |
SeReST (Safe Reactive Steering) controller. | README |
easynav_mpc_controller |
Model Predictive Controller (MPC). | README |
easynav_regulated_pp_controller |
Regulated Pure Pursuit controller, with optional Dynamic Window (DWPP) extension. | README |
Map management plugins that provide, update, and store different environment representations.
| Package | Description | Link |
|---|---|---|
easynav_navmap_maps_manager |
Manages NavMap mesh layers. | README |
easynav_bonxai_maps_manager |
Manages Bonxai probabilistic voxel maps. | README |
easynav_octomap_maps_manager |
Manages OctoMap 3D occupancy trees. | README |
easynav_costmap_maps_manager |
Manages Costmap2D layers with filters. | README |
easynav_simple_maps_manager |
Minimal example map manager (SimpleMap). | README |
easynav_routes_maps_manager |
Manages navigation routes (2D or 3D), editable in RViz with interactive markers. | README |
Localization plugins based on different map types and sensors.
| Package | Description | Link |
|---|---|---|
easynav_simple_localizer |
Basic localizer for SimpleMap–based setups. | README |
easynav_navmap_localizer |
AMCL-like localizer operating on NavMap meshes. | README |
easynav_costmap_localizer |
AMCL-like localizer using Costmap2D. | README |
easynav_mhamcl_localizer |
Multi-Hypothesis AMCL localizer using Costmap2D: global localization and kidnapping recovery. | README |
easynav_fusion_localizer |
Fuses any number of odometry sources (wheels, IMU, GPS...) with robot_localization. |
README |
Recovery systems detect navigation problems (lost localization, a dead sensor, a stuck robot...) and react to them.
| Package | Description | Link |
|---|---|---|
easynav_diagnostic_recovery |
Diagnosis-driven recovery system: safety reflexes, evaluators and mitigations with priority-based arbitration. | README |
easynav_simple_recovery |
A simple recovery system, written as a starting point for your own. | README |
Types shared by several plugins.
| Package | Description |
|---|---|
easynav_costmap_common |
Costmap2D and the cost values used by the costmap plugins. |
easynav_simple_common |
SimpleMap, used by the simple plugins. |
All packages in this repository are released under Apache-2.0 unless stated otherwise in the individual package.