diff --git a/macro/run/run_unpack_tsa.C b/macro/run/run_unpack_tsa.C
index 2152366abbf139bfbaa0a4f078756a7efaf1978a..a230e2d5a37b521b8707b0329cdfa7f402f3c01a 100644
--- a/macro/run/run_unpack_tsa.C
+++ b/macro/run/run_unpack_tsa.C
@@ -114,7 +114,7 @@ void run_unpack_tsa(std::string infile = "test.tsa", UInt_t runid = 0, const cha
   // ---- STS ----
   std::shared_ptr<CbmStsUnpackConfig> stsconfig = nullptr;
 
-  stsconfig = std::make_shared<CbmStsUnpackConfig>("", runid);
+  stsconfig = std::make_shared<CbmStsUnpackConfig>(std::string(setupName), runid);
   if (stsconfig) {
     // stsconfig->SetDebugState();
     stsconfig->SetDoWriteOutput();
diff --git a/reco/detectors/sts/unpack/CbmStsUnpackConfig.cxx b/reco/detectors/sts/unpack/CbmStsUnpackConfig.cxx
index c862b1d93f7fa217c6f911ed48878bebb65ded04..2e073eccb414643c5d220410f562e1e6cfef2070 100644
--- a/reco/detectors/sts/unpack/CbmStsUnpackConfig.cxx
+++ b/reco/detectors/sts/unpack/CbmStsUnpackConfig.cxx
@@ -68,11 +68,17 @@ std::shared_ptr<CbmStsUnpackAlgoBase> CbmStsUnpackConfig::chooseAlgo()
 {
   if (fDoLog) LOG(info) << fName << "::Init - chooseAlgo";
 
+  // Non default unpacker selection
+  // Legacy unpacker for data taken before mcbm 2021
+  if (fGeoSetupTag.find("mcbm_beam_2020_03") != fGeoSetupTag.npos) {
+    auto algo = std::make_shared<CbmStsUnpackAlgoLegacy>();
+    LOG(info) << fName << "::chooseAlgo() - selected algo = " << algo->Class_Name();
+    return algo;
+  }
+
   // Default unpacker selection
   // Unpacker algo from mcbm 2021 on and hopefully default for a long time.
   auto algo = std::make_shared<CbmStsUnpackAlgo>();
-  //auto algo = std::make_shared<CbmStsUnpackAlgoLegacy>();  // for 2020 runs
-
   LOG(info) << fName << "::chooseAlgo() - selected algo = " << algo->Class_Name();
   return algo;