0.19Apache-2.0
strict
core22
The ros2-nav2 navigation snap
The snap provides mapping, localization and navigation capabilities.
The ros2-nav2 snap is designed as a general package that offers navigation functionality for robots.
To ensure maximum flexibility for users, it is intentionally provided without any preset configurations.
The ros2-nav2 snap must be configured by means of snap parameters.
The available configuration parameters are listed below:
The slam-config, localization-config, and navigation-config parameters
are essentials for the proper functioning of these applications.
These parameters must be set either to a local configuration file accessible
within the SNAP environment (such as $SNAPCOMMON), or to a URL hosting the desired configuration.
Additionally, a set of configurationtemplates is available atÂ
In case you want to reinitialize the templates, you can simply issue the following command:
As mentioned, those parameters can also be can also be configured with a URL as follows:
Note: the URL must be reachable by the snap. When using a URL, the configuration file will be downloaded everytime the app is launched.
Therefore a configuration update upstream will be applied with the application relaunch.
The mapping application can be launched as,
After launching the app, simply drive the robot around until you've mapped the area.
Once finished, stop the mapping with,
This will terminate the mapping and automatically
save the map in '${SNAPCOMMON}/maps/newmap.{yaml,png}'.
If mapping is not required, a map can also be loaded via the
The parameter can either be set to a local file with:
Or by means of a URL with:
The image associated to the map is automatically extracted from the yaml file.
With the environment mapped, one can make use of the autonomous navigation.
To do so, start the localisation and navigation with:
Those application can be then stopped with:
The ros2-nav2 snap is designed as a general package that offers navigation functionality for robots.
To ensure maximum flexibility for users, it is intentionally provided without any preset configurations.
The ros2-nav2 snap must be configured by means of snap parameters.
The available configuration parameters are listed below:
- simulation (string, default: "False")
- slam-config (string, default: "")
- map-saver-config (string, default: "")
- map-yaml-path (string, default: "")
- map (string, default="${SNAPCOMMON}/maps/currentmap.yaml")
- localization-config (string, default: "")
- navigation-config (string, default: "")The slam-config, localization-config, and navigation-config parameters
are essentials for the proper functioning of these applications.
These parameters must be set either to a local configuration file accessible
within the SNAP environment (such as $SNAPCOMMON), or to a URL hosting the desired configuration.
Additionally, a set of configurationtemplates is available atÂ
$SNAPCOMMON/configurationtemplates. Those files are only meant to be a template, they can be modified and used by setting them to the parameters. An example of using a template for slam-config is as follows:snap set ros2-nav2 slam-config="/var/snap/ros2-nav2/common/configurationtemplates/slamparamstemplate.yaml"In case you want to reinitialize the templates, you can simply issue the following command:
ros2-nav2.reset-config-templatesAs mentioned, those parameters can also be can also be configured with a URL as follows:
snap set ros2-nav2 <app-name>-config="https://raw.githubusercontent.com/robot-repo/<app-name>params.yaml"Note: the URL must be reachable by the snap. When using a URL, the configuration file will be downloaded everytime the app is launched.
Therefore a configuration update upstream will be applied with the application relaunch.
The mapping application can be launched as,
snap start ros2-nav2.slamAfter launching the app, simply drive the robot around until you've mapped the area.
Once finished, stop the mapping with,
snap stop ros2-nav2.slamThis will terminate the mapping and automatically
save the map in '${SNAPCOMMON}/maps/newmap.{yaml,png}'.
If mapping is not required, a map can also be loaded via the
map-yaml-path parameter.The parameter can either be set to a local file with:
snap set ros2-nav2 map-yaml-path="$SNAP_COMMON/maps/map.yaml"Or by means of a URL with:
snap set ros2-nav2 map-yaml-path="https://raw.githubusercontent.com/robot-repo/map.yaml"The image associated to the map is automatically extracted from the yaml file.
With the environment mapped, one can make use of the autonomous navigation.
To do so, start the localisation and navigation with:
snap start ros2-nav2.localization
snap start ros2-nav2.navigationThose application can be then stopped with:
snap stop ros2-nav2.localization
snap stop ros2-nav2.navigationUpdate History
0.1 (9)1 Apr 2026, 21:28 UTC
19 Apr 2024, 14:32 UTC
6 Aug 2024, 10:43 UTC
1 Apr 2026, 21:28 UTC