diff --git a/source/RobotAPI/components/RobotState/RobotStateComponent.cpp b/source/RobotAPI/components/RobotState/RobotStateComponent.cpp
index ebbc4f01ad67450b8cc52a6900a7a03609097af2..891bcee552085dc54bd5e94bddd11654e22d38a4 100644
--- a/source/RobotAPI/components/RobotState/RobotStateComponent.cpp
+++ b/source/RobotAPI/components/RobotState/RobotStateComponent.cpp
@@ -193,13 +193,11 @@ namespace armarx
         }
 
         clone->setJointValues(config.jointMap);
-        clone->setGlobalPose(FramedPosePtr::dynamicCast(config.globalPose)->toEigen());
         SharedRobotServantPtr p = new SharedRobotServant(clone);
         p->setTimestamp(IceUtil::Time::microSecondsDouble(time));
         auto result = getObjectAdapter()->addWithUUID(p);
         // virtal robot clone is buggy -> set global pose here
-        p->setGlobalPose(new Pose(_synchronized->getGlobalPose()));
-
+        p->setGlobalPose(config.globalPose);
 
         return SharedRobotInterfacePrx::uncheckedCast(result);
     }