Index: /trunk/FACT++/src/ftmctrl.cc
===================================================================
--- /trunk/FACT++/src/ftmctrl.cc	(revision 10734)
+++ /trunk/FACT++/src/ftmctrl.cc	(revision 10735)
@@ -872,4 +872,16 @@
     }
 
+    bool DisablePixel(uint16_t idx, bool disable)
+    {
+        if (idx>FTM::StaticData::kMaxPixelIdx)
+            return false;
+
+        fStaticData.EnablePixel(idx, !disable);
+
+        CmdSendStatDat();
+
+        return true;
+    }
+
     int GetState() const { return IsConnected() ? fState : (int)FTM::kDisconnected; }
 };
@@ -1318,4 +1330,14 @@
     }
 
+    int DisablePixel(const EventImp &evt)
+    {
+        if (!CheckEventSize(evt.GetSize(), "DisablePixel", 3))
+            return T::kSM_FatalError;
+
+        fFTM.DisablePixel(evt.GetUShort(), evt.GetText()[2]!=0);
+
+        return T::GetCurrentState();
+    }
+
     int Disconnect()
     {
@@ -1461,4 +1483,8 @@
              "|Enable[bool]:Whether FTU should be enabled or disabled (yes/no)");
 
+        AddEvent("DISABLE_PIXEL", "S:1;B:1", kStateIdle)
+            (boost::bind(&StateMachineFTM::DisablePixel, this, _1))
+            ("");
+
         AddEvent("TOGGLE_FTU", "I:1", kStateIdle)
             (boost::bind(&StateMachineFTM::ToggleFTU, this, _1))
@@ -1573,9 +1599,4 @@
             ("(Re)connect ethernet connection to FTM, a new address can be given"
              "|[host][string]:new ethernet address in the form <host:port>");
-
-        // Other
-        AddEvent(kCmdTest, "TEST", "O")
-            (boost::bind(&StateMachineFTM::Test, this, _1))
-            ("Just for test purpose, do not use");
 
         fFTM.StartConnect();
