Index: fact/FADctrl/FAD.cc
===================================================================
--- fact/FADctrl/FAD.cc	(revision 10101)
+++ fact/FADctrl/FAD.cc	(revision 10103)
@@ -27,9 +27,9 @@
    {"srclk", &FAD::cmd_srclk, true, 1, "<on|off>", "Set SRCLK"},
    {"sclk", &FAD::cmd_sclk, true, 1, "<on|off>", "Set SCLK"},
-   {"trigger", &FAD::cmd_trigger, false, 0, "[n|cont|stop]", "Issue software triggers"},
+   {"trigger", &FAD::cmd_trigger, false, 0, "[n|cont|stop|enable|disable]", "Issue software triggers"},
    {"roi", &FAD::cmd_roi, true, 2, "<channel range> <value>", "Set region-of-interest to value"},
    {"dac", &FAD::cmd_dac, true, 2, "<range> <value>", "Set DAC numbers in range to value"},
    {"address", &FAD::cmd_address, true, 2, "<range> <value>", "Set addresses in range to value"},
-   {"send", &FAD::cmd_send, true, 1, "<value>", "Set arbitrary data to board"},
+   {"send", &FAD::cmd_send, true, 1, "<value>", "Send arbitrary data to board"},
    {"acalib", &FAD::cmd_acalib, true, 0, "[n|invalidate|file]", "Perform or read amplitude calibration (n events)"},
    //{"wmode", &FAD::cmd_wmode, 0, "<run|stop>", "Domino wave running or stopped during read out"},
@@ -206,5 +206,4 @@
 } 
 
-
 //
 // Switch SCLK
@@ -258,5 +257,5 @@
 
   int Num;
-
+  
   for (unsigned int i=0; i<Boards.size(); i++) {
 	if (Parameter.size() == 1) Boards[i]->Send(CMD_Trigger);
@@ -269,4 +268,6 @@
 	else if (Match(Parameter[1],"continuous")) Boards[i]->Send(CMD_Trigger_C);
 	else if (Match(Parameter[1],"stop")) Boards[i]->Send(CMD_Trigger_S);
+	else if (Match(Parameter[1],"enable")) Boards[i]->Send(CMD_TRIGGERS_ON);
+	else if (Match(Parameter[1],"disable")) Boards[i]->Send(CMD_TRIGGERS_OFF);
 	else {
 	  PrintUsage();
@@ -274,4 +275,9 @@
 	}
   }
+    if (Match(Parameter[1],"enable")) PrintMessage("all active boards accept now incoming triggers\n");
+  else if (Match(Parameter[1],"disable")) PrintMessage("no active board accepts any incoming trigger anymore.\n");
+ // else PrintUsage();
+
+  
 } 
 
@@ -723,4 +729,7 @@
 	Status.push_back(Boards[Brd]->GetStatus());
 	
+	// Disarm first, in order to change ROI & DAC settings
+	//Boards[Brd]->Send(CMD_TRIGGERS_OFF);
+
     // Set all ROI to 1024
 	Boards[Brd]->Send(&ROICmd[0], ROICmd.size()*sizeof(unsigned short));
@@ -734,4 +743,8 @@
 	// Switch off SCLK
 	//Boards[Brd]->Send(CMD_SCLK_OFF);
+
+	// Arm again, in order to take data
+	//Boards[Brd]->Send(CMD_TRIGGERS_ON);
+
 
 	// Start accumulation
@@ -760,12 +773,18 @@
 	Boards[Brd]->Send(CMD_SCLK_ON);
 
+	// Disarm first, in order to change ROI & DAC settings
+	//Boards[Brd]->Send(CMD_TRIGGERS_OFF);
+
 	// Set second DAC value
-    DACCmd[1] = htons(50000);
-    DACCmd[3] = htons(50000);
-    DACCmd[5] = htons(50000);
+	DACCmd[1] = htons(50000);
+	DACCmd[3] = htons(50000);
+	DACCmd[5] = htons(50000);
 	Boards[Brd]->Send(DACCmd, sizeof(DACCmd));
 
 	// Switch off SCLK
 	//Boards[Brd]->Send(CMD_SCLK_OFF);
+
+	// Arm again
+	//Boards[Brd]->Send(CMD_TRIGGERS_ON);
 
 	// Start accumulation
Index: fact/FADctrl/FAD.h
===================================================================
--- fact/FADctrl/FAD.h	(revision 10101)
+++ fact/FADctrl/FAD.h	(revision 10103)
@@ -62,15 +62,15 @@
     ~FAD();
 
-    void cmd_exit();		void cmd_help();
-    void cmd_board();		void cmd_status();
-    void cmd_acalib();		void cmd_serial();
-    void cmd_trigger(); 	void cmd_socketmode();
-	void cmd_srclk();		void cmd_sclk();
-	void cmd_dwrite();		void cmd_domino();
-    void cmd_wmode();		void cmd_rmode();
-    void cmd_dmode();		void cmd_dac();
-	void cmd_roi();			void cmd_address();
-	void cmd_phase();		void cmd_send();
-	void cmd_cancel();		void cmd_update();
+		void cmd_exit();			void cmd_help();
+		void cmd_board();			void cmd_status();
+		void cmd_acalib();		void cmd_serial();
+		void cmd_trigger(); 	void cmd_socketmode();
+		void cmd_srclk();			void cmd_sclk();
+		void cmd_dwrite();		void cmd_domino();
+		void cmd_wmode();			void cmd_rmode();
+		void cmd_dmode();			void cmd_dac();
+		void cmd_roi();				void cmd_address();
+		void cmd_phase();			void cmd_send();
+		void cmd_cancel();		void cmd_update();
 
     void EnableDomino();
Index: fact/FADctrl/FADFormat.h
===================================================================
--- fact/FADctrl/FADFormat.h	(revision 10101)
+++ fact/FADctrl/FADFormat.h	(revision 10103)
@@ -26,4 +26,7 @@
 #define CMD_Read 0x0A00 		// read from Config-RAM
 #define CMD_Write 0x0500 		// write to Config-RAM
+
+#define CMD_TRIGGERS_ON 0x1800	// enables the trigger line -- incoming triggers can now be accepted
+#define CMD_TRIGGERS_OFF 0x1900 // disables the trigger line -- no trigger will be accepted
 
 //
Index: fact/FADctrl/FADctrl.cc
===================================================================
--- fact/FADctrl/FADctrl.cc	(revision 10101)
+++ fact/FADctrl/FADctrl.cc	(revision 10103)
@@ -75,4 +75,6 @@
   DimClient::sendCommand(SERVER_NAME"/Command", "dwrite on");
   DimClient::sendCommand(SERVER_NAME"/Command", "roi all 1024");
+
+  DimClient::sendCommand(SERVER_NAME"/Command", "trigger enable");
 
   M.PrintMessage("Finished initalizing all boards\n");
