Continuous Joint

Hi, I’m trying to use a model of the PR2 robot in isaac sim. This robot has continuous joints in it’s arm. At the moment, these get converted from the urdf to the following joint:

        def PhysicsRevoluteJoint "l_forearm_roll_joint" (
            prepend apiSchemas = ["PhysxJointAPI", "PhysicsDriveAPI:angular", "PhysicsJointStateAPI:angular"]
        )
        {
            float drive:angular:physics:damping = 1000
            float drive:angular:physics:maxForce = 1800
            float drive:angular:physics:stiffness = 0
            float drive:angular:physics:targetVelocity = 0
            uniform token drive:angular:physics:type = "force"
            uniform token physics:axis = "X"
            rel physics:body0 = </pr2/l_elbow_flex_link>
            rel physics:body1 = </pr2/l_forearm_roll_link>
            float physics:breakForce = 3.4028235e38
            float physics:breakTorque = 3.4028235e38
            point3f physics:localPos0 = (0, 0, 0)
            point3f physics:localPos1 = (0, 0, 0)
            quatf physics:localRot0 = (1, 0, 0, 0)
            quatf physics:localRot1 = (1, 0, 0, 0)
            float physxJoint:jointFriction = 0
            float physxJoint:maxJointVelocity = 206.2648
        }

In Isaaac sim, the joint shows a joint limit of 3.4028235e+38 (as returned by self.get_dof_limits()). But it’s not actually possible to move it beyond a limit of -2pi/2pi, with the simulator throwing an error message of only supports target angle in range [-2Pi, 2Pi] and the joint not moving any further.

Is there a way to implement a continuous joint in Isaac? This is quite important to model our real world robots. I’m using isaac 2023.1.0.

Other threads unfortunately did not answer this question and were locked:

Your help is much appreciated!