diff --git a/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerAlgoTof.cxx b/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerAlgoTof.cxx
index d4f3bdfc9763fe1904879201920554f63fa3ea64..37393beff4635906bce5a77bfb25720ac8382a4b 100644
--- a/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerAlgoTof.cxx
+++ b/fles/mcbm2018/unpacker/CbmMcbm2018UnpackerAlgoTof.cxx
@@ -217,6 +217,7 @@ Bool_t CbmMcbm2018UnpackerAlgoTof::InitParameters() {
   fviRpcChUId.resize(uNrOfChannels);
   UInt_t iCh = 0;
   for (UInt_t iGbtx = 0; iGbtx < fuNrOfGbtx; ++iGbtx) {
+    Int_t iModuleIdMap = fviModuleId[iGbtx];
     switch (fviRpcType[iGbtx]) {
 
       case 0:                         // CBM modules
@@ -315,12 +316,10 @@ Bool_t CbmMcbm2018UnpackerAlgoTof::InitParameters() {
                                     iCh,
                                     fviRpcChUId[iCh]);
                   break;
-                }  // Valid T0 channel
-                default: {
-                  fviRpcChUId[iCh] = 0;
-                }  // Invalid T0 channel
-              }    // switch( uCh % 4 )
-            }      // if( 0 == uFee )
+                }                                   // Valid T0 channel
+                default: { fviRpcChUId[iCh] = 0; }  // Invalid T0 channel
+              }                                     // switch( uCh % 4 )
+            }                                       // if( 0 == uFee )
 
             iCh++;
           }  // for( UInt_t uCh = 0; uCh < fUnpackPar->GetNrOfChannelsPerFee(); ++uCh )
@@ -352,8 +351,8 @@ Bool_t CbmMcbm2018UnpackerAlgoTof::InitParameters() {
 
         LOG(info) << " Map end CERN 20 gap  at GBTX  -  iCh = " << iCh;
       }
-        // fall through is intended
-      case 8:  // ceramics
+        [[fallthrough]];  // fall through is intended
+      case 8:             // ceramics
       {
         Int_t iModuleId   = 0;
         Int_t iModuleType = 8;
@@ -379,6 +378,23 @@ Bool_t CbmMcbm2018UnpackerAlgoTof::InitParameters() {
             Int_t iRpcMap  = iRpc[iFeet];
             Int_t iSideMap = iSide[iFeet];
             if (iSideMap == 0) iStrMap = 31 - iStr;
+            switch (fviRpcSide[iGbtx]) {
+              case 0:; break;
+              case 1:; break;
+              case 2:
+                switch (iFeet) {
+                  case 1:
+                    iRpcMap  = iRpc[4];
+                    iSideMap = iSide[4];
+                    break;
+                  case 4:
+                    iRpcMap  = iRpc[1];
+                    iSideMap = iSide[1];
+                    break;
+                  default:;
+                }
+                break;
+            }
             if (iSideMap > -1)
               fviRpcChUId[iCh] =
                 CbmTofAddress::GetUniqueAddress(fviModuleId[iGbtx],
@@ -424,15 +440,18 @@ Bool_t CbmMcbm2018UnpackerAlgoTof::InitParameters() {
               case 5:  // HD cosmic 2020, Buc2018, v20a
                 iStrMap = 31 - iStr;
                 break;
-              default:;
+              case 6:  //BUC special
+              {
+                switch (fviModuleId[iGbtx]) {
+                  case 0: iRpcMap = 0; break;
+                  case 1: iRpcMap = 1; break;
+                }
+                if (iFeet > 2) iModuleIdMap = 1;
+              } break;
             }
             if (iSideMap > -1)
-              fviRpcChUId[iCh] =
-                CbmTofAddress::GetUniqueAddress(fviModuleId[iGbtx],
-                                                iRpcMap,
-                                                iStrMap,
-                                                iSideMap,
-                                                fviRpcType[iGbtx]);
+              fviRpcChUId[iCh] = CbmTofAddress::GetUniqueAddress(
+                      iModuleIdMap, iRpcMap, iStrMap, iSideMap, fviRpcType[iGbtx]);
             else
               fviRpcChUId[iCh] = 0;
 
@@ -1272,7 +1291,7 @@ void CbmMcbm2018UnpackerAlgoTof::ProcessPattern(
 	break;
 */
     }  // case gdpbv100::PATT_MISSMATCH:
-
+    break;
     case gdpbv100::PATT_ENABLE: {
       LOG(debug2) << Form(
         "Enable pattern message => Type %d, Index %2d, Pattern 0x%08X",