fix: use complete vendor message overlay for rosbag

This commit is contained in:
LengedZhao
2026-08-10 16:01:28 +08:00
parent 5851c26d43
commit 4ba0f63758
3 changed files with 15 additions and 3 deletions

View File

@@ -9,7 +9,6 @@ required_setups=(
/opt/ros/jazzy/setup.bash
/home/nvidia/xos/setup.bash
/opt/robot_tele_server/install/setup.bash
"$APP_DIR/ros2_py/install/setup.bash"
)
for setup_file in "${required_setups[@]}"; do
if [[ ! -f "$setup_file" ]]; then
@@ -19,6 +18,12 @@ for setup_file in "${required_setups[@]}"; do
# shellcheck disable=SC1090
source "$setup_file"
done
# Do not source $APP_DIR/ros2_py here. That deliberately minimal package only
# supplies the two Python wire types used by tg3_local_teleop.py; placing its
# partial ros2_bridge_msgs libraries ahead of the vendor's complete C++ package
# makes rosbag2 fail to load RobotState/ArmCtrl type support. The recorder must
# use /opt/robot_tele_server/install for the complete vendor message package.
set -u
exec python3 "$APP_DIR/data_recorder_node.py" \