diff --git a/source/RobotAPI/interface/units/RobotUnit/NJointTaskSpaceDMPController.ice b/source/RobotAPI/interface/units/RobotUnit/NJointTaskSpaceDMPController.ice
index 2f039d60c1343421a5a22bc576eec0ea7b3fc456..38cdb96be1a6e47b98e7adc0c939cc816cfd55c6 100644
--- a/source/RobotAPI/interface/units/RobotUnit/NJointTaskSpaceDMPController.ice
+++ b/source/RobotAPI/interface/units/RobotUnit/NJointTaskSpaceDMPController.ice
@@ -340,6 +340,7 @@ module armarx
         void resetDMP();
         void stopDMP();
         void resumeDMP();
+        void removeAllViaPoints();
 
         void setMPWeights(DoubleSeqSeq weights);
         DoubleSeqSeq getMPWeights();
diff --git a/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp b/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp
index 0ed7f2136377c71399c71fec0310fbec12baba85..70fae3d0b1c6576d26d71ee652cd79ef4ae3c75d 100644
--- a/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp
+++ b/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp
@@ -575,6 +575,12 @@ namespace armarx
         return resvec;
     }
 
+    void NJointTaskSpaceImpedanceDMPController::removeAllViaPoints(const Ice::Current&)
+    {
+        LockGuardType guard {controllerMutex};
+        ARMARX_INFO << "setting via points ";
+        dmpCtrl->removeAllViaPoints();
+    }
 
 
 }
diff --git a/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.h b/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.h
index 412a46f20b5ce93eddfed0d68854d4a3c03bc30a..34bd9785cbac94d173e45c6e345cf1531e0a158c 100644
--- a/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.h
+++ b/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.h
@@ -74,6 +74,8 @@ namespace armarx
         void setMPWeights(const DoubleSeqSeq& weights, const Ice::Current&);
         DoubleSeqSeq getMPWeights(const Ice::Current&);
 
+        void removeAllViaPoints(const Ice::Current&) override;
+
     protected:
         virtual void onPublish(const SensorAndControl&, const DebugDrawerInterfacePrx&, const DebugObserverInterfacePrx&);