Developers Guide

The EasyNav Developers Guide provides a technical overview of the internal architecture of the framework and its main design principles. It is intended for developers who wish to understand the codebase, extend the system with new modules, or contribute to its evolution.

EasyNav is designed as a lightweight, modular navigation framework built on ROS 2. Its architecture relies on clear interfaces, shared data structures, and composable components that can operate in both simulation and real robotic platforms.

Overview

This guide is organized into several chapters, each covering a key subsystem of EasyNav:

  • Design Principles β€” Describes the architectural foundations of EasyNav, its modular organization, and execution model.

  • Blackboard and NavState β€” Explains the shared memory model that interconnects all modules.

  • Perceptions System β€” Details how sensory data is represented, processed, and accessed in a unified way.

  • Commanding Layer β€” Describes how the planner, controller, and system nodes cooperate to generate robot motion.

Each chapter provides conceptual explanations, code structure guidelines, and practical examples extracted from the current EasyNav implementation.

Further Reading

For installation and basic usage instructions, refer to the Build & Install and Getting Started sections. For stack-specific tutorials and usage examples, see the HowTos and Practical Guides.