<!-- base_footprint: planar frame at GROUND level (wheel contact), for 2D navigation.
Wheels dia 158 mm -> rolling radius 79 mm below the axle plane (= base_link origin).
- Child of base_link (NOT parent): hw_node publishes /odom with child_frame_id
- base_link and the EKF broadcasts odom->base_link, so base_link must stay the
- odometry-attached frame; the footprint hangs 79 mm below it. -->
+ PARENT of base_link (inverted 2026-10-13): the launch sets enable_odom_tf=False on
+ hw_node, so nothing else claims the odom->* edge; the EKF (base_link_frame:
+ base_footprint) broadcasts odom->base_footprint and this static joint completes
+ the tree: map -> odom -> base_footprint -> base_link. -->
<joint name="base_footprint_to_base_link" type="fixed">
<parent link="base_footprint"/>
<child link="base_link"/>