diff --git a/2021summerOfCode/Summer_2021_Student_Program.html b/2021summerOfCode/Summer_2021_Student_Program.html
index af98c2c10..d5f76a136 100644
--- a/2021summerOfCode/Summer_2021_Student_Program.html
+++ b/2021summerOfCode/Summer_2021_Student_Program.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/assisted_teleop.html b/2021summerOfCode/projects/assisted_teleop.html
index b81a35b2f..a63485398 100644
--- a/2021summerOfCode/projects/assisted_teleop.html
+++ b/2021summerOfCode/projects/assisted_teleop.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/create_configuration_assistant.html b/2021summerOfCode/projects/create_configuration_assistant.html
index 130b327f6..336444044 100644
--- a/2021summerOfCode/projects/create_configuration_assistant.html
+++ b/2021summerOfCode/projects/create_configuration_assistant.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/create_plugins.html b/2021summerOfCode/projects/create_plugins.html
index 4200ba0c8..1e1bab624 100644
--- a/2021summerOfCode/projects/create_plugins.html
+++ b/2021summerOfCode/projects/create_plugins.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/dynamic.html b/2021summerOfCode/projects/dynamic.html
index 92ec30bd1..fa9465d6e 100644
--- a/2021summerOfCode/projects/dynamic.html
+++ b/2021summerOfCode/projects/dynamic.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/grid_maps.html b/2021summerOfCode/projects/grid_maps.html
index 5d1f43cbd..fdc5bf6bb 100644
--- a/2021summerOfCode/projects/grid_maps.html
+++ b/2021summerOfCode/projects/grid_maps.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/localization.html b/2021summerOfCode/projects/localization.html
index 7bc7d48ad..f855483a7 100644
--- a/2021summerOfCode/projects/localization.html
+++ b/2021summerOfCode/projects/localization.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/multithreading.html b/2021summerOfCode/projects/multithreading.html
index 87203014f..bb40001d5 100644
--- a/2021summerOfCode/projects/multithreading.html
+++ b/2021summerOfCode/projects/multithreading.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/navigation_rebranding.html b/2021summerOfCode/projects/navigation_rebranding.html
index 7585fc9a6..fe5be601c 100644
--- a/2021summerOfCode/projects/navigation_rebranding.html
+++ b/2021summerOfCode/projects/navigation_rebranding.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/safety_node.html b/2021summerOfCode/projects/safety_node.html
index ed9ba0f58..19d5057e9 100644
--- a/2021summerOfCode/projects/safety_node.html
+++ b/2021summerOfCode/projects/safety_node.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/semantics.html b/2021summerOfCode/projects/semantics.html
index e8f3b68ac..7f2fd5abf 100644
--- a/2021summerOfCode/projects/semantics.html
+++ b/2021summerOfCode/projects/semantics.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/spinners.html b/2021summerOfCode/projects/spinners.html
index 744b4e639..42785cd09 100644
--- a/2021summerOfCode/projects/spinners.html
+++ b/2021summerOfCode/projects/spinners.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/testing.html b/2021summerOfCode/projects/testing.html
index f7b6487af..b63e10fd2 100644
--- a/2021summerOfCode/projects/testing.html
+++ b/2021summerOfCode/projects/testing.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/2021summerOfCode/projects/twist_n_config.html b/2021summerOfCode/projects/twist_n_config.html
index 6288a5b44..c43d2110c 100644
--- a/2021summerOfCode/projects/twist_n_config.html
+++ b/2021summerOfCode/projects/twist_n_config.html
@@ -111,6 +111,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/_sources/concepts/index.rst.txt b/_sources/concepts/index.rst.txt
index eba3d60c7..38a69bd9e 100644
--- a/_sources/concepts/index.rst.txt
+++ b/_sources/concepts/index.rst.txt
@@ -196,6 +196,11 @@ Use of a separate smoother over one that is included as part of a planner is adv
The general task in Nav2 for a smoother is to receive a path and return its improved version.
However, for different input paths, criteria of the improvements and methods of acquiring them exist, creating space for a multitude of smoothers that can be registered in this server.
+Robot Footprints
+================
+
+It is worth remarking that in the cost maps, we set a robot's footprint either as a circle of radius ``robot_radius`` or as a vector of points ``footprint`` representing an arbitrary polygon if the robot is non-circular. This can also be adjusted over time using the costmap's ``~/footprint`` topic, which will update the polygon over time as needed due to changes in the robot's state, such as movement of an attached manipulator, picking up a pallet, or other actions that adjust a robot's shape. That polygon will then automatically be used by the planners and controllers.
+
Waypoint Following
==================
diff --git a/_sources/configuration/packages/configuring-costmaps.rst.txt b/_sources/configuration/packages/configuring-costmaps.rst.txt
index c3d966f9c..638188243 100644
--- a/_sources/configuration/packages/configuring-costmaps.rst.txt
+++ b/_sources/configuration/packages/configuring-costmaps.rst.txt
@@ -44,7 +44,7 @@ Costmap2D ROS Parameters
============== =======
Description
- Ordered set of footprint points passed in as a string, must be closed set. For example, the following defines a square base with side lengths of 0.2 meters `footprint: "[ [0.1, 0.1], [0.1, -0.1], [-0.1, -0.1], [-0.1, 0.1] ]"`.
+ Ordered set of footprint points passed in as a string, must be closed set. For example, the following defines a square base with side lengths of 0.2 meters `footprint: "[ [0.1, 0.1], [0.1, -0.1], [-0.1, -0.1], [-0.1, 0.1] ]"`. Note that this can also be adjusted over time using the costmap's ``~/footprint`` topic, which will update the polygon over time as needed due to changes in the robot's state, such as movement of an attached manipulator, picking up a pallet, or other actions that adjust a robot's shape.
:global_frame:
diff --git a/_sources/setup_guides/footprint/setup_footprint.rst.txt b/_sources/setup_guides/footprint/setup_footprint.rst.txt
index fc972ab99..866cdbd93 100644
--- a/_sources/setup_guides/footprint/setup_footprint.rst.txt
+++ b/_sources/setup_guides/footprint/setup_footprint.rst.txt
@@ -19,6 +19,8 @@ For the global costmap footprint, the decision to choose between the ``robot_rad
For the local costmap footprint, it is typical for non-circular robots to be set up with ``footprint`` (polygon). Some situations where this is not recommended is when you do not have enough computing resources to implement collision avoidance algorithms on a polygon-shaped footprint. Another possible reason to use ``robot_radius`` (circular) for the local costmap is when the robot is very small relative to its environment such that precise collision avoidance is not necessary. However, generally the local trajectory planner should use the actual footprint polygon of the robot.
+Note that this can also be adjusted over time using the costmap's ``~/footprint`` topic, which will update the polygon over time as needed due to changes in the robot's state, such as movement of an attached manipulator, picking up a pallet, or other actions that adjust a robot's shape. That polygon will then automatically be used by the planners and controllers.
+
Configuring the Robot's Footprint
*********************************
In this section, we will configure the footprint of ``sam_bot`` such that ``footprint`` (polygon) is used for the local costmap and ``robot_radius`` (circular) is used for the global costmap. We will utilize the default configuration file of Nav2 with a modified footprint parameter for the global and local costmaps.
diff --git a/about/index.html b/about/index.html
index 008a9fd1f..1ada6716f 100644
--- a/about/index.html
+++ b/about/index.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/about/related_projects.html b/about/related_projects.html
index b7e6afa63..06c883142 100644
--- a/about/related_projects.html
+++ b/about/related_projects.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/about/robots.html b/about/robots.html
index 7ef818b68..ed814061e 100644
--- a/about/robots.html
+++ b/about/robots.html
@@ -112,6 +112,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/about/ros1_comparison.html b/about/ros1_comparison.html
index d8eb2b2f3..5634754f8 100644
--- a/about/ros1_comparison.html
+++ b/about/ros1_comparison.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/behavior_trees/index.html b/behavior_trees/index.html
index 0eb546ed8..e53154e4f 100644
--- a/behavior_trees/index.html
+++ b/behavior_trees/index.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/behavior_trees/overview/detailed_behavior_tree_walkthrough.html b/behavior_trees/overview/detailed_behavior_tree_walkthrough.html
index adbc1c3ff..62c7c56cd 100644
--- a/behavior_trees/overview/detailed_behavior_tree_walkthrough.html
+++ b/behavior_trees/overview/detailed_behavior_tree_walkthrough.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/behavior_trees/overview/nav2_specific_nodes.html b/behavior_trees/overview/nav2_specific_nodes.html
index 00166af6d..c2653fe97 100644
--- a/behavior_trees/overview/nav2_specific_nodes.html
+++ b/behavior_trees/overview/nav2_specific_nodes.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/behavior_trees/trees/follow_point.html b/behavior_trees/trees/follow_point.html
index f1878d2fa..df9185ae7 100644
--- a/behavior_trees/trees/follow_point.html
+++ b/behavior_trees/trees/follow_point.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/behavior_trees/trees/nav_through_poses_recovery.html b/behavior_trees/trees/nav_through_poses_recovery.html
index 892d7016f..96f968f4e 100644
--- a/behavior_trees/trees/nav_through_poses_recovery.html
+++ b/behavior_trees/trees/nav_through_poses_recovery.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/behavior_trees/trees/nav_to_pose_and_pause_near_goal_obstacle.html b/behavior_trees/trees/nav_to_pose_and_pause_near_goal_obstacle.html
index 619726afd..288d474df 100644
--- a/behavior_trees/trees/nav_to_pose_and_pause_near_goal_obstacle.html
+++ b/behavior_trees/trees/nav_to_pose_and_pause_near_goal_obstacle.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/behavior_trees/trees/nav_to_pose_recovery.html b/behavior_trees/trees/nav_to_pose_recovery.html
index 5b1086b42..2268e8021 100644
--- a/behavior_trees/trees/nav_to_pose_recovery.html
+++ b/behavior_trees/trees/nav_to_pose_recovery.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/behavior_trees/trees/nav_to_pose_with_consistent_replanning_and_if_path_becomes_invalid.html b/behavior_trees/trees/nav_to_pose_with_consistent_replanning_and_if_path_becomes_invalid.html
index e84e197f5..13059e5e7 100644
--- a/behavior_trees/trees/nav_to_pose_with_consistent_replanning_and_if_path_becomes_invalid.html
+++ b/behavior_trees/trees/nav_to_pose_with_consistent_replanning_and_if_path_becomes_invalid.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/behavior_trees/trees/odometry_calibration.html b/behavior_trees/trees/odometry_calibration.html
index a6105b463..f07ce2062 100644
--- a/behavior_trees/trees/odometry_calibration.html
+++ b/behavior_trees/trees/odometry_calibration.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/commander_api/index.html b/commander_api/index.html
index ea704a16e..692a0cbb5 100644
--- a/commander_api/index.html
+++ b/commander_api/index.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
diff --git a/concepts/index.html b/concepts/index.html
index 0bd4b8ecf..e66a49726 100644
--- a/concepts/index.html
+++ b/concepts/index.html
@@ -113,6 +113,7 @@
Controllers
Behaviors
Smoothers
+Robot Footprints
Waypoint Following
@@ -1148,6 +1149,10 @@ Smoothers