The URDF describes the mechanical structure of the drone — frame, arms, motor mounts, sensor brackets — as a tree of <link> elements connected by <joint> elements, each with mass and inertia. Gazebo uses this to compute physics; the ROS 2 stack uses it through robot_state_publisher to know where each frame is relative to base_link.
Current status: placeholder. The current iris_claudedrone model uses the stock iris_with_ardupilot chassis as a base, with minor visual customizations described in iris_claudedrone. A full custom URDF (with mass-and-inertia tuning matched to the planned BOM) is on the backlog for the real-drone bring-up phase.
Planned structure
base_link
├── arm_front_right (joint: fixed)
│ └── motor_front_right (joint: revolute → propeller)
├── arm_front_left
│ └── motor_front_left
├── arm_back_right
│ └── motor_back_right
├── arm_back_left
│ └── motor_back_left
└── sensor_mount_bottom
├── tf_luna_link
└── vl53l0x_array_link
Where to go next
- iris_claudedrone customization
- Sensor mounts
- Hardware overview — what the URDF needs to match