Unable to convert USD asset to urdf using the urdf exporter tool

Isaac Sim Version

  • 5.0.0

Operating System

  • Ubuntu 22.04

GPU Information

  • Model: NVIDIA L40s
  • Driver Version: 550.144.03

Topic: URDF Export Fails with UR5e + Robotiq 2F-85 Gripper Asset

Detailed Description

I downloaded the UR5e manipulator with the Robotiq 2F-85 gripper from the Isaac Sim 5.0.0 asset list. My goal is to export this combined robot as a URDF so I can use it for a pick-and-place task Tutorial 9: Pick and Place Example — Isaac Sim Documentation, as described in the “IK solver” section of the Isaac documentation (for use with an IK solver and LULA descriptor). Previously in “Import a manipulator” section in isaac sim 4.5.0

To generate the robot description file i used Tutorial 8: Generate Robot Configuration File — Isaac Sim Documentation, As I attempted to use the Export to URDF tool from the File menu. However, I encountered an error when exporting the URDF for this combined asset. The error message indicates that the USD file contains kinematic loops, which prevents the export process from completing.

I searched the forums for a similar issue but couldn’t find any relevant solutions. Could someone clarify how to resolve this or disable the kinematic loop structure so that I can proceed with the export?

and I noticed this happens majorly for manipulators that have grippers as attachment, where as other manipulators that come with grippers - don’t face this exporting issue ex: denso robots, kawasaki robots.

Steps to Reproduce

  1. Open Isaac Sim 5.0.0 and locate the UR5e manipulator in the asset list.
  2. Enable the Physics and Gripper options.
  3. Drag the combined robot into the stage and save the USD file.
  4. Close and reopen Isaac Sim, then open the saved USD file.
  5. Go to File > Export URDF and attempt to export the file as ur5e.urdf.
  6. You will encounter the following error during export.

Error Message

self._mesh_dir:  None  
self._mesh_path_prefix:  file://<path to output directory>  
self._root:  None  
self._visualize_collision_meshes:  False  
Root prim not specified. Using the Default Prim on Stage.  /ur5e  
2025-06-30T17:05:13Z [838,527ms] [Error] [omni.ui.python] RuntimeError: Unable to convert this USD to URDF because it has kinematic loops.

At:
  transform_graph_tools.py(481): correct_joint_edges
  transform_graph_tools.py(126): reduce_to_urdf
  to_urdf.py(103): __init__
  exporter.py(171): _on_export_button_clicked_fn
  extension.py(90): export
  file_exporter/extension.py(131): on_export
  filepicker/file_bar.py(488): _on_apply
  filepicker/file_bar.py(452): <lambda>

Additional Context

I initially attempted to use the Robot Assembler, but it didn’t work as expected when attaching the Robotiq gripper to the UR5e manipulator using the GUI — the components wouldn’t stay connected properly. That’s why I switched to using the pre-configured asset from the asset browser instead.

Any guidance on how to resolve the kinematic loop issue or successfully export the URDF would be greatly appreciated.

Hi @Niranjan_Sujay For the Robot assembler tool, did you try with Isaac Sim 5.0?
We previously had several user reports about robot assembler tool not being able to attach robot arm and gripper with Isaac Sim 4.5. We fixed some bugs in Isaac Sim 5.0 and now it should work well.
Could you please give it a try if you haven’t done so? If you are still facing issues with robot assembler tool in Isaac Sim 5.0, could you please post your issue here? We will take a look into it. Thanks!

Hi @zhengwang,
I tried using the Robot Assembler in Isaac Sim 5.0.0 and noticed the new button-based interface is a great improvement over 4.5.0—really helpful! However, when I click “Assemble and Simulate,” I encounter an error. Even after deleting the Articulation Root and adding it manually, the simulation still doesn’t seem to work.

Am I missing something in the workflow? Would appreciate any guidance!



Hi @Niranjan_Sujay. Thanks for trying this out. I can also see the error messages on my side. But if I start the simulation and set the joint position, I am see the robot arm moving with the gripper attached. Let me reach out to the internal team to see why these error messages showing up.

Hi @zhengwang, thank you for checking this and for reaching out to the internal team!

I also noticed another issue—when trying to save the scene, parts of the Robotiq gripper don’t appear visually, even though they’re still listed in the stage menu. I double-checked the reference paths, and everything seems to be correct. Attaching a screen recording here for reference:

Let me know if there’s anything else I can try or if you’d like more details!

@Niranjan_Sujay I am not able to reproduce the missing parts of gripper issue on my side… The robot arm I am using is ur5e.usd and the gripper is Robotiq_Hand_E_edit.usd.

Could you please give it a try with the assets I am using? I suspect it is related to the assets.

I am not able to find the Robotiq_2F_85_edit.usd

Hi @zhengwang, with the setup you mentioned, I was able to get it to move ut when you save the file the gripper just disappeared!

And for the asset - under browsers>Isaac asset browser> robot> robotiq> robotiq_2f_80….. usd file

Both 2F grippers in Isaac sim assets have kinematic loops since we modeled them to enable encompassing grip, along with the more commonly used parallel grip.

The URDF exporter is not properly parsing this loop closure joint and we should fix it for 5.1.0. If you need the assembled robot with the 2f85 URDF, you can manually disable the loop closure joints (<left|right>_inner_knuckle_joint)

Check this tutorial to understand how the 2f85 was modeled: Tutorial 10: Rig Closed-Loop Structures — Isaac Sim Documentation

1 Like

Thanks @Niranjan_Sujay. I tried with the asset Robotiq_2F_85_edit.usd. I still cannot replicate the missing parts of gripper issue…

Maybe you can try to build Isaac Sim 5.0 again? Or do you notice any warning/error in the terminal?