diff --git a/source/RobotAPI/components/units/RobotUnit/RobotUnitModules/RobotUnitModuleControlThread.cpp b/source/RobotAPI/components/units/RobotUnit/RobotUnitModules/RobotUnitModuleControlThread.cpp
index 6b65c43badf87a905fb0a60b3ffe87f40fe51998..56713b984725decc6a27fc587de9802f9b046822 100644
--- a/source/RobotAPI/components/units/RobotUnit/RobotUnitModules/RobotUnitModuleControlThread.cpp
+++ b/source/RobotAPI/components/units/RobotUnit/RobotUnitModules/RobotUnitModuleControlThread.cpp
@@ -40,6 +40,7 @@
 #include <RobotAPI/components/units/RobotUnit/RobotUnitModules/RobotUnitModuleRobotData.h>
 #include <RobotAPI/components/units/RobotUnit/RobotUnitModules/RobotUnitModuleUnits.h>
 #include <RobotAPI/components/units/RobotUnit/SensorValues/SensorValueHolonomicPlatform.h>
+#include <RobotAPI/components/units/RobotUnit/util/ControlThreadOutputBuffer.h>
 #include <RobotAPI/components/units/RobotUnit/util/DynamicsHelper.h>
 
 #include "../Devices/RTThreadTimingsSensorDevice.h"
@@ -536,7 +537,14 @@ namespace armarx::RobotUnitModule
         rtGetThreadTimingsSensorDevice().rtMarkRtReadSensorDeviceValuesStart();
         for (const SensorDevicePtr& device : rtGetSensorDevices())
         {
-            device->rtReadSensorValues(sensorValuesTimestamp, timeSinceLastIteration);
+            if (device)
+            {
+                device->rtReadSensorValues(sensorValuesTimestamp, timeSinceLastIteration);
+            }
+            else
+            {
+                ARMARX_RT_LOGF_ERROR("Device is null!");
+            }
         }
         DevicesAttorneyForControlThread::UpdateRobotWithSensorValues(this, rtRobot, rtRobotNodes);
         rtPostReadSensorDeviceValues(sensorValuesTimestamp, timeSinceLastIteration);