Get_velocities() gives far too high velocity?

Greetings folks, I have the issue that a rigid prim, with a normal density (~500, BTW density units cannot be found in the conventions reference sheet: Isaac Sim Conventions — Isaac Sim Documentation), normal sized (5x5x1cm), is giving me relatively high velocities via get_velocities(), not always, just every so often. Making my code deadlock (using a timer to free deadlock as fallback/workaround).

In essence, it fails to fully calm down/stabilize in sim after falling down on its side from about 2cm height.
Zooming in at the object, it seems completely still from the rendering, but get velocity still claims it has (just in the x direction) a minimum of 5cm/s (0.05m/s) which is fast for something lying (for my eye) completely still on the ground plane.
My code basically checks if the L2 norm of the (linear) velocity is above or below a 0.01m/s threshold, which I’ve heard is typical PhysX to consider objects at rest.

get_velocities is used because the object is part of a RigidPrimView. It is not a kinematic object, the position solver is set to 8 iterations, the velocity solver to 0 in contrast. sleep thresh is set to 5e-3 and stabilization thresh to half of that. self collisions are disabled, while gyroscopic forces are enabled.

I’m using 4.2 (update is not yet possible as code relies heavily on OmniIsaacGymEnvs, which is not available in 4.5 i.e. became IsaacLab) if that helps.
I’ve deffo had this problem on 2023.1.1 and 1.0, also fixed it there with the aforementioned workaround.

Any help would be much appreciated!

Hi @ilija.kocic, thank you for sharing your issue. Would you be able to share your setup or maybe a OVD recording of the phenomenon so we can look into it more closely? OmniPVD - PhysX Visual Debugger — Omni Physics
You can record the OVD with PVD tool. Or if you want to trigger it from code here is a Python snippet:

import carb

settings_ = carb.settings.get_settings()
settings_.set("/persistent/physics/omniPvdOvdRecordingDirectory", "/home/michalin/tmp/pvdout2/")
settings_.set("/physics/omniPvdOutputEnabled", True)