@deck
This scene started off as 2 dynamic spheres in a collider cylinder (no caps, visibility off), collider floor and regular gravity. When the tube was moved in xz using a vibrate tag the spheres rotated due to friction and although the top sphere appeared to be balancing, it looked too wooden - I wanted some wobble.
Specifically I wanted the top sphere to look like it was rolling off the lower sphere, then the lower sphere would move (after some delay) to keep the top sphere on top and also to maybe overshoot so it looked like the lower sphere was slowing down the top sphere.
I made the cylinder smaller so it only affected the top sphere and attached the lower sphere to the cylinder with a dynamic spring offset by 2*radius in y. In this pic I've moved the lower sphere to show the spring.
In XPresso I take the vibrate amplitude down to 0 every 500F. This returns the spheres to the center for 150F so you can see the balancing a bit better.
balance.c4d