URDF viewer and checker: tree, joints and a quick skeleton drawing

Paste a URDF to see its link and joint tree and catch structural mistakes before you load it in ROS 2. It checks missing links, a missing root, extra parents and missing limits, and draws the skeleton.

The drawing is a side view (x across, z up) of the joint positions at zero angles. It does not read meshes or run physics.

How it is calculated

The tool parses the XML in your browser, lists every link and joint, and walks the tree from the single root link. Each joint origin (xyz and roll-pitch-yaw) is applied to its parent frame, so child positions come out in the root frame. It then flags a joint whose parent or child link is not defined, a link with two parent joints, more or fewer than one root, and revolute or prismatic joints without limits.

A worked example

The sample has a base, two revolute joints and a fixed wrist. The joints stack 0.1 m, 0.25 m and 0.2 m upward, so the hand sits 0.55 m above the base and the drawing shows a straight vertical arm. Change the elbow origin to 0.25 0 0 to see the forearm sticking out sideways.

Common mistakes

  • Leaving out the limit element on a revolute joint.
  • Defining two root links by forgetting a joint.
  • Mixing degrees and radians. URDF angles are in radians.

URDF in ROS 2, robot arm playground, ROS 2 tf2.

Last reviewed: November 2026. This tool runs in your browser and sends nothing anywhere. Treat its output as a first check, not a guarantee.