diff --git a/src/THcHelicityReader.cxx b/src/THcHelicityReader.cxx
index e956fd1f07181a2e9815933917f20ea9bebb6507..66814306b5042725dfc65620b53b9c5e6b92657a 100644
--- a/src/THcHelicityReader.cxx
+++ b/src/THcHelicityReader.cxx
@@ -8,6 +8,8 @@
 
 #include "THcHelicityReader.h"
 #include "THaEvData.h"
+#include "THcGlobals.h"
+#include "THcParmList.h"
 #include "TMath.h"
 #include "TError.h"
 #include "VarDef.h"
@@ -59,6 +61,15 @@ Int_t THcHelicityReader::ReadDatabase( const char* /*dbfilename*/,
   SetROCinfo(kMPS,2,14,10);
   SetROCinfo(kQrt,2,14,7);
   SetROCinfo(kTime,2,21,2);
+  
+  fADCThreshold = 8000;
+  
+  DBRequest list[] = {
+    {"helicity_adcthreshold",&fADCThreshold, kInt, 0, 1},
+    {0}
+  };
+
+  gHcParms->LoadParmValues(list, "");
 
   return THaAnalysisObject::kOK;
 }
@@ -124,27 +135,27 @@ Int_t THcHelicityReader::ReadData( const THaEvData& evdata )
   // Get the helicity control signals.  These are from the pedestals
   // acquired by FADC channels.
 
-  UInt_t helpraw = evdata.GetData(Decoder::kPulsePedestal,
+  Int_t helpraw = evdata.GetData(Decoder::kPulsePedestal,
 				  fROCinfo[kHel].roc,
 				  fROCinfo[kHel].slot,
 				  fROCinfo[kHel].index, 0);
-  UInt_t helmraw = evdata.GetData(Decoder::kPulsePedestal,
+  Int_t helmraw = evdata.GetData(Decoder::kPulsePedestal,
 				  fROCinfo[kHelm].roc,
 				  fROCinfo[kHelm].slot,
 				  fROCinfo[kHelm].index, 0);
-  UInt_t mpsraw = evdata.GetData(Decoder::kPulsePedestal,
+  Int_t mpsraw = evdata.GetData(Decoder::kPulsePedestal,
 				  fROCinfo[kMPS].roc,
 				  fROCinfo[kMPS].slot,
 				  fROCinfo[kMPS].index, 0);
-  UInt_t qrtraw = evdata.GetData(Decoder::kPulsePedestal,
+  Int_t qrtraw = evdata.GetData(Decoder::kPulsePedestal,
 				  fROCinfo[kQrt].roc,
 				  fROCinfo[kQrt].slot,
 				  fROCinfo[kQrt].index, 0);
 
-  fIsQrt = qrtraw > 1000;
-  fIsMPS = mpsraw > 1000;
-  fIsHelp = helpraw > 1000;
-  fIsHelm = helmraw > 1000;
+  fIsQrt = qrtraw > fADCThreshold;
+  fIsMPS = mpsraw > fADCThreshold;
+  fIsHelp = helpraw > fADCThreshold;
+  fIsHelm = helmraw > fADCThreshold;
 
   return 0;
 }
diff --git a/src/THcHelicityReader.h b/src/THcHelicityReader.h
index a65ad13d6abd9e3cd63b0d3eae70c2da73b23488..c594628baf4e6f7c8980e92d470a0e5138629c16 100644
--- a/src/THcHelicityReader.h
+++ b/src/THcHelicityReader.h
@@ -52,6 +52,8 @@ protected:
   Bool_t fIsHelp;
   Bool_t fIsHelm;
 
+  Int_t fADCThreshold;		// Threshold for On/Off of helicity signals
+
   ROCinfo  fROCinfo[kCount];
 
   Int_t    fQWEAKDebug;          // Debug level