diff --git a/macro/run/run_unpack_tsa.C b/macro/run/run_unpack_tsa.C
index 9cabe33e6196fb6d076238f03234050a71042203..4411051373384d08fcd61fb7514b165880fa0457 100644
--- a/macro/run/run_unpack_tsa.C
+++ b/macro/run/run_unpack_tsa.C
@@ -114,12 +114,13 @@ void run_unpack_tsa(std::vector<std::string> infile = {"test.tsa"}, UInt_t runid
       richconfig->SetMonitor(GetRichMonitor(outfilename, true));
     }
 
+    richconfig->DoTotOffsetCorrection();  // correct ToT offset
     richconfig->SetDebugState();
     richconfig->SetDoWriteOutput();
     std::string parfilesbasepathRich = Form("%s/macro/beamtime/mcbm2021/", srcDir.Data());
     richconfig->SetParFilesBasePath(parfilesbasepathRich);
     richconfig->SetSystemTimeOffset(256000 - 1200);  // [ns] 1 MS and additional correction
-    if (runid > 1904)  richconfig->SetSystemTimeOffset(-1200);
+    if (runid > 1904) richconfig->SetSystemTimeOffset(-1200);
     if (runid == 1588) richconfig->MaskDiRICH(0x7150);
   }
   // -------------
diff --git a/reco/detectors/rich/unpack/CbmRichUnpackAlgoBase.h b/reco/detectors/rich/unpack/CbmRichUnpackAlgoBase.h
index a07b0b54c7c99ae0be671b20dfc61a75db0f75c7..403d06387219764bf6d398da4a2978d15d83c6cd 100644
--- a/reco/detectors/rich/unpack/CbmRichUnpackAlgoBase.h
+++ b/reco/detectors/rich/unpack/CbmRichUnpackAlgoBase.h
@@ -228,6 +228,9 @@ public:
   /** @brief Set Addresses of DiRICH boards to be masked @param maskedDiRICHes vector of Addresses */
   void SetMaskedDiRICHes(std::vector<Int_t>* maskedDiRICHes) { fMaskedDiRICHes = maskedDiRICHes; }
 
+  /** @brief (De-) Activate Tot offset correction of digis @param activate bool to activate the Tot offset correction */
+  void DoTotOffsetCorrection(Bool_t activate = true) { fbDoToTCorr = activate; }
+
 protected:
   double calculateTime(uint32_t epoch, uint32_t coarse, uint32_t fine);
 
diff --git a/reco/detectors/rich/unpack/CbmRichUnpackConfig.cxx b/reco/detectors/rich/unpack/CbmRichUnpackConfig.cxx
index 3137f57c654cc76a1e06e89d46cccd65ea958894..035ece320c29f0dc7fb3ec2aba78922920be7ef0 100644
--- a/reco/detectors/rich/unpack/CbmRichUnpackConfig.cxx
+++ b/reco/detectors/rich/unpack/CbmRichUnpackConfig.cxx
@@ -27,6 +27,7 @@ void CbmRichUnpackConfig::InitAlgo()
 {
   if (fDoLog) LOG(info) << fName << "::Init - SetMaskedDiRICHes";
   fAlgo->SetMaskedDiRICHes(&fMaskedDiRICHes);
+  fAlgo->DoTotOffsetCorrection(fbDoToTCorr);
 
   if (fMonitor) { fAlgo->SetMonitor(fMonitor); }
 
diff --git a/reco/detectors/rich/unpack/CbmRichUnpackConfig.h b/reco/detectors/rich/unpack/CbmRichUnpackConfig.h
index 369a50ffaed6ebb52f0d053a5121d08f94091a90..b62ff89b806019a563993b53c9d22c08bda468bf 100644
--- a/reco/detectors/rich/unpack/CbmRichUnpackConfig.h
+++ b/reco/detectors/rich/unpack/CbmRichUnpackConfig.h
@@ -83,6 +83,9 @@ public:
 
   /** @brief Add a monitor to the unpacker. @param value CbmRichUnpackMonitor */
   void SetMonitor(std::shared_ptr<CbmRichUnpackMonitor> value) { fMonitor = value; }
+  
+  /** @brief (De-) Activate Tot offset correction of digis @param activate bool to activate the Tot offset correction */
+  void DoTotOffsetCorrection(Bool_t activate = true) { fbDoToTCorr = activate; }  
 
 protected:
   /**
@@ -99,6 +102,8 @@ protected:
 
   /** @brief Selector of Unpacker Version. */
   CbmRichUnpackerVersion fUnpackerVersion = CbmRichUnpackerVersion::v02;
+  
+  Bool_t fbDoToTCorr = true;  // kTRUE activates ToT correction from Parameterfile
 
 private:
   ClassDef(CbmRichUnpackConfig, 3)