diff --git a/algo/evbuild/EventBuilder.cxx b/algo/evbuild/EventBuilder.cxx
index 229c718c1173b5dc8f942247d677dd4a107ba994..cfe2b45401f724e998da560a6ba771446ba2ed80 100644
--- a/algo/evbuild/EventBuilder.cxx
+++ b/algo/evbuild/EventBuilder.cxx
@@ -53,6 +53,10 @@ namespace cbm
             event.fData.fTrd.fDigis = CopyRange(ts.fData.fTrd.fDigis, tMin, tMax);
             break;
           }
+          case ECbmModuleId::kTrd2d: {
+            event.fData.fTrd2d.fDigis = CopyRange(ts.fData.fTrd2d.fDigis, tMin, tMax);
+            break;
+          }
           case ECbmModuleId::kTof: {
             event.fData.fTof.fDigis = CopyRange(ts.fData.fTof.fDigis, tMin, tMax);
             break;
diff --git a/reco/mq/CbmDevBuildEvents.cxx b/reco/mq/CbmDevBuildEvents.cxx
index 010a835406483d64c492ff1fa8d0e38d7ec22870..5d336b8f8a57cfb82670940c67876df79c021909 100644
--- a/reco/mq/CbmDevBuildEvents.cxx
+++ b/reco/mq/CbmDevBuildEvents.cxx
@@ -140,13 +140,14 @@ ECbmModuleId CbmDevBuildEvents::GetDetectorId(std::string detName)
   /// FIXME: Disable clang formatting for now as it corrupts all alignment
   /* clang-format off */
   ECbmModuleId detId = ("kT0"   == detName ? ECbmModuleId::kT0
-                       : ("kSts"  == detName ? ECbmModuleId::kSts
-                       : ("kMuch" == detName ? ECbmModuleId::kMuch
-                       : ("kTrd"  == detName ? ECbmModuleId::kTrd
-                       : ("kTof"  == detName ? ECbmModuleId::kTof
-                       : ("kRich" == detName ? ECbmModuleId::kRich
-                       : ("kPsd"  == detName ? ECbmModuleId::kPsd
-                                             : ECbmModuleId::kNotExist)))))));
+                       : ("kSts"   == detName ? ECbmModuleId::kSts
+                       : ("kMuch"  == detName ? ECbmModuleId::kMuch
+                       : ("kTrd"   == detName ? ECbmModuleId::kTrd
+                       : ("kTrd2d" == detName ? ECbmModuleId::kTrd2d
+                       : ("kTof"   == detName ? ECbmModuleId::kTof
+                       : ("kRich"  == detName ? ECbmModuleId::kRich
+                       : ("kPsd"   == detName ? ECbmModuleId::kPsd
+                                             : ECbmModuleId::kNotExist))))))));
   return detId; 
   /// FIXME: Re-enable clang formatting after formatted lines
   /* clang-format on */
diff --git a/reco/tasks/CbmTaskBuildEvents.cxx b/reco/tasks/CbmTaskBuildEvents.cxx
index d31841c63d6027c7a16162f6ca7f3d42218c97f0..02c516fafeb97cebb42ae5cb1dd154934a783670 100644
--- a/reco/tasks/CbmTaskBuildEvents.cxx
+++ b/reco/tasks/CbmTaskBuildEvents.cxx
@@ -68,6 +68,13 @@ CbmDigiTimeslice CbmTaskBuildEvents::FillTimeSlice()
         ts.fData.fTrd.fDigis = *digiVec;
         break;
       }
+      case ECbmModuleId::kTrd2d: {
+        const vector<CbmTrdDigi>* digiVec =
+          boost::any_cast<const vector<CbmTrdDigi>*>(digiBranch->GetBranchContainer());
+        assert(digiVec);
+        ts.fData.fTrd2d.fDigis = *digiVec;
+        break;
+      }
       case ECbmModuleId::kTof: {
         const vector<CbmTofDigi>* digiVec =
           boost::any_cast<const vector<CbmTofDigi>*>(digiBranch->GetBranchContainer());
@@ -221,6 +228,7 @@ size_t CbmTaskBuildEvents::GetNumDigis(const CbmDigiData& data, ECbmModuleId sys
     case ECbmModuleId::kRich: result = data.fRich.fDigis.size(); break;
     case ECbmModuleId::kMuch: result = data.fMuch.fDigis.size(); break;
     case ECbmModuleId::kTrd: result = data.fTrd.fDigis.size(); break;
+    case ECbmModuleId::kTrd2d: result = data.fTrd2d.fDigis.size(); break;
     case ECbmModuleId::kTof: result = data.fTof.fDigis.size(); break;
     case ECbmModuleId::kPsd: result = data.fPsd.fDigis.size(); break;
     case ECbmModuleId::kT0: result = data.fT0.fDigis.size(); break;
diff --git a/reco/tasks/CbmTaskBuildEvents.h b/reco/tasks/CbmTaskBuildEvents.h
index 056d3d10065715d31b50d1f16513e9cb5b1a5ae9..89e3b8730effa23058257d40ed8377d0e89297b8 100644
--- a/reco/tasks/CbmTaskBuildEvents.h
+++ b/reco/tasks/CbmTaskBuildEvents.h
@@ -120,7 +120,7 @@ private:                                                    // members
   double fTimeSelectorEvt = 0.;
   double fTimeTot         = 0.;
 
-  ClassDef(CbmTaskBuildEvents, 1);
+  ClassDef(CbmTaskBuildEvents, 2);
 };
 
 #endif /* CBMTASKBUILDEVENTS_H */