diff --git a/include/iri_base_algorithm/iri_base_algorithm.h b/include/iri_base_algorithm/iri_base_algorithm.h
index c8042491a8636034ee47b0bbc8eac50e78b5c3dd..b8ce13ff660bea10f6845c6a982b63e8bc79231f 100644
--- a/include/iri_base_algorithm/iri_base_algorithm.h
+++ b/include/iri_base_algorithm/iri_base_algorithm.h
@@ -310,8 +310,8 @@ IriBaseAlgorithm<Algorithm>::IriBaseAlgorithm() :
   this->thread_server_->create_thread(this->main_thread_id_);
   this->thread_server_->attach_thread(this->main_thread_id_, this->mainThread, this);
   
-  // assign callback to dynamic reconfigure server
-  dsrv_.setCallback(boost::bind(&IriBaseAlgorithm<Algorithm>::reconfigureCallback, this, _1, _2));
+//   // assign callback to dynamic reconfigure server
+//   dsrv_.setCallback(boost::bind(&IriBaseAlgorithm<Algorithm>::reconfigureCallback, this, _1, _2));
 }
 
 template <class Algorithm>
@@ -325,8 +325,11 @@ IriBaseAlgorithm<Algorithm>::~IriBaseAlgorithm()
 template <class Algorithm>
 void IriBaseAlgorithm<Algorithm>::reconfigureCallback(Config &config, uint32_t level)
 {
-  node_config_update(config, level);
+  ROS_INFO("IriBaseAlgorithm::reconfigureCallback");
+  this->node_config_update(config, level);
+  ROS_INFO("IriBaseAlgorithm::reconfigureCallback: node_config_update");
   this->alg_.config_update(config, level);
+  ROS_INFO("IriBaseAlgorithm::reconfigureCallback: alg_.config_update");
 }
 
 template <class Algorithm>
@@ -368,7 +371,10 @@ int IriBaseAlgorithm<Algorithm>::spin(void)
   // launch ros spin in different thread
   this->ros_thread_.reset( new boost::thread(boost::bind(&ros::spin)) );
   assert(ros_thread_);
-  
+
+  // assign callback to dynamic reconfigure server
+  this->dsrv_.setCallback(boost::bind(&IriBaseAlgorithm<Algorithm>::reconfigureCallback, this, _1, _2));
+
   // launch node thread
   this->thread_server_->start_thread( this->main_thread_id_);