- in
Eurobot-2026-Localization/docker/.env, make sure codes below are uncommentedand codes below are commentedCOMPOSE_PROFILES = communication, onboard-running USER_UID=1004
COMPOSE_PROFILES=local-developing USER_UID=1000 - in
Eurobot-2026-Localization/docker, open the compose file.docker compose up
- in
localization-runcontainer, build the packages and start the localization system.colcon build source install/setup.bash ros2 launch localization_bringup localization.launch.py
- pass argument to launch file when executing
ros2 launchros2 launch localization_bringup localization.launch.py mode:=[yellow/blue]
- in
localization_bringup, run the bash script to manually publish initial pose after executing the launch file./publish_initial_pose.sh [x] [y] [yaw]
Eurobot-2026-Localization/
├── docker/ ### Dockerfile, .env, .yaml...
└── devel/
├── localization_bringup/ ### system related package
│ └── src/
├── monitor/ ### healthcheck
│ └── src/
├── utils/ ### general functions
│ └── src/
├── interfaces/ ### custom messages
│ └── src/
└── core_algorithm/
├── local/ ### pose tracking
│ ├── imu_drive/ # low pass filter & covariance
│ │ └── src/
│ └── wheel_inertial_odometry/ # IMU + Wheel Odom
│ └── src/
├── global/ ### global localization
│ └── lidar_localization/ # find beacon, trilateration
│ └── src/
├── fusion/ ### ekf
│ └── src/
└── rival/ ### rival localization
├── imm_filter/
│ └── src/
└── rival_localization/
└── src/