Skip to content

fix(localization): remove duplicated config files - #1054

Merged
sasakisasaki merged 9 commits into
autowarefoundation:mainfrom
sasakisasaki:chore-remove-duplicated-config-files-in-localization
Jul 7, 2026
Merged

sasakisasaki merged 9 commits into
autowarefoundation:mainfrom
sasakisasaki:chore-remove-duplicated-config-files-in-localization

Conversation

@sasakisasaki

@sasakisasaki sasakisasaki commented Apr 28, 2026

Copy link
Copy Markdown
Contributor

Description

Remove the autoware_core_localization/config folder as it contains duplicated files which are existing in the following path:

  • $(find-pkg-share autoware_ekf_localizer)/config/ekf_localizer.param.yaml
  • $(find-pkg-share autoware_stop_filter)/config/stop_filter.param.yaml
  • $(find-pkg-share autoware_twist2accel)/config/twist2accel.param.yaml
  • $(find-pkg-share autoware_pose_initializer)/config/pose_initializer.param.yaml
  • $(find-pkg-share autoware_downsample_filters)/config/voxel_grid_downsample_filter_node.param.yaml
  • $(find-pkg-share autoware_ndt_scan_matcher)/config/ndt_scan_matcher.param.yaml

Related links

  • None

How was this PR tested?

We will use the planning simulation for runtime check. As the tests are done, we will make this PR as "Ready for review".
=> Tests are done 👍

Steps for tests

  • Clone autoware_core with this PR's branch
$ git clone -b chore-remove-duplicated-config-files-in-localization git@github.com:sasakisasaki/autoware.core.git
$ cd autoware_core
  • Then prepare core.repos with the following contents
repositories:
  core/autoware_cmake:
    type: git
    url: https://github.com/autowarefoundation/autoware_cmake.git
    version: 1.2.0
  autoware/autoware_simple_planning_simulator:
    type: git
    url: https://github.com/autowarefoundation/autoware_simple_planning_simulator.git
    version: separate-planning-simulator-dependency-from-autoware-universe
  autoware/tier4_autoware_msgs:
    type: git
    url: https://github.com/tier4/tier4_autoware_msgs.git
    version: tier4/universe
  • Do vcs import
$ mkdir src
$ vcs import src < core.repos
  • Install build dependencies, and do colcon build
$ source /opt/ros/humble/setup.bash
$ rosdep install -y --from-paths ./ --ignore-src --rosdistro $ROS_DISTRO
$ colcon build --base-paths ./ --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
  • Apply patch for fixing the launch files so we can run planning simulation based on autoware_core. Download autoware_core.patch then,
$ patch -p1 < autoware_core.patch
  • Run planning simulation with is_planning_simulation:=true. We use two terminals:
    • Terminal 1
# Assume under `autoware_core` folder
$ source install/setup.bash
$ MAP_NAME=nishishinjuku_autoware_map
$ ros2 launch autoware_core autoware_core.launch.xml \
    vehicle_model:=autoware_sample_vehicle \
    sensor_model:=autoware_sample_sensor_kit \
    map_path:=$HOME/autoware_map/$MAP_NAME \
    is_planning_simulation:=true

Then set the initial pose and goal pose as the attached video
Screencast from 2026-04-28 20:13:40.webm

  • Terminal 2
    Enable autonomous mode and switch to DRIVE gear
# Assume under `autoware_core` folder
$ source install/setup.bash
$ ros2 topic pub /system/operation_mode/state autoware_adapi_v1_msgs/msg/OperationModeState '{mode: 2, is_autoware_control_enabled: true, is_autonomous_mode_available: true}' --once
$ ros2 topic pub /control/command/gear_cmd autoware_vehicle_msgs/msg/GearCommand 'command: 2' --once

You will see the ego vehicle start running as the attached video.

  • Run without is_planning_simulation:=true. I verified all the localization modules are launched without any error.
    • During this check, I found the following error for down-sample module that of sensing component, which should be fixed as a separated PR as this PR's scope is localization component.
[voxel_grid_downsample_filter_node-6] terminate called after throwing an instance of 'rclcpp::exceptions::UninitializedStaticallyTypedParameterException'
[voxel_grid_downsample_filter_node-6]   what():  Statically typed parameter 'input_frame' must be initialized.

Conclusion for Tests

From these observation, I judged we can launch all the localization modules by this PR.

Notes for reviewers

The config files under the autoware_core_localization/config sometimes contains out-of-date parameters which are not used in the code. This PR will remove the duplicated files and make sure that the config files are up-to-date.

Interface changes

  • None

Effects on system behavior

If anybody is using the config files under the autoware_core_localization/config folder, they need to change the path to the config files in their launch files. The new path should be as written in the description section.

Signed-off-by: Junya Sasaki <junya.sasaki@tier4.jp>
@github-actions

github-actions Bot commented Apr 28, 2026

Copy link
Copy Markdown

Thank you for contributing to the Autoware project!

🚧 If your pull request is in progress, switch it to draft mode.

Please ensure:

@sasakisasaki sasakisasaki self-assigned this Apr 28, 2026
@sasakisasaki sasakisasaki added run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) component:localization Vehicle's position determination in its environment. (auto-assigned) labels Apr 28, 2026
@codecov

codecov Bot commented Apr 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 54.06%. Comparing base (8d210ee) to head (477f179).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1054      +/-   ##
==========================================
- Coverage   60.79%   54.06%   -6.74%     
==========================================
  Files         433      401      -32     
  Lines       25821    24334    -1487     
  Branches    12257    11028    -1229     
==========================================
- Hits        15698    13155    -2543     
- Misses       7134     9747    +2613     
+ Partials     2989     1432    -1557     
Flag Coverage Δ *Carryforward flag
daily-humble 55.18% <ø> (-12.58%) ⬇️ Carriedforward from 61757f3
daily-jazzy 55.28% <ø> (-12.49%) ⬇️ Carriedforward from 61757f3
differential-humble 0.12% <ø> (-55.77%) ⬇️
differential-jazzy 0.14% <ø> (-55.72%) ⬇️
total 49.64% <ø> (-0.81%) ⬇️ Carriedforward from 61757f3
total-humble 55.18% <ø> (-12.57%) ⬇️ Carriedforward from 61757f3
total-humble-agnocast 55.04% <ø> (-12.01%) ⬇️ Carriedforward from 61757f3
total-jazzy 55.30% <ø> (-12.48%) ⬇️ Carriedforward from 61757f3
total-jazzy-agnocast 55.15% <ø> (-11.95%) ⬇️ Carriedforward from 61757f3

*This pull request uses carry forward flags. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@sasakisasaki
sasakisasaki marked this pull request as ready for review April 28, 2026 11:41
sasakisasaki and others added 5 commits May 2, 2026 20:18
Signed-off-by: Junya Sasaki <junya.sasaki@tier4.jp>
  Until this commit, some parameters such as `ekf_enabled`, `gnss_enabled`, ... etc are not passed.
  It seems we were using the hard-coded values in the previous `pose_initializer.param.yaml`.
  So applied fixes to:
    * Pass pose initializer flags via launch include
    * Add defaults and bool params in pose initializer launch

Signed-off-by: Junya Sasaki <junya.sasaki@tier4.jp>
@xmfcx
xmfcx force-pushed the chore-remove-duplicated-config-files-in-localization branch from fc0bba4 to 61757f3 Compare May 2, 2026 17:18

@xmfcx xmfcx left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Direction looks right.

5 of 6 configs were either byte-identical to upstream or trivially aligned (EKF only gains the new diagnostics_publish_frequency: 10.0).

The <include>-of-upstream pattern matches what tier4_universe_launch already does.

Approving, with two items to address in a follow-up PR. Please prioritize that follow-up, ideally before the next release branch is cut.


1. voxel_grid_downsample_filter_node will crash at startup on this launch path.

You already saw and documented this.

The deleted autoware_core_localization/config/voxel_grid_downsample_filter.param.yaml was the only thing supplying input_frame / output_frame.

Upstream sensing/autoware_downsample_filters/config/voxel_grid_downsample_filter_node.param.yaml does not define them.

The node constructor at voxel_grid_downsample_filter_node.cpp:41-42 calls declare_parameter<std::string>(\"input_frame\") with no default, so it throws ParameterUninitializedException.

Inlining the <node> at autoware_core_localization.launch.xml:18-22 bypasses the upstream launch wrapper that would otherwise inject those frames.

Easiest fix in the follow-up: swap the inlined <node> for an <include> of \$(find-pkg-share autoware_downsample_filters)/launch/voxel_grid_downsample_filter_node.launch.xml.

That wrapper already defaults input_frame / output_frame to base_link, and matches how every other upstream launch is brought in by this file.

Until that lands, anyone launching autoware_core_localization.launch.xml outside is_planning_simulation:=true mode hits this crash. Please don't let the follow-up sit.


2. voxel_size_* silently changes from 3.0 m to 1.5 m.

Output density rises roughly 8x, and NDT input cost changes with it.

Whichever value is intended for the core profile, please call it out in the follow-up PR's description so it is not a silent tuning change.


Nice cleanup otherwise. Happy to see the duplication go.

@sasakisasaki

Copy link
Copy Markdown
Contributor Author

@mitsudome-r Could you kindly review this PR please? 🙏

@sasakisasaki sasakisasaki changed the title chore(localization): remove duplicated config files fix(localization): remove duplicated config files May 13, 2026
…nfig-files-in-localization

Signed-off-by: Junya Sasaki <junya.sasaki@tier4.jp>
…f github.com:sasakisasaki/autoware.core into chore-remove-duplicated-config-files-in-localization

Signed-off-by: Junya Sasaki <junya.sasaki@tier4.jp>
Signed-off-by: Junya Sasaki <junya.sasaki@tier4.jp>
@mergify

mergify Bot commented Jul 7, 2026

Copy link
Copy Markdown

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

@sasakisasaki
sasakisasaki merged commit 5582266 into autowarefoundation:main Jul 7, 2026
49 of 62 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

component:localization Vehicle's position determination in its environment. (auto-assigned) run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants