diff --git a/include/iri_ros_tools/module_dyn_reconf.h b/include/iri_ros_tools/module_dyn_reconf.h
index 091a05190e52fc7f1a71261b2aaee1a4439ddf90..e589f666ab98fbf14927d9ba727d9a5883d4e108 100644
--- a/include/iri_ros_tools/module_dyn_reconf.h
+++ b/include/iri_ros_tools/module_dyn_reconf.h
@@ -4,6 +4,10 @@
 #include <dynamic_reconfigure/Reconfigure.h>
 #include <iri_ros_tools/module_service.h>
 
+typedef enum {DYN_RECONF_NO_SUCH_PARAM,
+              DYN_RECONF_NO_CHANGE,
+              DYN_RECONF_SUCCESSFULL} dyn_reconf_status_t;
+
 /**
   * \brief Dynamic reconfigure client wrapper
   *
@@ -54,6 +58,12 @@ class CModuleDynReconf : protected CModuleService<dynamic_reconfigure::Reconfigu
       * sure the value has been changed correctly.
       */
     double double_value;
+    /**
+      * \brief Status of the last service call
+      *
+      *
+      */
+    dyn_reconf_status_t dyn_reconf_status;
   protected:
     /**
       * \brief Service data check callback
@@ -150,6 +160,15 @@ class CModuleDynReconf : protected CModuleService<dynamic_reconfigure::Reconfigu
       *         changed (true) or not (false)
       */
     bool set_parameter(const std::string &name,double value);
+    /**
+      * \brief returns the las call status
+      *
+      * This function returns the status of the last service call, which can be 
+      * one of the dyn_reconf_status_t data type values.
+      *
+      * \return the status of the last service call.
+      */
+    dyn_reconf_status_t get_status(void);
     /**
       * \brief Destructor
       *
@@ -159,6 +178,7 @@ class CModuleDynReconf : protected CModuleService<dynamic_reconfigure::Reconfigu
 
 CModuleDynReconf::CModuleDynReconf(const std::string &name,const std::string &name_space) : CModuleService(name,name_space)
 {
+  this->dyn_reconf_status=DYN_RECONF_SUCCESSFULL;
   this->set_max_num_retries(1);
   this->set_call_check_function(boost::bind(&CModuleDynReconf::check_dyn_reconf,this,_1));
 }
@@ -172,8 +192,14 @@ bool CModuleDynReconf::check_dyn_reconf(dynamic_reconfigure::Reconfigure &msg)
     {
       if(msg.response.config.bools[i].value!=this->bool_value)
       {
+        this->dyn_reconf_status=DYN_RECONF_NO_CHANGE;
         return false;
       }
+      else 
+      {
+        this->dyn_reconf_status=DYN_RECONF_SUCCESSFULL;
+        return true;
+      }
     }
   }
   for(i=0;i<msg.response.config.ints.size();i++)
@@ -182,8 +208,14 @@ bool CModuleDynReconf::check_dyn_reconf(dynamic_reconfigure::Reconfigure &msg)
     {
       if(msg.response.config.ints[i].value!=this->int_value)
       {
+        this->dyn_reconf_status=DYN_RECONF_NO_CHANGE;
         return false;
       }
+      else 
+      {
+        this->dyn_reconf_status=DYN_RECONF_SUCCESSFULL;
+        return true;
+      }
     }
   }
   for(i=0;i<msg.response.config.strs.size();i++)
@@ -192,8 +224,14 @@ bool CModuleDynReconf::check_dyn_reconf(dynamic_reconfigure::Reconfigure &msg)
     {
       if(msg.response.config.strs[i].value!=this->string_value)
       {
+        this->dyn_reconf_status=DYN_RECONF_NO_CHANGE;
         return false;
       }
+      else 
+      {
+        this->dyn_reconf_status=DYN_RECONF_SUCCESSFULL;
+        return true;
+      }
     }
   }
   for(i=0;i<msg.response.config.doubles.size();i++)
@@ -202,12 +240,19 @@ bool CModuleDynReconf::check_dyn_reconf(dynamic_reconfigure::Reconfigure &msg)
     {
       if(msg.response.config.doubles[i].value!=this->double_value)
       {
+        this->dyn_reconf_status=DYN_RECONF_NO_CHANGE;
         return false;
       }
+      else 
+      {
+        this->dyn_reconf_status=DYN_RECONF_SUCCESSFULL;
+        return true;
+      }
     }
   }
 
-  return true;
+  this->dyn_reconf_status=DYN_RECONF_NO_SUCH_PARAM;
+  return false;
 }
 
 bool CModuleDynReconf::set_parameter(const std::string &name,bool value)
@@ -310,6 +355,11 @@ bool CModuleDynReconf::set_parameter(const std::string &name,double value)
   }
 }
 
+dyn_reconf_status_t CModuleDynReconf::get_status(void)
+{
+  return this->dyn_reconf_status;
+}
+
 CModuleDynReconf::~CModuleDynReconf()
 {