diff --git a/source/RobotAPI/gui-plugins/CartesianWaypointControlGui/CartesianWaypointControlGuiWidgetController.cpp b/source/RobotAPI/gui-plugins/CartesianWaypointControlGui/CartesianWaypointControlGuiWidgetController.cpp
index eb3e883764955c7cbf90858b863725478a1f051b..df1458f3f5589e42f9167af964d8f2f9dfb362a9 100644
--- a/source/RobotAPI/gui-plugins/CartesianWaypointControlGui/CartesianWaypointControlGuiWidgetController.cpp
+++ b/source/RobotAPI/gui-plugins/CartesianWaypointControlGui/CartesianWaypointControlGuiWidgetController.cpp
@@ -29,14 +29,6 @@
 
 #include "CartesianWaypointControlGuiWidgetController.h"
 
-namespace Eigen
-{
-    void from_json(const nlohmann::json& j, Eigen::Matrix4f& mx)
-    {
-        mx = VirtualRobot::json::posquat2eigen4f(j);
-    }
-}
-
 namespace armarx
 {
     CartesianWaypointControlGuiWidgetController::CartesianWaypointControlGuiWidgetController()
@@ -99,7 +91,7 @@ namespace armarx
                     found = true;
                 }
             }
-            if(found && _robot->hasRobotNode("FT R"))
+            if (found && _robot->hasRobotNode("FT R"))
             {
                 _ui.lineEditFTName->setText("FT R");
             }
@@ -202,9 +194,8 @@ namespace armarx
             //parse json
             try
             {
-                auto json = ::nlohmann::json::parse(_ui.textEditWPs->toPlainText().toStdString());
-                ARMARX_INFO << "parsed string as json";
-                _lastParsedWPs = json.get<std::vector<Eigen::Matrix4f>>();
+                _lastParsedWPs = VirtualRobot::json::posquatArray2eigen4fVector(
+                                     _ui.textEditWPs->toPlainText().toStdString());
             }
             catch (...)
             {