diff --git a/macro/mvd/qa/mvd_qa4_reco.C b/macro/mvd/qa/mvd_qa4_reco.C
index 9d3de7e5fe6866d9b9e31e27a5cad57f01e96587..f20c65b153cfa4b97f0b4aaeb8e5ba0bb9371f5f 100644
--- a/macro/mvd/qa/mvd_qa4_reco.C
+++ b/macro/mvd/qa/mvd_qa4_reco.C
@@ -59,7 +59,7 @@ void mvd_qa4_reco(const char* setup = "sis100_electron")
 
 
   // ----    Debug option   -------------------------------------------------
-  gDebug = 1;
+  gDebug = 0;
   // ------------------------------------------------------------------------
 
 
diff --git a/reco/detectors/mvd/CMakeLists.txt b/reco/detectors/mvd/CMakeLists.txt
index 5fde4b285cdeb9876b1ef7833fcaad243e6e3012..f60a874ba4ebe04e7341d6684eacabace86b1304 100644
--- a/reco/detectors/mvd/CMakeLists.txt
+++ b/reco/detectors/mvd/CMakeLists.txt
@@ -8,6 +8,7 @@ set(SRCS
   #plugins/tasks/CbmMvdSensorDigiToHitTask.cxx
   plugins/tasks/CbmMvdSensorHitfinderTask.cxx
   plugins/tasks/CbmMvdSensorClusterfinderTask.cxx
+  #plugins/tasks/CbmMvdSensorFindHitTask.cxx
   
   CbmMvdHitfinder.cxx  #OLD
 # CbmMvdDigiToHit.cxx
diff --git a/reco/detectors/mvd/CbmMvdClusterfinder.cxx b/reco/detectors/mvd/CbmMvdClusterfinder.cxx
index 2bb8f0b1966b410cd008ac55ff89733a81f9699a..2473aef2d3e32b591a8ab0484485e5520a27765b 100644
--- a/reco/detectors/mvd/CbmMvdClusterfinder.cxx
+++ b/reco/detectors/mvd/CbmMvdClusterfinder.cxx
@@ -84,7 +84,7 @@ void CbmMvdClusterfinder::Exec(Option_t* /*opt*/)
 {
   // --- Start timer
  fTimer.Start();
- cout << "CbmMvdClusterfinder::Exec : Starting Exec "  << endl;
+ if (gDebug>0) {cout << "CbmMvdClusterfinder::Exec : Starting Exec "  << endl;}
  fCluster->Delete();
  if (fDigiMan->GetNofDigis(ECbmModuleId::kMvd)) {
     if (fVerbose) cout << "//----------------------------------------//";
@@ -95,7 +95,7 @@ void CbmMvdClusterfinder::Exec(Option_t* /*opt*/)
 
     Int_t nDigis = fDigiMan->GetNofDigis(ECbmModuleId::kMvd);
 
-    cout << "CbmMvdClusterfinder::Exec - nDigis= " << nDigis << endl;
+    if (gDebug>0) {cout << "CbmMvdClusterfinder::Exec - nDigis= " << nDigis << endl;}
 
     for (Int_t i = 0; i < nDigis; i++) {
       digi = new CbmMvdDigi(*(fDigiMan->Get<CbmMvdDigi>(i)));
@@ -105,7 +105,7 @@ void CbmMvdClusterfinder::Exec(Option_t* /*opt*/)
     }
 
 
-    cout << "CbmMvdClusterfinder::Exec : Communicating with Plugin: " << nTargetPlugin << endl;
+    if (gDebug>0) {cout << "CbmMvdClusterfinder::Exec : Communicating with Plugin: " << nTargetPlugin << endl;}
 
 
     //fDetector->SendInputDigis(fDigiMan);
diff --git a/reco/detectors/mvd/CbmMvdHitfinder.cxx b/reco/detectors/mvd/CbmMvdHitfinder.cxx
index 343df77ec548f50b8c481b65bd039efd3b93990c..00000cbf2e3014ffa065d5ba37a412f132a12388 100644
--- a/reco/detectors/mvd/CbmMvdHitfinder.cxx
+++ b/reco/detectors/mvd/CbmMvdHitfinder.cxx
@@ -11,9 +11,9 @@
 
 #include "CbmMvdPoint.h"
 #include "SensorDataSheets/CbmMvdMimosa26AHR.h"
-#include "plugins/tasks/CbmMvdSensorFindHitTask.h"
+// #include "plugins/tasks/CbmMvdSensorFindHitTask.h" //digi to hit
 #include "CbmDigiManager.h"
-#include "plugins/tasks/CbmMvdSensorHitfinderTask.h"
+#include "plugins/tasks/CbmMvdSensorHitfinderTask.h" // cluster to hit
 #include "tools/CbmMvdGeoHandler.h"
 
 
@@ -105,21 +105,24 @@ void CbmMvdHitfinder::Exec(Option_t* /*opt*/)
   fHits->Clear();
   fTimer.Start();
   Int_t nTargetPlugin= fDetector->DetectPlugin(fMyPluginID);
-  Int_t nDigis=0;
-  CbmMvdDigi* digi=0;
+  //Int_t nDigis=0;
+  //CbmMvdDigi* digi=0;
   CbmMvdCluster* cluster=0;
 
   if (fDigiMan->IsPresent(ECbmModuleId::kMvd) || fInputCluster) { //checks if data sources are available
     if (fVerbose) cout << endl << "//----------------------------------------//" << endl;
     if (!fUseClusterfinder) {
+      /*
       fDigiMan->GetNofDigis(ECbmModuleId::kMvd);
       for (Int_t i = 0; i < nDigis; i++) {
         digi = new CbmMvdDigi(*(fDigiMan->Get<CbmMvdDigi>(i)));
         digi->SetRefId(i);
 
         fDetector->SendInputToSensorPlugin(digi->GetDetectorId(), nTargetPlugin, static_cast<TObject*>(digi));
+        */
+      Fatal("CbmMvdHitFinder - Mode without cluster finder is currently not supported ", "CbmMvdHitFinder - Mode without cluster finder is currently not supported ");
       }
-    }
+
 
 
       //fDetector->SendInputDigis(fDigiMan);
@@ -153,7 +156,7 @@ void CbmMvdHitfinder::Exec(Option_t* /*opt*/)
     //fDetector->GetMatchArray (nTargetPlugin, fTmpMatch);
     //fHits->AbsorbObjects(fDetector->GetOutputHits(), 0, fDetector->GetOutputHits()->GetEntriesFast() - 1);
 
-    cout << "Total of " << fHits->GetEntriesFast() << " hits found" << endl;
+    //cout << "Total of " << fHits->GetEntriesFast() << " hits found" << endl;
     if (fVerbose) cout << "Finished writing Hits" << endl;
     if (fVerbose) cout << "//----------------------------------------//" << endl << endl;
     LOG(info) << "+ " << setw(20) << GetName() << ": Created: " << fHits->GetEntriesFast() << " hits in " << fixed
@@ -183,6 +186,7 @@ InitStatus CbmMvdHitfinder::Init()
 
   // **********  Get input arrays
   if (!fUseClusterfinder) {
+    Fatal("CbmMvdHitFinder - Mode without cluster finder is currently not supported ", "CbmMvdHitFinder - Mode without cluster finder is currently not supported ");
     fDigiMan = CbmDigiManager::Instance();
     fDigiMan->Init();
     if (!fDigiMan->IsPresent(ECbmModuleId::kMvd)) {
@@ -212,16 +216,19 @@ InitStatus CbmMvdHitfinder::Init()
   std::map<int, CbmMvdSensor*>& sensorMap = fDetector->GetSensorMap();
   UInt_t plugincount=fDetector->GetPluginCount();
 
+    /*
   if (!fUseClusterfinder) {
+
     for (auto itr = sensorMap.begin(); itr != sensorMap.end(); itr++) {
       CbmMvdSensorFindHitTask* hitfinderTask = new CbmMvdSensorFindHitTask();
 
       itr->second->AddPlugin(hitfinderTask);
       itr->second->SetHitPlugin(plugincount);
       fMyPluginID=400;
+
     }
-  }
-  else {
+
+  else {*/
     for (auto itr = sensorMap.begin(); itr != sensorMap.end(); itr++) {
       CbmMvdSensorHitfinderTask* hitfinderTask = new CbmMvdSensorHitfinderTask();
 
@@ -229,7 +236,7 @@ InitStatus CbmMvdHitfinder::Init()
       itr->second->SetHitPlugin(plugincount);
       fMyPluginID=300;
     }
-  }
+  //}
 
   fDetector->SetSensorArrayFilled(kTRUE);
   fDetector->SetPluginCount(plugincount+1);
diff --git a/reco/detectors/mvd/CbmMvdRecoLinkDef.h b/reco/detectors/mvd/CbmMvdRecoLinkDef.h
index b764523df4c869b48d8427499657ceebf2219b48..824d7bd3ae441cec4435d9f5c7324be556d282b0 100644
--- a/reco/detectors/mvd/CbmMvdRecoLinkDef.h
+++ b/reco/detectors/mvd/CbmMvdRecoLinkDef.h
@@ -14,6 +14,7 @@
 #pragma link C++ class CbmMvdSensorHitfinderTask + ;  //OLD
 #pragma link C++ class CbmMvdSensorClusterfinderTask + ;  //OLD
 #pragma link C++ class CbmMvdTrackingInterface + ;
+//#pragma link C++ class CbmMvdSensorFindHitTask + ;
 
 #pragma link C++ class CbmMvdQa+;
 //#pragma link C++ class CbmMvdClusterAna+;
diff --git a/reco/detectors/mvd/plugins/tasks/CbmMvdSensorClusterfinderTask.cxx b/reco/detectors/mvd/plugins/tasks/CbmMvdSensorClusterfinderTask.cxx
index a4e5ca56e08ffb60adf3f993a11833d801e352c5..7c45990cd9cd2371d7a298807b8eb4460fe5a9fb 100644
--- a/reco/detectors/mvd/plugins/tasks/CbmMvdSensorClusterfinderTask.cxx
+++ b/reco/detectors/mvd/plugins/tasks/CbmMvdSensorClusterfinderTask.cxx
@@ -94,7 +94,7 @@ void CbmMvdSensorClusterfinderTask::InitTask(CbmMvdSensor* mysensor)
 
 
   fSensor = mysensor;
-  cout << "-Start- " << GetName() << ": Initialisation of sensor " << fSensor->GetName() << endl;
+  if(gDebug>0){cout << "-Start- CbmMvdSensorClusterfinderTask : Initialisation of sensor " << fSensor->GetName() << endl;}
   fInputBuffer  = new TClonesArray("CbmMvdDigi", 100);
   fOutputBuffer = new TClonesArray("CbmMvdCluster", 100);
 
@@ -188,10 +188,10 @@ void CbmMvdSensorClusterfinderTask::ExecChain() { Exec(); }
 // -----   Public method Exec   --------------
 void CbmMvdSensorClusterfinderTask::Exec()
 {
-
+  if(gDebug>0){
   cout << "CbmMvdSensorClusterfinderTask::Exec - Running Sensor " << fSensor->GetName() << endl;
   cout << "CbmMvdSensorClusterfinderTask::Exec - InputBufferSize " << fInputBuffer->GetEntriesFast() << endl;
-
+  }
   if (fInputBuffer->GetEntriesFast() > 0) {
     fOutputBuffer->Delete();
     inputSet                    = kFALSE;
@@ -236,6 +236,8 @@ void CbmMvdSensorClusterfinderTask::Exec()
 
     if (gDebug > 0) { cout << "\n-I- " << GetName() << ": VolumeId " << fSensor->GetVolumeId() << endl; }
 
+    //cout<<"CbmMvdSensorClusterfinderTask: Working with " << nDigis << " digis" << endl;
+
     for (iDigi = 0; iDigi < nDigis; iDigi++) {
 
       if (gDebug > 0 && iDigi % 10000 == 0) { cout << "-I- " << GetName() << " Digi:" << iDigi << endl; };
@@ -256,7 +258,7 @@ void CbmMvdSensorClusterfinderTask::Exec()
 
       if (gDebug > 0) {
         cout << "-I- "
-             << "CbmMvdSensorFindHitTask: Checking for seed pixels..." << endl;
+             << "CbmMvdSensorClusterfinderTask: Checking for seed pixels..." << endl;
       }
 
       if ((GetAdcCharge(digi->GetCharge()) >= fSeedThreshold) && (pixelUsed->At(iDigi) == kFALSE)) {
@@ -267,7 +269,7 @@ void CbmMvdSensorClusterfinderTask::Exec()
 
         pair<Int_t, Int_t> a(digi->GetPixelX(), digi->GetPixelY());
         fDigiMapIt = fDigiMap.find(a);
-        fDigiMap.erase(fDigiMapIt);
+        if(fDigiMapIt!= fDigiMap.end()) {fDigiMap.erase(fDigiMapIt);};
 
         for (ULong64_t iCluster = 0; iCluster < clusterArray->size(); iCluster++) {
 
@@ -320,6 +322,7 @@ void CbmMvdSensorClusterfinderTask::Exec()
   }
   else {  //cout << endl << "No input found." << endl;
   }
+  fInputBuffer->Clear();
 }
 // -------------------------------------------------------------------------
 
diff --git a/reco/detectors/mvd/plugins/tasks/CbmMvdSensorFindHitTask.cxx b/reco/detectors/mvd/plugins/tasks/CbmMvdSensorFindHitTask.cxx
index 6d3b3e41d2bc1fe64703175e325c469af6cb2d21..7475e4aa040165c183f9f612db98d7cb395b0d2a 100644
--- a/reco/detectors/mvd/plugins/tasks/CbmMvdSensorFindHitTask.cxx
+++ b/reco/detectors/mvd/plugins/tasks/CbmMvdSensorFindHitTask.cxx
@@ -245,7 +245,7 @@ void CbmMvdSensorFindHitTask::ExecChain() { Exec(); }
 
 // -----   Virtual public method Exec   --------------
 void CbmMvdSensorFindHitTask::Exec()
-{
+{ cout << "Ich lebe auch" << endl;
 
   // if(!inputSet)
   //  {
diff --git a/reco/detectors/mvd/plugins/tasks/CbmMvdSensorHitfinderTask.cxx b/reco/detectors/mvd/plugins/tasks/CbmMvdSensorHitfinderTask.cxx
index a819bc5653e82a56d8eb9db048af2b00cc022c0f..986487cbcb8eb052d761a2065028275b971149fe 100644
--- a/reco/detectors/mvd/plugins/tasks/CbmMvdSensorHitfinderTask.cxx
+++ b/reco/detectors/mvd/plugins/tasks/CbmMvdSensorHitfinderTask.cxx
@@ -200,7 +200,7 @@ void CbmMvdSensorHitfinderTask::InitTask(CbmMvdSensor* mysensor)
 
 
   fSensor = mysensor;
-  //cout << "-Start- " << GetName() << ": Initialisation of sensor " << fSensor->GetName() << endl;
+  if (gDebug>0){cout << "-Start- CbmMvdSensorHitfinderTask: Initialisation of sensor " << fSensor->GetName() << endl;}
   fInputBuffer  = new TClonesArray("CbmMvdCluster", 100);
   fOutputBuffer = new TClonesArray("CbmMvdHit", 100);
 
diff --git a/sim/detectors/mvd/CbmMvdDigitizer.cxx b/sim/detectors/mvd/CbmMvdDigitizer.cxx
index a73f88411c0f29d003589279607c0cfa12532e9d..41d1d46f192a12c3a631ac366d69180d6b9e88fd 100644
--- a/sim/detectors/mvd/CbmMvdDigitizer.cxx
+++ b/sim/detectors/mvd/CbmMvdDigitizer.cxx
@@ -132,6 +132,8 @@ void CbmMvdDigitizer::Exec(Option_t* /*opt*/)
   Int_t nPoints = fInputPoints->GetEntriesFast();
   Int_t nDigis  = 0;
   CbmMvdPoint* point=0;
+  fTmpDigi->Clear();
+  fTmpMatch->Clear();
 
 
   if (fInputPoints->GetEntriesFast() > 0) {
diff --git a/sim/detectors/mvd/plugins/tasks/CbmMvdSensorDigitizerTask.cxx b/sim/detectors/mvd/plugins/tasks/CbmMvdSensorDigitizerTask.cxx
index 705131320ca850b85669b89ff052007c56285c4c..e77e65a8549d9e4667bbcf20c868d7f34cd6796b 100644
--- a/sim/detectors/mvd/plugins/tasks/CbmMvdSensorDigitizerTask.cxx
+++ b/sim/detectors/mvd/plugins/tasks/CbmMvdSensorDigitizerTask.cxx
@@ -257,7 +257,7 @@ CbmMvdSensorDigitizerTask::CbmMvdSensorDigitizerTask(Int_t iMode)
   , h_ElossVsMomIn(NULL)
 
 { fPluginIDNumber= 100;
-  cout << "Starting CbmMvdSensorDigitizerTask::CbmMvdSensorDigitizerTask() " << endl;
+  if(gDebug>0){cout << "Starting CbmMvdSensorDigitizerTask::CbmMvdSensorDigitizerTask() " << endl;}
 
   fRandGen.SetSeed(2736);
   fEvent       = 0;