diff --git a/source/RobotAPI/components/armem/server/ObjectMemory/ObjectMemory.cpp b/source/RobotAPI/components/armem/server/ObjectMemory/ObjectMemory.cpp
index f60377622987efff1d3fa780ff2e05932528931b..c2a37675fe7c14de21f949b0d2ad01e07e0a3703 100644
--- a/source/RobotAPI/components/armem/server/ObjectMemory/ObjectMemory.cpp
+++ b/source/RobotAPI/components/armem/server/ObjectMemory/ObjectMemory.cpp
@@ -141,14 +141,16 @@ namespace armarx::armem::server::obj
         //                                : RobotState::addRobot(robotKey, VirtualRobot::RobotIO::RobotDescription::eStructure);
 
         // TODO: the instance segment should check the provided object poses and instantiate the needed robots by itself.
-        VirtualRobot::RobotPtr robot = virtualRobotReaderPlugin->get().getSynchronizedRobot(robotName, armarx::Clock::Now());
+        ARMARX_CHECK_NOT_NULL(virtualRobotReaderPlugin);
+        
+        VirtualRobot::RobotPtr robot = virtualRobotReaderPlugin->get().getSynchronizedRobot(robotName, armarx::Clock::Now(), VirtualRobot::RobotIO::RobotDescription::eStructure, true);
+        ARMARX_CHECK_NOT_NULL(robot);
 
         getProxyFromProperty(kinematicUnitObserver, "cmp.KinematicUnitObserverName", false, "", false);
 
         // Create first to use the original values.
         createRemoteGuiTab();
 
-        ARMARX_CHECK_NOT_NULL(virtualRobotReaderPlugin);
         // ARMARX_CHECK(virtualRobotReaderPlugin->isAvailable());
 
         instance::SegmentAdapter::connect(