How to close a 4-link “leaf” loop in an articulation? (distance-joint error)

Hi Isaac Sim team,

I am using isaacsim 4.5.0
I’m building a plant model whose stem is a chain of many small capsules joined by compliant articulation joints (variable stiffness along the length).
On top of the stem I want a leaf that can fold in two directions.
In MuJoCo I achieve this with four rigid parts:

part1 —(ball)→ part2 —(ball)→ part3 —(ball)→ part4
part4 —(distance-weld)→ part1   # closes the loop

The last distance joint makes the structure behave like a hinged ring: it bends about two axes but keeps a closed outline.

What I tried in Isaac Sim

  • I created the same four capsules as links of the same reduced-coordinate articulation (parent chain 1-2-3-4).
  • Links 1-2, 2-3, 3-4 are spherical joints with natural-frequency / damping-ratio settings (compliance works great).
  • To close the loop I added a PxDistanceJoint between link 4 and link 1.

As soon as I press Play I get the runtime error

Articulation cannot contain a distance joint! (Please exclude it from articulation)

How to create a closed-loop (ring) leaf structure with rigid “weld” in Articulation? forums.developer.nvidia.com

What I have read so far

Questions

  1. Is ‘Exclude From Articulation’ + DistanceJoint still the officially supported way to close a ring?
    Are there recommended solver settings (e.g., solverPositionIterationCount ≥ 32) to keep the loop stable? forums.developer.nvidia.comforums.developer.nvidia.com
  2. Would a FixedJoint flagged Exclude From Articulation be better than a DistanceJoint for this weld-like constraint?
  3. Is there a plan to allow loop joints inside PxArticulationReducedCoordinate in PhysX 5.x, or should I split the leaf into a second articulation and connect the two articulations with a rigid joint? nvidia-omniverse.github.io
  4. Any examples or USD snippets that demonstrate a small closed ring (or four-bar linkage) working inside Isaac Sim 2024.1+ would be very helpful.

Constraints / things already tried

  • Internal self-collision is disabled for every link, so the error is purely joint-related.
  • Global timestep must stay at 1 / 60 s (real-time RL training).
  • Position iterations are currently 32; velocity iterations 8.

Thanks a lot for your guidance!

1 Like

Hi @zhaowentao, thanks for your questions! Could you share the files necessary to reproduce this error on our end? Exclude from Articulation and DistanceJoint does seem the way to go here, and as of now it does not seem like there are any plans to allow loop joints.

Hello!

We noticed that this topic hasn’t received any recent responses, so we are closing it for now to help keep the forum organized.

If you’re still experiencing this issue or have additional questions, please feel free to create a new topic with updated details. When doing so, we recommend mentioning or linking to this original topic in your new post—this helps provide context and makes it easier for others to assist you.

Thank you for being part of the NVIDIA Isaac Sim community.

Best regards,
The NVIDIA Isaac Sim Forum Team