diff --git a/source/RobotAPI/components/units/RobotUnit/RobotUnit.cpp b/source/RobotAPI/components/units/RobotUnit/RobotUnit.cpp
index 20f9a6420ce70d79cc65496968e6469bb195ea71..94812ed3bb8c10d5122b1135c3f55fe2985aac8b 100644
--- a/source/RobotAPI/components/units/RobotUnit/RobotUnit.cpp
+++ b/source/RobotAPI/components/units/RobotUnit/RobotUnit.cpp
@@ -798,11 +798,7 @@ namespace armarx
             ARMARX_INFO << "RTLogging deactivated!";
             controlThreadOutputBuffer.initialize(0, controlDevices, sensorDevices, 0, 0, 0, 0);
         }
-        ARMARX_INFO << "finishUnitInitialization...done! " << (MicroNow() - beg).count() << " us";
-    }
 
-    void armarx::RobotUnit::initRTThread()
-    {
         startSelfCollisionAvoidance();
         if (isRtLoggingEnabled())
         {
@@ -811,6 +807,12 @@ namespace armarx
             rtLogging.task->setDelayWarningTolerance(rtLogging.loggingTaskTimestep * 10);
             rtLogging.task->start();
         }
+
+        ARMARX_INFO << "finishUnitInitialization...done! " << (MicroNow() - beg).count() << " us";
+    }
+
+    void armarx::RobotUnit::initRTThread()
+    {
         auto guard = getGuard();
         throwIfStateIsNot(RobotUnitState::WaitingForRTThreadInitialization, __FUNCTION__);
         rtThreadId = std::this_thread::get_id();