Jointly Convert a file

How to convert a SolidWorks assembly to URDF

SolidWorks can't export URDF on its own. Here's the manual add-in workflow, the mistakes that cost people an afternoon, and the faster automated route.

Guide · ~6 min read

URDF (Unified Robot Description Format) is the XML format ROS, Gazebo and MoveIt use to describe a robot's links, joints, inertia and collision. SolidWorks models the same robot as parts joined by mates — but there is no native "Save as URDF". You have two options: the manual exporter, or an automated converter.

Option 1 — the sw2urdf add-in (manual)

The community sw2urdf add-in is the classic path. In outline:

  1. Install the SolidWorks-to-URDF exporter add-in and open your assembly.
  2. For every link, assign a reference coordinate system and a reference axis at the joint location. This is the step that determines whether your joints end up correct.
  3. Build the link tree in the exporter: choose the base link, then nest each child link and name its joint.
  4. Pick a joint type per joint (revolute, prismatic, continuous, fixed) and set limits.
  5. Export. The add-in writes the URDF, meshes (STL) and a ROS package layout.

Where it goes wrong

Option 2 — automated conversion

If you'd rather not hand-place a coordinate system on every link, an automated converter reads the geometry and mates for you. This is what Jointly does: it ingests the SolidWorks assembly (or a STEP export of it), infers the moving parts, joint types and axes, computes inertia and generates collision meshes, and lets you confirm the few things a static model can't reveal — joint travel and which joints are motorized.

What survives a STEP export (and what doesn't)

A common situation: a client sends you a STEP file, not the native SolidWorks assembly. STEP carries exact B-Rep geometry but drops the mates entirely. So joint relationships have to be re-inferred from the geometry. Manual exporters can't help here — there are no mates to read. Jointly is designed for this mate-less case and recovers joint axes directly from the boundary geometry.

Skip the manual work

Jointly does everything on this page automatically: drop in your CAD (STEP, mesh, SolidWorks or Onshape), and it infers joints, axes, inertia and collision, then exports a simulation-ready URDF, SDF, MJCF or USD. The first conversions are free.

Try Jointly free →

Verifying the result

However you generate it, sanity-check the URDF before trusting it:

Getting axes and inertia right is the whole game. A URDF that loads but spins the wrong way is worse than none.