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);