diff --git a/dynamixel_base/src/dynamixel_slave.c b/dynamixel_base/src/dynamixel_slave.c
index 881d1b8a3d1e65313500d7508f1297d15bf48dce..000cbe4e882941998634b9a27e98ba29929fa6af 100644
--- a/dynamixel_base/src/dynamixel_slave.c
+++ b/dynamixel_base/src/dynamixel_slave.c
@@ -96,7 +96,7 @@ unsigned short int dyn_slave_get_num_data(TDynamixelSlave *slave)
     num=slave->rx_buffer_write_ptr-slave->rx_buffer_read_ptr;
   else
     num=(MAX_DYN_SLAVE_RX_BUFFER_LEN-slave->rx_buffer_read_ptr)+slave->rx_buffer_write_ptr;
-
+ 
   return num;
 }
 
@@ -116,7 +116,6 @@ unsigned char dyn_slave_get_next_packet(TDynamixelSlave *slave,unsigned char *pa
   if(slave!=0x00000000)
   {
     num=dyn_slave_get_num_data(slave);
-/*  
     if(num==0)
     {
       if(time_is_timeout(&slave->time))
@@ -124,11 +123,11 @@ unsigned char dyn_slave_get_next_packet(TDynamixelSlave *slave,unsigned char *pa
         slave->rx_state=0;
         slave->rx_current_length=0;
         slave->rx_total_length=0;
+        time_set_timeout(&slave->time,slave->rx_timeout_ms*1000);
       }
     }
     else
       time_set_timeout(&slave->time,slave->rx_timeout_ms*1000);
-*/
     for(i=0;i<num;i++)
     {
       byte=slave->rx_buffer[slave->rx_buffer_read_ptr];