Index: trunk/FACT++/src/smartfact.cc
===================================================================
--- trunk/FACT++/src/smartfact.cc	(revision 14507)
+++ trunk/FACT++/src/smartfact.cc	(revision 14508)
@@ -1368,4 +1368,19 @@
     }
 
+    int HandleMcpStateChange()
+    {
+        const int32_t &last  = fDimFtmControl.last.second;
+        const int32_t &state = fDimFtmControl.state();
+
+        // If a new run has ben started ensure that the counter
+        // is reset. The reset in HandleFtmTriggerRates might
+        // arrive only after the run was started.
+        if (last<MCP::State::kTriggerOn && state>=MCP::State::kTriggerOn)
+            fFtmControlTriggerRateTooLow = -1;
+
+        return StateMachineImp::kSM_KeepState;
+    }
+
+
     int HandleFtmTriggerRates(const EventImp &d)
     {
@@ -1381,5 +1396,5 @@
 
         // New run started
-        if (dim.fTriggerRate<0 || dim.fElapsedTime<=0)
+        if (dim.fTriggerRate<0)
         {
             fFtmControlTriggerRateTooLow = -1;
@@ -2289,5 +2304,5 @@
                            "Sensor temperature exceeds outside temperature by more than 8&deg;C");
 
-        newerr |= SetError(fFtmControlTriggerRateTooLow>2 && fDimMcp.state()==MCP::State::kTakingData,
+        newerr |= SetError(fFtmControlTriggerRateTooLow>1 && fDimMcp.state()==MCP::State::kTakingData,
                            "Trigger rate below 1Hz during data taking");
 
@@ -2797,4 +2812,5 @@
         fDimFscControl.SetCallback(bind(&StateMachineSmartFACT::HandleFscControlStateChange, this, placeholders::_1));
         fDimDriveControl.SetCallback(bind(&StateMachineSmartFACT::HandleDriveControlStateChange, this, placeholders::_1));
+        fDimMcp.SetCallback(bind(&StateMachineSmartFACT::HandleMcpStateChange, this));
         fDimControl.SetCallback(bind(&StateMachineSmartFACT::HandleControlStateChange, this, placeholders::_1));
         fDimControl.AddCallback("dotest.dim", bind(&StateMachineSmartFACT::HandleDoTest, this, placeholders::_1));
