Spherical collisionobject never stops and falls asleep

I want to make a spherical object in my game behave approximately the way it should behave in the real world. And it is surprisingly hard to do. Imagine, for example, how a billiard ball behaves if it is hit with a cue. It will roll for a while and then stop completely. That is, its x and y coordinates will remain unchanged. In my case, inside the game the sphere does not stop completely and continues to roll very slowly to the left or right, as if some very weak force continues to push it. In box2d shouldn’t the physical body fall asleep completely after some time? Why isn’t this happening? Even if, when measuring the speed of the ball, I set angular velocity to zero

go.set("#collisionobject", "angular_velocity", vmath.vector3(0,0,0))

the ball still continues to make some micro-jumps and never falls asleep. Please advise what to do.
Game physics:

Ball physics (sphere):