diff --git a/include/laser/sensor/sensor_laser_2D.h b/include/laser/sensor/sensor_laser_2D.h
index f352cfc46a4d693398a228242873a0c2a67eea26..0d52eb63a81c0ca963fbe6f8eb0a109e3a92d8c1 100644
--- a/include/laser/sensor/sensor_laser_2D.h
+++ b/include/laser/sensor/sensor_laser_2D.h
@@ -25,14 +25,14 @@ struct IntrinsicsLaser2D : public IntrinsicsBase
         IntrinsicsLaser2D(std::string _unique_name, const wolf::ParamsServer & _server) :
             IntrinsicsBase(_unique_name, _server)
         {
-            scan_params.angle_min_      = _server.getParam<double>(_unique_name + "/angle_min");
-            scan_params.angle_max_      = _server.getParam<double>(_unique_name + "/angle_max");
-            scan_params.angle_step_     = _server.getParam<double>(_unique_name + "/angle_step");
-            scan_params.scan_time_      = _server.getParam<double>(_unique_name + "/scan_time");
-            scan_params.range_min_      = _server.getParam<double>(_unique_name + "/range_min");
-            scan_params.range_max_      = _server.getParam<double>(_unique_name + "/range_max");
-            scan_params.range_std_dev_  = _server.getParam<double>(_unique_name + "/range_std_dev");
-            scan_params.angle_std_dev_  = _server.getParam<double>(_unique_name + "/angle_std_dev");
+            scan_params.angle_min_      = _server.getParam<double>(_unique_name + "/LaserScanParams/angle_min");
+            scan_params.angle_max_      = _server.getParam<double>(_unique_name + "/LaserScanParams/angle_max");
+            scan_params.angle_step_     = _server.getParam<double>(_unique_name + "/LaserScanParams/angle_step");
+            scan_params.scan_time_      = _server.getParam<double>(_unique_name + "/LaserScanParams/scan_time");
+            scan_params.range_min_      = _server.getParam<double>(_unique_name + "/LaserScanParams/range_min");
+            scan_params.range_max_      = _server.getParam<double>(_unique_name + "/LaserScanParams/range_max");
+            scan_params.range_std_dev_  = _server.getParam<double>(_unique_name + "/LaserScanParams/range_std_dev");
+            scan_params.angle_std_dev_  = _server.getParam<double>(_unique_name + "/LaserScanParams/angle_std_dev");
         }
         std::string print()
         {
diff --git a/src/yaml/sensor_laser_2D_yaml.cpp b/src/yaml/sensor_laser_2D_yaml.cpp
index 7edaac553c2bc2190deb71f978cfb48bff58d55c..66aff15a55aa0ad44bed928be4cb95fefb9d1721 100644
--- a/src/yaml/sensor_laser_2D_yaml.cpp
+++ b/src/yaml/sensor_laser_2D_yaml.cpp
@@ -30,23 +30,23 @@ IntrinsicsBasePtr createIntrinsicsLaser2D(const std::string& _filename_dot_yaml)
 
     if (config["type"].as<std::string>() == "LASER 2D")
     {
+        YAML::Node ls_params = config["LaserScanParams"];
 
+        IntrinsicsLaser2DPtr params = std::make_shared<IntrinsicsLaser2D>();
 
-    IntrinsicsLaser2DPtr params = std::make_shared<IntrinsicsLaser2D>();
+        params->scan_params.angle_min_      = ls_params["/angle_min"]      .as<double>();
+        params->scan_params.angle_max_      = ls_params["/angle_max"]      .as<double>();
+        params->scan_params.angle_step_     = ls_params["/angle_step"]     .as<double>();
+        params->scan_params.scan_time_      = ls_params["/scan_time"]      .as<double>();
+        params->scan_params.range_min_      = ls_params["/range_min"]      .as<double>();
+        params->scan_params.range_max_      = ls_params["/range_max"]      .as<double>();
+        params->scan_params.range_std_dev_  = ls_params["/range_std_dev"]  .as<double>();
+        params->scan_params.angle_std_dev_  = ls_params["/angle_std_dev"]  .as<double>();
 
-    params->scan_params.angle_min_      = config["/angle_min"]      .as<double>();
-    params->scan_params.angle_max_      = config["/angle_max"]      .as<double>();
-    params->scan_params.angle_step_     = config["/angle_step"]     .as<double>();
-    params->scan_params.scan_time_      = config["/scan_time"]      .as<double>();
-    params->scan_params.range_min_      = config["/range_min"]      .as<double>();
-    params->scan_params.range_max_      = config["/range_max"]      .as<double>();
-    params->scan_params.range_std_dev_  = config["/range_std_dev"]  .as<double>();
-    params->scan_params.angle_std_dev_  = config["/angle_std_dev"]  .as<double>();
-
-    return params;
+        return params;
     }
 
-    std::cout << "Bad configuration file. No processor type found." << std::endl;
+    std::cout << "Bad configuration file " << _filename_dot_yaml << ". No processor type found." << std::endl;
     return nullptr;
 
 }
diff --git a/test/yaml/sensor_laser_2D.yaml b/test/yaml/sensor_laser_2D.yaml
index 709c3fe33b82769fc5ba0941351106589ec4546a..0010bf5cf751440b52e5dae4b796d0c38ced8737 100644
--- a/test/yaml/sensor_laser_2D.yaml
+++ b/test/yaml/sensor_laser_2D.yaml
@@ -4,11 +4,12 @@ type          : "LASER 2D"
   # no params so far
   
 # from sensor laser 2D
-angle_min     : 1
-angle_max     : 2
-angle_step    : 3
-scan_time     : 4
-range_min     : 5
-range_max     : 6
-range_std_dev : 7
-angle_std_dev : 8
+LaserScanParams:
+  angle_min     : 1
+  angle_max     : 2
+  angle_step    : 3
+  scan_time     : 4
+  range_min     : 5
+  range_max     : 6
+  range_std_dev : 7
+  angle_std_dev : 8