diff --git a/source/RobotAPI/libraries/armem_robot/aron_conversions.cpp b/source/RobotAPI/libraries/armem_robot/aron_conversions.cpp
index 0ab9ff1a46f9e756471ccf8d257e966dcfb7f2ef..5db2b55603580aa42450938630483d2e8c4270f5 100644
--- a/source/RobotAPI/libraries/armem_robot/aron_conversions.cpp
+++ b/source/RobotAPI/libraries/armem_robot/aron_conversions.cpp
@@ -53,14 +53,14 @@ namespace armarx::armem::robot
 
     void fromAron(const arondto::RobotState& dto, RobotState& bo)
     {
-        bo.timestamp = dto.timestamp;
+        fromAron(dto.timestamp, bo.timestamp);
         bo.globalPose.matrix() = dto.globalPose;
         bo.jointMap            = dto.jointMap;
     }
 
     void toAron(arondto::RobotState& dto, const RobotState& bo)
     {
-        dto.timestamp = bo.timestamp;
+        toAron(dto.timestamp, bo.timestamp);
         dto.globalPose = bo.globalPose.matrix();
         dto.jointMap   = bo.jointMap;
     }
@@ -97,14 +97,14 @@ namespace armarx::armem
 
     void robot::fromAron(const objpose::arondto::ObjectPose& dto, RobotState& bo)
     {
-        bo.timestamp = dto.timestamp;
+        fromAron(dto.timestamp, bo.timestamp);
         bo.globalPose = dto.objectPoseGlobal;
         bo.jointMap = dto.objectJointValues;
     }
 
     void robot::toAron(objpose::arondto::ObjectPose& dto, const RobotState& bo)
     {
-        dto.timestamp = bo.timestamp;
+        toAron(dto.timestamp, bo.timestamp);
         dto.objectPoseGlobal = bo.globalPose.matrix();
         dto.objectJointValues = bo.jointMap;
     }
diff --git a/source/RobotAPI/libraries/armem_robot/types.cpp b/source/RobotAPI/libraries/armem_robot/types.cpp
index 01847402c1e1bdde24956203620c13e15328e913..6f09eee1acef62472a1e8cc0027f49c9db6efe46 100644
--- a/source/RobotAPI/libraries/armem_robot/types.cpp
+++ b/source/RobotAPI/libraries/armem_robot/types.cpp
@@ -1,11 +1,24 @@
 #include "types.h"
 
+#include <ArmarXCore/core/exceptions/local/ExpressionException.h>
+
+
 namespace armarx::armem::robot
 {
-  std::ostream& operator<<(std::ostream &os, const RobotDescription &rhs) 
-  {
-     os << "RobotDescription { name: '" << rhs.name << "', xml: '" << rhs.xml << "' }";
-     return os;
-  }
+
+    std::ostream& operator<<(std::ostream &os, const RobotDescription &rhs)
+    {
+        os << "RobotDescription { name: '" << rhs.name << "', xml: '" << rhs.xml << "' }";
+        return os;
+    }
+
+
+    std::string Robot::name() const
+    {
+        ARMARX_CHECK_NOT_EMPTY(description.name) << "The robot name must be set!";
+        ARMARX_CHECK_NOT_EMPTY(instance) << "The robot instance name must be provided!";
+
+        return description.name + "/" + instance;
+    }
   
 }
diff --git a/source/RobotAPI/libraries/armem_robot/types.h b/source/RobotAPI/libraries/armem_robot/types.h
index 10ca7475f0d119aeb8f40e2f0d674bb3a6450691..345564d4b859af306acecdc82d00096c4a559351 100644
--- a/source/RobotAPI/libraries/armem_robot/types.h
+++ b/source/RobotAPI/libraries/armem_robot/types.h
@@ -1,23 +1,22 @@
 #pragma once
 
+#include <filesystem>
 #include <map>
 #include <vector>
-#include <filesystem>
 
 #include <Eigen/Geometry>
 
-#include <IceUtil/Time.h>
+#include <ArmarXCore/core/PackagePath.h>
+#include <ArmarXCore/core/time/DateTime.h>
 
-#include <ArmarXCore/core/exceptions/local/ExpressionException.h>
 #include <RobotAPI/libraries/ArmarXObjects/ObjectID.h>
-#include <ArmarXCore/core/PackagePath.h>
 
 
 namespace armarx::armem::robot
 {
     struct RobotDescription
     {
-        // IceUtil::Time timestamp;
+        // DateTime timestamp;
 
         std::string name;
         PackagePath xml{"", std::filesystem::path("")};
@@ -46,7 +45,7 @@ namespace armarx::armem::robot
         using JointMap = std::map<std::string, float>;
         using Pose = Eigen::Affine3f;
 
-        IceUtil::Time timestamp;
+        DateTime timestamp;
 
         Pose globalPose;
         JointMap jointMap;
@@ -60,15 +59,9 @@ namespace armarx::armem::robot
 
         RobotState config;
 
-        IceUtil::Time timestamp;
-
-        std::string name() const 
-        {
-            ARMARX_CHECK_NOT_EMPTY(description.name) << "The robot name must be set!";
-            ARMARX_CHECK_NOT_EMPTY(instance) << "The robot instance name must be provided!";
+        DateTime timestamp;
 
-            return description.name + "/" + instance;
-        }
+        std::string name() const;
     };
 
     using Robots = std::vector<Robot>;