diff --git a/source/RobotAPI/components/units/RobotUnit/NJointControllers/NJointTaskSpaceImpedanceController.cpp b/source/RobotAPI/components/units/RobotUnit/NJointControllers/NJointTaskSpaceImpedanceController.cpp
index 956f1334378e341832e879440019b8750ebece35..ebee1381e9f52c1986b042e82afa7372c81a9901 100644
--- a/source/RobotAPI/components/units/RobotUnit/NJointControllers/NJointTaskSpaceImpedanceController.cpp
+++ b/source/RobotAPI/components/units/RobotUnit/NJointControllers/NJointTaskSpaceImpedanceController.cpp
@@ -231,5 +231,19 @@ void NJointTaskSpaceImpedanceController::onPublish(const SensorAndControl&, cons
 
 }
 
+void NJointTaskSpaceImpedanceController::setTarget(const Ice::FloatSeq& target, const Ice::Current&)
+{
+    Eigen::VectorXf desiredPose;
+    desiredPose.resize(7);
+    for (size_t i = 0; i < 7; ++i)
+    {
+        desiredPose(i) = target.at(i);
+    }
+
+    LockGuardType guard {controlDataMutex};
+    getWriterControlStruct().desiredPose = desiredPose;
+    writeControlStruct();
+}
+
 
 
diff --git a/source/RobotAPI/components/units/RobotUnit/NJointControllers/NJointTaskSpaceImpedanceController.h b/source/RobotAPI/components/units/RobotUnit/NJointControllers/NJointTaskSpaceImpedanceController.h
index 675aa090036da41033ccad7dac8fddb15104318b..2b8a3228128dbe50374d575781acc15aaa6310aa 100644
--- a/source/RobotAPI/components/units/RobotUnit/NJointControllers/NJointTaskSpaceImpedanceController.h
+++ b/source/RobotAPI/components/units/RobotUnit/NJointControllers/NJointTaskSpaceImpedanceController.h
@@ -70,7 +70,7 @@ namespace armarx
     protected:
         void onPublish(const SensorAndControl&, const DebugDrawerInterfacePrx&, const DebugObserverInterfacePrx&);
 
-
+        void setTarget(const Ice::FloatSeq&, const Ice::Current&);
     private:
         Eigen::Vector3f desiredPosition;
         Eigen::Quaternionf desiredQuaternion;
diff --git a/source/RobotAPI/interface/units/RobotUnit/TaskSpaceActiveImpedanceControl.ice b/source/RobotAPI/interface/units/RobotUnit/TaskSpaceActiveImpedanceControl.ice
index b736e4f1bfd78a226d50c19ad7f4ccef351516b5..04cc5fae69b1c830c4d64e172a97e40314462f11 100644
--- a/source/RobotAPI/interface/units/RobotUnit/TaskSpaceActiveImpedanceControl.ice
+++ b/source/RobotAPI/interface/units/RobotUnit/TaskSpaceActiveImpedanceControl.ice
@@ -47,7 +47,7 @@ module armarx
 
     interface NJointTaskSpaceImpedanceControlInterface extends NJointControllerInterface
     {
-
+        void setTarget(Ice::FloatSeq target);
     };
 
 };
diff --git a/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp b/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp
index 34fc128938ac69cbd9deafeb479cd20ebf783082..535a1cf7dea8788f635bf60fee80f9c32634987c 100644
--- a/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp
+++ b/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp
@@ -255,12 +255,11 @@ namespace armarx
 
     void NJointTaskSpaceImpedanceDMPController::setViaPoints(Ice::Double u, const Ice::DoubleSeq& viapoint, const Ice::Current&)
     {
-        LockGuardType guard(controllerMutex);
+        //        LockGuardType guard(controllerMutex);
         ARMARX_INFO << "setting via points ";
         dmpCtrl->setViaPose(u, viapoint);
     }
 
-
     void NJointTaskSpaceImpedanceDMPController::setGoals(const Ice::DoubleSeq& goals, const Ice::Current& ice)
     {
         dmpCtrl->setGoalPoseVec(goals);
@@ -348,7 +347,9 @@ namespace armarx
         datafields["currentPose_qy"] = new Variant(debugOutputData.getUpToDateReadBuffer().currentPose_qy);
         datafields["currentPose_qz"] = new Variant(debugOutputData.getUpToDateReadBuffer().currentPose_qz);
 
-        debugObs->setDebugChannel("TaskSpaceImpedanceDMP", datafields);
+
+        std::string channelName = cfg->nodeSetName + "_TaskSpaceImpedanceControl";
+        debugObs->setDebugChannel(channelName, datafields);
     }
 
     void NJointTaskSpaceImpedanceDMPController::onInitComponent()