# Profile: Indoor Mode (Issue #506)
# Conservative settings for safe indoor navigation
#   - Lower max velocities for precision and safety (0.4 m/s)
#   - Tighter costmap inflation for confined spaces (0.35m)
#   - Aggressive obstacle detection (RealSense depth + LIDAR + surround cameras)
#   - Smaller local costmap window (3m x 3m)

velocity_smoother:
  ros__parameters:
    max_velocity: [0.4, 0.0, 0.8]      # Conservative: 0.4 m/s forward, 0.8 rad/s angular
    min_velocity: [-0.2, 0.0, -0.8]

controller_server:
  ros__parameters:
    controller_frequency: 10.0          # Hz
    FollowPath:
      max_vel_x: 0.4                    # Conservative forward speed
      max_vel_theta: 0.8
      min_vel_x: -0.2
      vx_samples: 20
      vy_samples: 5
      vtheta_samples: 20
      sim_time: 1.7
      critics:
        ["RotateToGoal", "Oscillation", "BaseObstacle", "GoalAlign", "PathAlign", "PathDist", "GoalDist"]
      BaseObstacle.scale: 0.03          # Slightly aggressive obstacle avoidance
      PathAlign.scale: 32.0
      GoalAlign.scale: 24.0
      PathDist.scale: 32.0
      GoalDist.scale: 24.0
      RotateToGoal.scale: 32.0

local_costmap:
  local_costmap:
    ros__parameters:
      width: 3                          # 3m x 3m rolling window
      height: 3
      resolution: 0.05
      update_frequency: 10.0
      plugins: ["obstacle_layer", "voxel_layer", "inflation_layer"]

      inflation_layer:
        cost_scaling_factor: 3.0
        inflation_radius: 0.35          # Tighter inflation for confined spaces

global_costmap:
  global_costmap:
    ros__parameters:
      resolution: 0.05
      update_frequency: 5.0
      plugins: ["static_layer", "obstacle_layer", "inflation_layer"]

      inflation_layer:
        cost_scaling_factor: 3.0
        inflation_radius: 0.35          # Tighter inflation for confined spaces
