EasyNavigationο
Overviewο
EasyNavigation (EasyNav) is an open-source navigation system for ROS 2, designed to be:
β Representation-agnostic, supporting a wide variety of environment models: 2D costmaps, NavMap 3D navigable surfaces, Bonxai probabilistic voxel maps, or hybrid combinations.
β‘ Real-time capable, minimizing latency between perception and action.
π§© Modular, through a plugin architecture and reusable navigation stacks.
π Lightweight and simple to deploy, using a single binary and a parameter file for configuration.
π§ͺ Simulation-ready, thanks to a rich collection of PlayGrounds with different robots and environments.
π‘οΈ Built for safety and runtime reconfiguration: a safety mode to deploy it next to a certified safety channel (validated configuration, velocity limits, real-time monitoring, heartbeat), and a recovery system that detects failures and reacts to them, even reconfiguring the navigation while it runs.
π― Ready for every user: hobbyists who want a robot navigating in minutes, academia and research labs that need to experiment with new methods, and industry that needs predictable, safe behavior on real robots.
EasyNav is developed by the Intelligent Robotics Lab at Universidad Rey Juan Carlos and aims to be a flexible, extensible, and practical alternative to existing ROS 2 navigation stacks like Nav2.
We believe in Open Source and in giving the community multiple options to choose from, that adapt to different scenarios and constraints. EasyNav is not intended to replace Nav2, which we admire and take as inspiration. Instead, it aims to offer flexibility and meet specific requirements in areas where Nav2 might be less suitable.
It is structured around:
A core, responsible for real-time data processing and behavior execution.
Stacks, which specialize the system for different environment types or use cases.
Plugins, that define localization, path planning, control, and map representation methods.
PlayGrounds, which offer complete simulation scenarios with robots, maps, and example configurations: indoors, outdoors and with omnidirectional robots.
Whether you are building robots for indoor or outdoor environments, structured or unstructured terrains, EasyNav provides the flexibility and performance needed to achieve robust autonomous navigation.
We invite you to explore, use, and contribute to this project!
π§ Already using Nav2? The Migration Guide shows how to try EasyNav on your robot.
π Learn more about the contributors and project organization in About and Contact.
π¦ Source code: github.com/EasyNavigation/EasyNavigation
π’ Want to contribute? Feel free to open an issue, suggest a feature, or submit a pull request!
If you use this software in your work, please consider citing our next paper.