HprInterval

here
I want it rotate around Z axis and if I use this code it is not working.

        hpr=s2.getHpr()
        s2.hprInterval(1.0, hpr+ (360, 0, 0), hpr).loop()

I playing around your example and as I understand, I can’t do anything with this behaviour. Formally, the behavior is legal because the “doors” has a matrix, which compensates transforms of the parent “Cube”, but Blender keeps a second coordinate system (before parenting) for local manipulating with the parented objects.