Skip to content

Commit 4dfa3e3

Browse files
committed
[skip ci] publish latest
Signed-off-by: fmrico <fmrico@gmail.com>
1 parent 7750fdf commit 4dfa3e3

28 files changed

Lines changed: 928 additions & 173 deletions

_sources/build_install/index.rst.txt

Lines changed: 28 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,7 @@
55
Build & Install
66
=================
77

8-
This page explains how to install and build the **EasyNavigation (EasyNav)** framework.
9-
If you are new here, start with :doc:`../getting_started/index` for a high‑level overview,
10-
then return to this guide to set up your development environment.
8+
This page explains how to install and build the **EasyNavigation (EasyNav)** framework and how to set up your development environment.
119

1210
.. contents:: On this page
1311
:local:
@@ -18,7 +16,8 @@ Supported platforms
1816

1917
EasyNav targets modern Linux distributions and ROS 2 releases:
2018

21-
- **Ubuntu 24.04 (Noble)** — ROS 2 *kilted* (primary CI target)
19+
- **Ubuntu 24.04 (Noble)** — ROS 2 *jazzy* (primary CI target)
20+
- **Ubuntu 24.04 (Noble)** — ROS 2 *kilted*
2221
- **Ubuntu 24.04 (Noble)** — ROS 2 *rolling*
2322
- Other platforms may work but are not actively tested.
2423

@@ -30,15 +29,15 @@ Prerequisites
3029
-------------
3130

3231

33-
1. ROS 2 (kilted or rolling)
32+
1. ROS 2 (jazzy, kilted or rolling)
3433

3534
Follow the official ROS 2 installation instructions for your platform.
3635
Ensure your ROS 2 environment is sourced before building EasyNav.
3736

3837
.. code-block:: bash
3938
4039
# Example (adjust to your ROS 2 distro):
41-
source /opt/ros/kilted/setup.bash
40+
source /opt/ros/jazzy/setup.bash
4241
4342
2. ROS dependencies
4443

@@ -60,7 +59,7 @@ Binary packages will be provided via APT for Ubuntu + ROS 2 as they become avail
6059
.. code-block:: bash
6160
6261
sudo apt update
63-
sudo apt install ros-kilted-easynav
62+
sudo apt install ros-jazzy-easynav
6463
6564
Build from source
6665
-----------------
@@ -72,21 +71,24 @@ We recommend a standard ROS 2 workspace:
7271

7372
.. code-block:: bash
7473
75-
mkdir -p ~/ros/ros2/easynav_ws/src
76-
cd ~/ros/ros2/easynav_ws
74+
mkdir -p ~/easynav_ws/src
75+
cd ~/easynav_ws
7776
7877
Clone sources
7978
~~~~~~~~~~~~~
8079

81-
You can retrieve EasyNav sources either by cloning the monorepo(s) you need:
80+
You can retrieve EasyNav sources by cloning the monorepo(s) you need:
8281

8382
.. code-block:: bash
8483
85-
cd ~/ros/ros2/easynav_ws/src
86-
# Core/meta repositories (examples — adjust to your needs)
87-
git clone https://github.com/EasyNavigation/EasyNavigation.git
88-
git clone https://github.com/EasyNavigation/easynav_plugins.git
89-
git clone https://github.com/EasyNavigation/NavMap.git
84+
# Adjust workspace dir and branches to your needs
85+
cd ~/easynav_ws/src
86+
# Clone the main EasyNavigation repositories
87+
git clone -b jazzy https://github.com/EasyNavigation/EasyNavigation.git
88+
git clone -b jazzy https://github.com/EasyNavigation/NavMap.git
89+
git clone -b jazzy https://github.com/EasyNavigation/easynav_plugins.git
90+
# Clone yaets dependency
91+
git clone -b jazzy-devel https://github.com/fmrico/yaets.git
9092
9193
9294
Install dependencies
@@ -96,7 +98,7 @@ From the workspace root, resolve all package dependencies with rosdep:
9698

9799
.. code-block:: bash
98100
99-
cd ~/ros/ros2/easynav_ws
101+
cd ~/easynav_ws
100102
rosdep install --from-paths src --ignore-src -y -r
101103
102104
Configure and build
@@ -106,35 +108,28 @@ Use colcon to build the workspace. You may enable symlink-install for faster ite
106108

107109
.. code-block:: bash
108110
109-
cd ~/ros/ros2/easynav_ws
111+
cd ~/easynav_ws
110112
colcon build --symlink-install
111113
112114
Source the overlay
113115
~~~~~~~~~~~~~~~~~~
114116

115117
.. code-block:: bash
116118
117-
# Source ROS 2 first (kilted / rolling)
118-
source /opt/ros/kilted/setup.bash
119+
# Source ROS 2 first (jazzy / kilted / rolling)
120+
source /opt/ros/jazzy/setup.bash
119121
# Then source the workspace
120-
source ~/ros/ros2/easynav_ws/install/setup.bash
122+
source ~/easynav_ws/install/setup.bash
121123
122124
Run tests (optional)
123125
~~~~~~~~~~~~~~~~~~~~
124126

125127
.. code-block:: bash
126128
127-
cd ~/ros/ros2/easynav_ws
129+
cd ~/easynav_ws
128130
colcon test --ctest-args -R easynav # run EasyNav-related tests
129131
colcon test-result --verbose
130132
131-
Common options
132-
--------------
133-
134-
- **Release build:** ``--cmake-args -DCMAKE_BUILD_TYPE=Release``
135-
- **Verbose build:** ``--event-handlers console_cohesion+``
136-
- **Single package:** ``--packages-select <pkg_name>``
137-
- **Parallel jobs:** ``--parallel-workers $(nproc)``
138133
139134
Troubleshooting
140135
---------------
@@ -151,16 +146,16 @@ Troubleshooting
151146

152147
.. code-block:: bash
153148
154-
source /opt/ros/kilted/setup.bash
155-
source ~/ros/ros2/easynav_ws/install/setup.bash
149+
source /opt/ros/jazzy/setup.bash
150+
source ~/easynav_ws/install/setup.bash
156151
157152
- **ABI / compiler issues**
158153

159154
Remove the build, install, and log folders and rebuild:
160155

161156
.. code-block:: bash
162157
163-
cd ~/ros/ros2/easynav_ws
158+
cd ~/easynav_ws
164159
rm -rf build install log
165160
colcon build --merge-install
166161
@@ -171,7 +166,7 @@ Since this is a workspace overlay, you can remove it safely:
171166

172167
.. code-block:: bash
173168
174-
rm -rf ~/ros/ros2/easynav_ws
169+
rm -rf ~/easynav_ws
175170
176171
Next steps
177172
----------
@@ -181,4 +176,4 @@ Next steps
181176
- :doc:`../developer_guide/index` — in-depth documentation for developers and contributors
182177

183178
.. toctree::
184-
:hidden:
179+
:hidden:

_sources/getting_started/index.rst.txt

Lines changed: 39 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -25,50 +25,61 @@ We will run a ready-to-use simulation setup consisting of:
2525
Workspace layout
2626
----------------
2727

28-
Assuming you followed the :doc:`../build_install/index` instructions, your workspace should look like this:
28+
Assuming you followed the :doc:`../build_install/index` instructions and build from sources, your workspace should look like this:
2929

3030
.. code-block:: text
3131
32-
~/ros/ros2/easynav_ws/
32+
~/easynav_ws/
3333
├── src/
34-
│ ├── EasyNavigation/ # If installed from sources
34+
│ ├── EasyNavigation/
3535
│ ├── easynav_plugins/
36-
│ ├── easynav_playground_kobuki/
37-
── easynav_indoor_testcase/
36+
│ ├── NavMap/
37+
── yaets/
3838
├── install/
3939
├── build/
4040
└── log/
4141
42-
If you are missing any of the required repositories, clone them manually:
42+
Additionally, this guide will make use of a simple indoor testcase and a Gazebo simulation environment.
43+
Clone these repositories into your `src` folder and instell their dependencies:
4344

4445
.. code-block:: bash
4546
46-
cd ~/ros/ros2/easynav_ws/src
47-
git clone https://github.com/EasyNavigation/easynav_plugins.git
47+
cd ~/easynav_ws/src
4848
git clone https://github.com/EasyNavigation/easynav_playground_kobuki.git
4949
git clone https://github.com/EasyNavigation/easynav_indoor_testcase.git
50+
# Clone third-party dependencies using vcs tool
51+
vcs import . < easynav_playground_kobuki/thirdparty.repos
52+
# Install dependencies via rosdep
53+
cd ~/easynav_ws
54+
rosdep install --from-paths src --ignore-src -y -r
55+
56+
Rebuild the workspace to include the new packages and source the environment:
57+
58+
.. code-block:: bash
59+
60+
cd ~/easynav_ws
61+
colcon build --symlink-install
62+
63+
# Source ROS 2 first (jazzy / kilted / rolling)
64+
source /opt/ros/jazzy/setup.bash
65+
# Then source the workspace
66+
source ~/easynav_ws/install/setup.bash
67+
5068
5169
Repository overview
5270
-------------------
5371

54-
- **easynav_plugins** — contains multiple plugins and stacks, including the *Simple Stack* used in this example.
55-
- **easynav_playground_kobuki** — Gazebo simulation for the Turtlebot2 (Kobuki).
56-
- **easynav_indoor_testcase** — provides maps, parameter files, and RViz configurations for indoor navigation.
72+
- **easynav_playground_kobuki** --> Gazebo simulation for the Turtlebot2 (Kobuki).
73+
- **easynav_indoor_testcase** --> provides maps, parameter files, and RViz configurations for indoor navigation.
5774

5875
Simulation setup
5976
----------------
6077

61-
Once your workspace is built and sourced:
62-
63-
.. code-block:: bash
64-
65-
cd ~/ros/ros2/easynav_ws
66-
source install/setup.bash
67-
68-
Launch the simulator:
78+
Once your workspace is built and sourced, launch the Gazebo simulation:
6979

7080
.. code-block:: bash
7181
82+
cd ~/easynav_ws
7283
ros2 launch easynav_playground_kobuki playground_kobuki.launch.py
7384
7485
This starts a Gazebo Harmonic simulation of a Turtlebot2 robot in a domestic environment.
@@ -77,6 +88,7 @@ This starts a Gazebo Harmonic simulation of a Turtlebot2 robot in a domestic env
7788
:align: center
7889
:alt: Turtlebot2 simulation in Gazebo
7990

91+
8092
To save resources, you can disable the Gazebo graphical interface:
8193

8294
.. code-block:: bash
@@ -90,8 +102,9 @@ With the simulator running, open a **new terminal** and source your workspace ag
90102

91103
.. code-block:: bash
92104
93-
cd ~/ros/ros2/easynav_ws
94-
source install/setup.bash
105+
cd ~/easynav_ws
106+
source /opt/ros/jazzy/setup.bash
107+
source ~/easynav_ws/install/setup.bash
95108
96109
Now start the EasyNav system using the predefined parameter file:
97110

@@ -105,12 +118,13 @@ This command launches the EasyNav core using the *Simple Stack* configuration lo
105118
Visualizing in RViz2
106119
--------------------
107120

108-
Open another terminal and start RViz2 with the provided configuration:
121+
Open another new terminal and start RViz2 with the provided configuration:
109122

110123
.. code-block:: bash
111124
125+
# Note: First, source the environment as shown previously.
112126
ros2 run rviz2 rviz2 \
113-
-d src/easynav_indoor_testcase/rviz/simple.rviz \
127+
-d ~/easynav_ws/src/easynav_indoor_testcase/rviz/simple.rviz \
114128
--ros-args -p use_sim_time:=true
115129
116130
.. image:: ../images/kobuki_simple.png
@@ -149,7 +163,7 @@ You can launch it in a new terminal after starting the EasyNav system:
149163

150164
.. code-block:: bash
151165
152-
ros2 run easynav_system tui_main
166+
ros2 run easynav_system tui
153167
154168
The TUI is divided into several panels:
155169

@@ -166,7 +180,7 @@ This interface is especially useful for debugging or performance evaluation with
166180
:alt: EasyNav Terminal User Interface
167181
:width: 90%
168182

169-
and press **q** to exit.
183+
Press **q** to exit the TUI.
170184

171185
.. note::
172186

@@ -188,7 +202,6 @@ You have successfully launched **EasyNav** with a simulated robot!
188202

189203
Continue exploring:
190204

191-
- :doc:`../build_install/index` — learn how to build, install, and configure EasyNav from source.
192205
- :doc:`../howtos/index` — follow practical guides for mapping, navigation, and real robot deployment.
193206
- :doc:`../developer_guide/index` — dive into the internal design and architecture of the EasyNav framework.
194207

about/index.html

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@
6464
<li class="toctree-l3"><a class="reference internal" href="../build_install/index.html#run-tests-optional">Run tests (optional)</a></li>
6565
</ul>
6666
</li>
67-
<li class="toctree-l2"><a class="reference internal" href="../build_install/index.html#common-options">Common options</a></li>
6867
<li class="toctree-l2"><a class="reference internal" href="../build_install/index.html#troubleshooting">Troubleshooting</a></li>
6968
<li class="toctree-l2"><a class="reference internal" href="../build_install/index.html#uninstall-clean">Uninstall / clean</a></li>
7069
<li class="toctree-l2"><a class="reference internal" href="../build_install/index.html#next-steps">Next steps</a><ul class="simple">
@@ -173,6 +172,34 @@
173172
</li>
174173
</ul>
175174
</li>
175+
<li class="toctree-l2"><a class="reference internal" href="../howtos/index.html#bonxai-stack">Bonxai Stack</a><ul>
176+
<li class="toctree-l3"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html">Building Bonxai and NavMap Maps from a Recorded ROSBag</a><ul>
177+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#overview">Overview</a></li>
178+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#align-the-frames-world-map">1. Align the Frames (world → map)</a></li>
179+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#play-the-rosbag">2. Play the ROSBag</a></li>
180+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#launch-easynav-with-bonxai-and-navmap-maps-managers">3. Launch EasyNav with Bonxai and NavMap Maps Managers</a></li>
181+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#navmap-build-parameters">4. NavMap Build Parameters</a></li>
182+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#visualize-in-rviz2">5. Visualize in RViz2</a></li>
183+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#save-the-maps">6. Save the Maps</a></li>
184+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#summary">7. Summary</a></li>
185+
</ul>
186+
</li>
187+
</ul>
188+
</li>
189+
<li class="toctree-l2"><a class="reference internal" href="../howtos/index.html#navmap-stack">NavMap Stack</a><ul>
190+
<li class="toctree-l3"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html">Building Bonxai and NavMap Maps from a Recorded ROSBag</a><ul>
191+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#overview">Overview</a></li>
192+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#align-the-frames-world-map">1. Align the Frames (world → map)</a></li>
193+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#play-the-rosbag">2. Play the ROSBag</a></li>
194+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#launch-easynav-with-bonxai-and-navmap-maps-managers">3. Launch EasyNav with Bonxai and NavMap Maps Managers</a></li>
195+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#navmap-build-parameters">4. NavMap Build Parameters</a></li>
196+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#visualize-in-rviz2">5. Visualize in RViz2</a></li>
197+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#save-the-maps">6. Save the Maps</a></li>
198+
<li class="toctree-l4"><a class="reference internal" href="../howtos/bonxai_navmap_from_rosbag.html#summary">7. Summary</a></li>
199+
</ul>
200+
</li>
201+
</ul>
202+
</li>
176203
<li class="toctree-l2"><a class="reference internal" href="../howtos/index.html#controllers">Controllers</a><ul>
177204
<li class="toctree-l3"><a class="reference internal" href="../howtos/serest_controller.html">SeReST Controller Fine-Tuning</a><ul>
178205
<li class="toctree-l4"><a class="reference internal" href="../howtos/serest_controller.html#overview">Overview</a></li>
@@ -209,6 +236,17 @@
209236
<li class="toctree-l4"><a class="reference internal" href="../howtos/costmap_multirobot.html#tips-gotchas">Tips &amp; Gotchas</a></li>
210237
</ul>
211238
</li>
239+
<li class="toctree-l3"><a class="reference internal" href="../howtos/ros2_easynav_cli.html">ros2 easynav — EasyNav CLI Extensions</a><ul>
240+
<li class="toctree-l4"><a class="reference internal" href="../howtos/ros2_easynav_cli.html#name">NAME</a></li>
241+
<li class="toctree-l4"><a class="reference internal" href="../howtos/ros2_easynav_cli.html#synopsis">SYNOPSIS</a></li>
242+
<li class="toctree-l4"><a class="reference internal" href="../howtos/ros2_easynav_cli.html#description">DESCRIPTION</a></li>
243+
<li class="toctree-l4"><a class="reference internal" href="../howtos/ros2_easynav_cli.html#commands">COMMANDS</a></li>
244+
<li class="toctree-l4"><a class="reference internal" href="../howtos/ros2_easynav_cli.html#options-common">OPTIONS (Common)</a></li>
245+
<li class="toctree-l4"><a class="reference internal" href="../howtos/ros2_easynav_cli.html#exit-status">EXIT STATUS</a></li>
246+
<li class="toctree-l4"><a class="reference internal" href="../howtos/ros2_easynav_cli.html#examples">EXAMPLES</a></li>
247+
<li class="toctree-l4"><a class="reference internal" href="../howtos/ros2_easynav_cli.html#see-also">SEE ALSO</a></li>
248+
</ul>
249+
</li>
212250
</ul>
213251
</li>
214252
</ul>

0 commit comments

Comments
 (0)