diff --git a/algo/unpack/Unpack.cxx b/algo/unpack/Unpack.cxx
index 6d179ed130d82270ccfc9e9a9243dbdbcfa74da7..230cdc86b38e9c5b52a98df938e2287ccc4d5292 100644
--- a/algo/unpack/Unpack.cxx
+++ b/algo/unpack/Unpack.cxx
@@ -130,17 +130,9 @@ namespace cbm::algo
   // ----------------------------------------------------------------------------
 
   // -----   Initialisation   ---------------------------------------------------
-  bool Unpack::Init(std::optional<std::vector<fles::SubsystemIdentifier>> subIds)
+  bool Unpack::Init(std::vector<fles::SubsystemIdentifier> subIds)
   {
-    if (!subIds) {
-      fSubIds = {
-        fles::SubsystemIdentifier::STS, fles::SubsystemIdentifier::MUCH, fles::SubsystemIdentifier::RPC,
-        fles::SubsystemIdentifier::T0,  fles::SubsystemIdentifier::TRD,  fles::SubsystemIdentifier::TRD2D,
-      };
-    }
-    else {
-      fSubIds = *subIds;
-    }
+    fSubIds = subIds;
 
     // --- Common parameters for all components for STS
     uint32_t numChansPerAsicSts   = 128;  // R/O channels per ASIC for STS
diff --git a/algo/unpack/Unpack.h b/algo/unpack/Unpack.h
index 3a8ab29b4a89538b41193d9ceafdc93bca554759..00ffce39bdd5775e7cc1abe45543d0f154aad862 100644
--- a/algo/unpack/Unpack.h
+++ b/algo/unpack/Unpack.h
@@ -105,7 +105,14 @@ namespace cbm::algo
      * @param subIds: vector of subsystem identifiers to unpack, default: all
      * @see Init()
      **/
-    bool Init(std::optional<std::vector<fles::SubsystemIdentifier>> subIds = {});
+    bool Init(std::vector<fles::SubsystemIdentifier> subIds = {
+                fles::SubsystemIdentifier::STS,
+                fles::SubsystemIdentifier::MUCH,
+                fles::SubsystemIdentifier::RPC,
+                fles::SubsystemIdentifier::T0,
+                fles::SubsystemIdentifier::TRD,
+                fles::SubsystemIdentifier::TRD2D,
+              });
 
     bool DetectorEnabled(fles::SubsystemIdentifier subId)
     {