diff --git a/core/base/CbmDigitizeBase.h b/core/base/CbmDigitizeBase.h
index a2bca30e4652dfdfd5b2eaa9f4c96e0946b6488b..b0321af639993a75c724777a8081f7672f7efaf7 100644
--- a/core/base/CbmDigitizeBase.h
+++ b/core/base/CbmDigitizeBase.h
@@ -170,10 +170,17 @@ public:
   void SetProduceNoise(Bool_t choice = kTRUE) { fProduceNoise = choice; }
 
 
+  /** @brief Set the run start time
+   ** @param Run start time [ns]
+   **/
+  void SetRunStartTime(Double_t time) { fRunStartTime = time; }
+
+
 protected:
   Bool_t fEventMode;                          /// Flag for event-by-event mode
   Bool_t fProduceNoise;                       /// Flag for production of inter-event noise
   Bool_t fCreateMatches;                      /// Flag for creation of links to MC
+  Double_t fRunStartTime = 0;                 /// Start time of run [ns]
   Int_t fCurrentInput;                        /// Number of current input
   Int_t fCurrentEvent;                        /// Number of current MC event
   Int_t fCurrentMCEntry;                      /// Number of current MC entry
diff --git a/sim/detectors/sts/CbmStsDigitize.cxx b/sim/detectors/sts/CbmStsDigitize.cxx
index 7778459d33832119131da3cd4f8d047760183163..757f08b65893ad7d5556dcabdd20bc377c9e48bd 100644
--- a/sim/detectors/sts/CbmStsDigitize.cxx
+++ b/sim/detectors/sts/CbmStsDigitize.cxx
@@ -195,7 +195,7 @@ void CbmStsDigitize::Exec(Option_t* /*opt*/)
   // --- Generate noise from previous to current event time
   if (fParSim->Noise()) {
     Int_t nNoise         = 0;
-    Double_t tNoiseStart = fNofEvents ? eventTimePrevious : 1000.;
+    Double_t tNoiseStart = fNofEvents ? eventTimePrevious : fRunStartTime;
     Double_t tNoiseEnd   = fCurrentEventTime;
     for (auto& entry : fModules)
       nNoise += entry.second->GenerateNoise(tNoiseStart, tNoiseEnd);
diff --git a/sim/response/base/CbmDigitization.cxx b/sim/response/base/CbmDigitization.cxx
index 9080ba6870b7e02976f5f0cd0ec0e9b1e5e3a34d..d59f860a08ed578dd5458ba39d09fd7b4d0704e2 100644
--- a/sim/response/base/CbmDigitization.cxx
+++ b/sim/response/base/CbmDigitization.cxx
@@ -378,6 +378,7 @@ void CbmDigitization::Run(Int_t event1, Int_t event2)
       if (fMode == Mode::EventByEvent) digitizer->SetEventMode();
       digitizer->SetProduceNoise(fProduceNoise);
       digitizer->SetCreateMatches(fCreateMatches);
+      digitizer->SetRunStartTime(fSource->GetStartTime());
       run->AddTask(digitizer);
       LOG(info) << fName << ": Added task " << digitizer->GetName();
     }  //? active and digitizer instance present
diff --git a/sim/response/base/CbmDigitizationSource.h b/sim/response/base/CbmDigitizationSource.h
index 17517920ce3984bade26e50a6726805a7d19c527..d9eb0c3ad05b8730cd86c67c3935b8aed1dc3ff3 100644
--- a/sim/response/base/CbmDigitizationSource.h
+++ b/sim/response/base/CbmDigitizationSource.h
@@ -137,6 +137,9 @@ public:
     return kFILE;
   }
 
+  /** @brief Run start time **/
+  Double_t GetStartTime() { return fTimeStart; }
+
 
   /** @brief Abstract in base class. No implementation here. **/
   virtual Bool_t Init();