global-costmap-config

Configure Nav2 global costmap parameters for static map integration and path planning.

Updated Aug 16, 2026
One-click install
npx skills add https://github.com/three1324/yeonjinautomotive --skill global-costmap-config-three1324
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: global-costmap-config
Source: https://github.com/three1324/yeonjinautomotive/tree/main/.claude/skills/global-costmap-config
Command: npx skills add https://github.com/three1324/yeonjinautomotive --skill global-costmap-config-three1324

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Setting up the Nav2 global costmap involves many interdependent parameters (frames, resolution, footprint, layers), and misconfiguration causes planners to route through unknown space, ignore obstacles, or fail silently. This Skill provides correct settings, a complete YAML template, and debugging guidance. ## Core Features & Use Cases - Parameter Guidance: Explains global_frame, resolution, track_unknown_space, and update frequency settings with correct values and rationale. - Footprint Configuration: Covers both circular robot_radius and polygon footprint definitions, including how they affect inflation behavior. - Layer Selection Advice: Clarifies when to include obstacle or voxel layers based on sensor range and whether SLAM or a static map is used. - Use Case: A robotics engineer brings up Nav2 on a new robot and needs a working global_costmap YAML that loads a static map, marks lidar obstacles, and inflates costs around walls. ## Quick Start Ask the assistant to generate a Nav2 global costmap YAML configuration for a robot with a 2D lidar and a static map.

Frequently Asked Questions about global-costmap-config

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I configure the Nav2 global costmap?

Set global_frame to map, robot_base_frame to base_link, resolution to 0.05, and define either robot_radius or a polygon footprint. Add static, obstacle, and inflation layers as plugins, then tune inflation_radius and cost_scaling_factor.

Should I use robot_radius or footprint in Nav2 costmap?

Use robot_radius for circular robots since it is simpler and faster for collision checking. Use a polygon footprint for non-circular robots, but never set both because footprint takes precedence and causes confusion.

When should the global costmap include obstacle layers?

Include obstacle or voxel layers when using long-range lidar over 5 meters or when running in SLAM mode without a static map. Skip them for short-range sensors under 3 meters since the local costmap handles dynamic obstacles.

Why is my Nav2 global costmap empty?

An empty costmap usually means the static map is not being published or TF is broken. Verify the map with ros2 topic echo /map --once and confirm the sensor frame connects to the map frame through the TF tree.

What does track_unknown_space do in Nav2?

track_unknown_space controls whether unknown cells in the static map stay unknown in the costmap. When true, the planner avoids unmapped areas; when false, unknown space is treated as free and the planner may route through it.