Custom IsaacGymEnvs task with a custom URDF

Hi,
I tried created a custom task with the IsaacGymEnvs library in which I import a custom URDF : it’s a URDF of a robot dog, very similar to Anymal.

What I did is that I first played with this custom URDF with Isaac Gym’s joint_monkey.py script, all went well. (following this : GitHub - AIWintermuteAI/Bittle_URDF)

I then duplicated the anymal.py script in the tasks folders of the IsaacGymEnvs library, to create my custom task in which I train this new robot. When I run : python train.py task=Bittle, Isaac Gym launches the simulation, I see the bots that spawned but automatically they are kind of pushed off up and to the side, as if there were some sort of collision or something. See screenshot:

I disabled action so theorically the bot should have no force applied to it, except for gravity.

I have linked here the file bittle.py (which originated from anymal.py but I modified it to meet my URDF requierements (like number of actions, observations and some others things)):

You can find the URDF file on the github page I linked just above.

What happens in the physics side that makes my robots go like that ?
What I’m doing wrong importing my custom urdf file ?
Thank you very much!

Hi,
It seems that the upper axis of the environment is not consistent with the URDF, try to set the upper axis of the environment from Z to Y.

Hi,
Thank you very much for your answer, the problem is now solved.
Indeed, the upper axis of the sim (Z) wasn’t the same as the on in the URDF (Y).
After changing this (as well as the gravity vector, and the ground plane) the robots weren’t falling anymore however as soon as they spawned in the sim, you could see them be propulsed instantly high “in the sky”. I had to go to the train file (Bittle.yaml) to change the starting positions (the robots spawned in the ground plane I think, which caused a collision that propusled them).
So I made sure to spawn them above the ground plane.