Index: /trunk/FACT++/src/smartfact.cc
===================================================================
--- /trunk/FACT++/src/smartfact.cc	(revision 13956)
+++ /trunk/FACT++/src/smartfact.cc	(revision 13957)
@@ -403,4 +403,5 @@
     DimDescribedState fDimDataLogger;
     DimDescribedState fDimDriveControl;
+    DimDescribedState fDimTimeCheck;
     DimDescribedState fDimMagicWeather;
     DimDescribedState fDimTngWeather;
@@ -1609,4 +1610,7 @@
             msg << "Moon within the field-of-view of the camera<br/>";
 
+        if (fDimTimeCheck.state()==2)
+            msg << "Warning NTP time difference of drive PC exceeds 1s.<br/>";
+
 
         if (fDimFeedback.state()!=Feedback::State::kCalibrating &&
@@ -1664,16 +1668,33 @@
         {
             string col = HTML::kBlue;
-            if (fMcpConfigurationState!=MCP::State::kIdle &&       // Idle
-                fMcpConfigurationState!=MCP::State::kTriggerOn &&  // Trigger On
-                fMcpConfigurationState!=MCP::State::kTakingData)  // Taking Data
-                col = HTML::kYellow;
-            else
+            switch (fMcpConfigurationState)
+            {
+            case MCP::State::kIdle:
+                col = HTML::kWhite;
+                break;
+            case MCP::State::kConfiguring1:
+            case MCP::State::kConfiguring2:
+            case MCP::State::kConfiguring3:
+            case MCP::State::kConfigured:
+            case MCP::State::kTriggerOn:
+                col = HTML::kBlue;
+                break;
+            case MCP::State::kTakingData:
+                col = HTML::kBlue;
                 if (fDimFadControl.state()==FAD::State::kWritingData)
                     col = HTML::kGreen;
+                break;
+            }
+
+            const bool other =
+                fDimRateControl.state()==RateControl::State::kSettingGlobalThreshold ||
+                fDimRateScan.state()!=RateScan::State::kInProgress;
+
+            if (other)
+                col = HTML::kBlue;
 
             out << col << '\t';
 
-            if (fDimRateControl.state()!=RateControl::State::kSettingGlobalThreshold &&
-                fDimRateScan.state()!=RateScan::State::kInProgress)
+            if (!other)
             {
                 switch (fMcpConfigurationState)
@@ -1987,4 +2008,5 @@
         fDimDataLogger  ("DATA_LOGGER"),
         fDimDriveControl("DRIVE_CONTROL"),
+        fDimTimeCheck   ("TIME_CHECK"),
         fDimMagicWeather("MAGIC_WEATHER"),
         fDimTngWeather  ("TNG_WEATHER"),
@@ -2003,4 +2025,5 @@
         fDimDataLogger.Subscribe(*this);
         fDimDriveControl.Subscribe(*this);
+        fDimTimeCheck.Subscribe(*this);
         fDimMagicWeather.Subscribe(*this);
         fDimTngWeather.Subscribe(*this);
