Xacro Support

Many real robot descriptions — especially ROS-native ones like the Franka Emika Panda and FR3 — aren’t published as a plain URDF at all, but as Xacro (.xacro), an XML macro language layered on top of URDF. ARMOR expands Xacro on-device, so you can import a robot straight from its native repository without running a separate build step first.

What gets expanded

When you load a .xacro file (or select a folder whose entry point is one), ARMOR’s Xacro preprocessor resolves:

The result is expanded into a real, in-memory URDF — links, joints, and mesh references — the same representation ARMOR uses for any other robot, so every editor, viewer, and export feature works identically afterward. There’s nothing in the app that distinguishes a robot that started as Xacro from one that started as a plain URDF once it’s imported.

Franka Emika Panda robot arm rendered in ARMOR's 3D viewer, imported from the gallery's Xacro-only source repository

The Franka Emika Panda, imported straight from its Xacro-only source repository — same viewer, editor, and export tools as any other robot.

What this means in practice

Next Steps