Index: /trunk/FACT++/src/ftmctrl.cc
===================================================================
--- /trunk/FACT++/src/ftmctrl.cc	(revision 11377)
+++ /trunk/FACT++/src/ftmctrl.cc	(revision 11378)
@@ -1629,5 +1629,4 @@
         case ConnectionFTM::kDisconnected: return FTM::kDisconnected;
         case ConnectionFTM::kConnected:    return FTM::kConnected;
-        case ConnectionFTM::kTakingData:   return FTM::kTakingData;
         default:
             break;
@@ -1685,8 +1684,13 @@
             case ConnectionFTM::kIdle:         return FTM::kIdle;
             case ConnectionFTM::kConfigured:   return FTM::kIdle;
+            case ConnectionFTM::kTakingData:   return FTM::kTakingData;
             default:
                 throw runtime_error("StateMachienFTM - Execute() - Inavlid state.");
             }
         }
+
+        if (T::GetCurrentState()==FTM::kConfigured &&
+            fFTM.GetState()==ConnectionFTM::kTakingData)
+            return FTM::kTakingData;
 
         return T::GetCurrentState();
@@ -1895,4 +1899,6 @@
             ("");
 
+        // A new configure will first stop the FTM this means
+        // we can allow it in idle _and_ taking data
         T::AddEvent("CONFIGURE", "C", FTM::kIdle, FTM::kTakingData)
             (boost::bind(&StateMachineFTM::ConfigureFTM, this, _1))
