diff --git a/compact/tof_barrel.xml b/compact/tof_barrel.xml
index a673413c45fd38dde79a4f7bf7407c79f00afb5d..d179609272d89c3876da043f86ade470a4d2d64d 100644
--- a/compact/tof_barrel.xml
+++ b/compact/tof_barrel.xml
@@ -1,124 +1,70 @@
-<?xml version="1.0" encoding="UTF-8"?>
 <lccdd>
+
   <define>
+    <constant name="LGADThickness"              value=".085*mm"/>
+
+    <constant name="TofBarrelThickness"         value="0.55/100*9.37*cm"/>
+    <constant name="TofBarrelServiceThickness"  value="TrkBarrelThickness-LGADThickness"/>
       
-      <constant name="BarrelTOFRadius"         value=" 45*cm"/>
-      <constant name="BarrelTOFTotalLength"    value="120*cm"/>
-      <constant name="BarrelTOFTotalThickness" value="50*mm"/>
-      <constant name="BarrelTOFModulesNPhi"    value="30"/>
-      <constant name="BarrelTOFModulesNZ"      value="6"/>
-      <constant name="BarrelTOFModuleWidth"    value="30"/>
-      <constant name="BarrelTOFModuleLength"   value="BarrelTOFTotalLength/BarrelTOFModulesNZ"/>
-      
-      <constant name="BarrelTOFThickness_PEEK"     value="0.02*cm" />
-      <constant name="BarrelTOFThickness_Fiber1"   value="0.016*cm" />
-      <constant name="BarrelTOFThickness_Rohacell" value="0.02*cm" />
-      <constant name="BarrelTOFThickness_Epoxy"    value="0.0175*cm" />
-      <constant name="BarrelTOFThickness_Fiber2"   value="0.016*cm" />
-      <constant name="BarrelTOFThickness_Si1"      value="0.05*mm" />
-      <constant name="BarrelTOFThickness_SiDead1"  value="0.15*mm" />
-      <constant name="BarrelTOFThickness_Si2"      value="0.05*mm" />
-      <constant name="BarrelTOFThickness_Kapton"   value="3*mil" />
-      <constant name="BarrelTOFThickness_Copper"   value="0.00038*cm" />
-      <constant name="BarrelTOFModuleThickness"    value="BarrelTOFThickness_PEEK + BarrelTOFThickness_Fiber1 + BarrelTOFThickness_Rohacell + BarrelTOFThickness_Epoxy +  BarrelTOFThickness_Fiber2
-                                                   + BarrelTOFThickness_Si1 + BarrelTOFThickness_SiDead1 + BarrelTOFThickness_Si2 + BarrelTOFThickness_Kapton + BarrelTOFThickness_Copper " />
-      <constant name="BarrelTOFP0"   value="-BarrelTOFTotalThickness/2.0 + BarrelTOFThickness_PEEK/2.0" />
-      <constant name="BarrelTOFP1"   value="BarrelTOFP0 + BarrelTOFThickness_PEEK/2 + BarrelTOFThickness_Fiber1/2" />
-      <constant name="BarrelTOFP2"   value="BarrelTOFP1 + BarrelTOFThickness_Fiber1/2 + BarrelTOFThickness_Rohacell/2" />
-      <constant name="BarrelTOFP3"   value="BarrelTOFP2 + BarrelTOFThickness_Epoxy/2 + BarrelTOFThickness_Rohacell/2" />
-      <constant name="BarrelTOFP4"   value="BarrelTOFP3 + BarrelTOFThickness_Fiber2/2 + BarrelTOFThickness_Epoxy/2 " />
-      <constant name="BarrelTOFP5"   value="BarrelTOFP4 + BarrelTOFThickness_Si1/2+ BarrelTOFThickness_Fiber2/2 " />
-      <constant name="BarrelTOFP6"   value="BarrelTOFP5 + BarrelTOFThickness_SiDead1/2 + BarrelTOFThickness_Si1/2" />
-      <constant name="BarrelTOFP7"   value="BarrelTOFP6 + BarrelTOFThickness_Kapton/2+BarrelTOFThickness_SiDead1/2 " />
-      <constant name="BarrelTOFP8"   value="BarrelTOFP7 + BarrelTOFThickness_Copper/2+BarrelTOFThickness_Kapton/2" />
+    <constant name="TofBarrel1Radius"           value="25.0*cm"/>
+    <constant name="TofBarrel1Length"           value="60.0*cm"/>
 
+    <constant name="TofBarrel2Radius"           value="45.0*cm"/>
+    <constant name="TofBarrel2Length"           value="120.0*cm"/>
   </define>
 
+  <limits>
+  </limits>
+
+  <regions>
+  </regions>
+
   <display>
   </display>
 
   <detectors>
-    <detector id="BarrelTOFSubAssembly_ID"
-      name="BarrelTOFSubAssembly"
-      type="DD4hep_SubdetectorAssembly"
-      vis="BarrelTOFSubAssemblyVis">
-      <composite name="BarrelTOF"/>
+    <detector id="TofBarrel1Assembly_ID" name="TofBarrelAssembly1" type="DD4hep_SubdetectorAssembly" vis="AnlGreen">
+      <composite name="TofBarrel1" />
     </detector>
-
-    <detector id="BarrelTOF_ID" name="BarrelTOF" type="refdet_BarrelTOF"
-      readout="BarrelTOFHits" insideTrackingVolume="true" >
-      <dimensions rmin="BarrelTOFRadius" rmax="BarrelTOFRadius + BarrelTOFTotalThickness" length="BarrelTOFTotalLength"/>
-
-      <comment> Define available modules </comment>
-      <module name="UFSD">
-          <frame width="15*mm"  height="3.0*mm" length="BarrelTOFTotalLength" thickness="0.1 * mm" material="CarbonFiber_25percent" vis="BlueGreenVis" />
-          <module_component name="silicon" width="14.0*mm" length="BarrelTOFTotalLength-0.1*mm"
-            thickness="0.05*mm" material="Silicon" sensitive="true">
-            <position z="-0.025*mm" y="0*mm"/>
-          </module_component>
-        <!--
-        <frame width="BarrelTOFModuleWidth"  height="3.0*mm" length="BarrelTOFModuleLength" thickness="0.1 * mm" material="CarbonFiber_25percent" vis="BlueGreenVis" />
-        <module_component width="BarrelTOFModuleWidth*0.9" length="BarrelTOFModuleLength*0.9" thickness="BarrelTOFThickness_PEEK" material="PEEK" sensitive="false">
-            <position x="BarrelTOFP0" />
-        </module_component>-->
-        <!--
-        <module_component width="BarrelTOFModuleWidth" length="BarrelTOFModuleLength" thickness="BarrelTOFThickness_Fiber1" material="CarbonFiber_50D" sensitive="false">
-            <position x="BarrelTOFP1" />
-        </module_component>
-        <module_component width="BarrelTOFModuleWidth" length="BarrelTOFModuleLength" thickness="BarrelTOFThickness_Rohacell" material="Rohacell31_50D" sensitive="false">
-            <position x="BarrelTOFP2" />
-        </module_component>
-        <module_component width="BarrelTOFModuleWidth" length="BarrelTOFModuleLength" thickness="BarrelTOFThickness_Epoxy" material="Epoxy" sensitive="false">
-            <position x="BarrelTOFP3" />
-        </module_component>
-        <module_component width="BarrelTOFModuleWidth" length="BarrelTOFModuleLength" thickness="BarrelTOFThickness_Fiber2" material="CarbonFiber_50D" sensitive="false">
-            <position x="BarrelTOFP4" />
-        </module_component>
-        <module_component width="BarrelTOFModuleWidth" length="BarrelTOFModuleLength" thickness="BarrelTOFThickness_Si1" material="Silicon" sensitive="true">
-            <position x="BarrelTOFP5" />
-        </module_component>
-        <module_component width="BarrelTOFModuleWidth" length="BarrelTOFModuleLength" thickness="BarrelTOFThickness_SiDead1" material="Silicon" sensitive="false">
-            <position x="BarrelTOFP6" />
-        </module_component>
-        <module_component width="BarrelTOFModuleWidth*0.9" length="BarrelTOFModuleLength*0.9" thickness="BarrelTOFThickness_Kapton*0.5" material="Kapton" sensitive="false">
-            <position x="BarrelTOFP7" />
-        </module_component>
-        <module_component width="BarrelTOFModuleWidth*0.9" length="BarrelTOFModuleLength*0.9" thickness="BarrelTOFThickness_Copper*0.5" material="Copper" sensitive="false">
-            <position x="BarrelTOFP8" />
-        </module_component>-->
+    <detector id="TofBarrel1_ID" name="TofBarrel1" type="refdet_CylinderTrackerBarrel" readout="LGADHits">
+      <module name="Module1" id="1" vis="AnlGreen">
+        <module_envelope rmin="TofBarrel1Radius" thickness="TofBarrelThickness" length="TofBarrel1Length" phi="360*degree" />
+        <module_component rmin="TofBarrel1Radius" thickness="LGADThickness" material="Silicon" name="LGAD" sensitive="true" />
+        <module_component rmin="TofBarrel1Radius + LGADThickness" thickness="TofBarrelServiceThickness" material="Silicon" name="TofBarrel1Services" />
       </module>
-
-      <comment> Layers composed of many arrayed modules  </comment>
-      <!--<layer module="UFSD" id="1" vis="BarrelTOFVis">
-        <barrel_envelope inner_r="BarrelTOFRadius-10*mm"
-                         outer_r="BarrelTOFRadius+10*mm" z_length="BarrelTOFTotalLength"/>
-        <rphi_layout phi_tilt="10.0*degree" nphi="BarrelTOFModulesNPhi" phi0="0.0" rc="BarrelTOFRadius" dr="0.0 * mm"/>
-        <z_layout dr="0.0 * mm" z0="0.0 * mm" nz="BarrelTOFModulesNZ"/>
+      <layer module="Module1" id="1" vis="AnlGreen">
+        <barrel_envelope inner_r="TofBarrel1Radius" outer_r="TofBarrel1Radius + TofBarrelThickness" z_length="TofBarrel1Length" />
+        <rphi_layout phi_tilt="0.0" nphi="1" phi0="0.0" rc="TofBarrel1Radius" dr="0.0*mm" />
+        <z_layout dr="0.0*mm" z0="0" nz="1" />
       </layer>
+    </detector>
 
-      <layer module="BarrelTOFModule_Layer" id="2" vis="GreenVis">
-        <barrel_envelope inner_r="BarrelTOFRadius" outer_r="BarrelTOFRadius + 30.0*mm" z_length="BarrelTOFTotalLength +1.0*mm "/>
-        <rphi_layout phi_tilt="0.17506" nphi="BarrelTOFModulesNPhi" phi0="0." rc="BarrelTOFRadius + 10.0 * mm" dr="0.0 * mm"/>
-        <z_layout dr="4.0 * mm"
-                  z0="(BarrelTOFTotalLength - BarrelTOFModuleLength)/2"
-                  nz="BarrelTOFModulesNZ"/>-->
-      <layer module="UFSD" id="8" vis="SiVertexVis">
-        <barrel_envelope inner_r="BarrelTOFRadius"
-                         outer_r="BarrelTOFRadius + 30.0*mm" z_length="BarrelTOFTotalLength"/>
-        <rphi_layout phi_tilt="10.0*degree" nphi="BarrelTOFModulesNPhi" phi0="0.0" rc="BarrelTOFRadius + 10.0 * mm" dr="0.0 * mm"/>
-        <z_layout dr="0.0 * mm" z0="0.0 * mm" nz="1"/>
+    <detector id="TofBarrel2Assembly_ID" name="TofBarrelAssembly2" type="DD4hep_SubdetectorAssembly" vis="AnlGreen">
+      <composite name="TofBarrel2" />
+    </detector>
+    <detector id="TofBarrel2_ID" name="TofBarrel2" type="refdet_CylinderTrackerBarrel" readout="LGADHits">
+      <module name="Module1" id="1" vis="AnlGreen">
+        <module_envelope rmin="TofBarrel2Radius" thickness="TofBarrelThickness" length="TofBarrel2Length" phi="360*degree" />
+        <module_component rmin="TofBarrel2Radius" thickness="LGADThickness" material="Silicon" name="LGAD" sensitive="true" />
+        <module_component rmin="TofBarrel2Radius + LGADThickness" thickness="TofBarrelServiceThickness" material="Silicon" name="TofBarrel2Services" />
+      </module>
+      <layer module="Module1" id="1" vis="AnlGreen">
+        <barrel_envelope inner_r="TofBarrel2Radius" outer_r="TofBarrel2Radius + TofBarrelThickness" z_length="TofBarrel2Length" />
+        <rphi_layout phi_tilt="0.0" nphi="1" phi0="0.0" rc="TofBarrel2Radius" dr="0.0*mm" />
+        <z_layout dr="0.0*mm" z0="0" nz="1" />
       </layer>
     </detector>
 
-  </detectors>
-
   <readouts>
-    <readout name="BarrelTOFHits">
-      <segmentation type="CartesianGridXY" grid_size_x="0.20*mm" grid_size_y="0.20*mm" />
-      <id>system:8,barrel:2,layer:4,module:12,sensor:2,x:32:-16,y:-16</id>
+    <readout name="LGADHits">
+      <segmentation type="CartesianGridXY" grid_size_x="0.010*mm" grid_size_y="0.010*mm" />
+      <id>system:8,barrel:3,layer:4,module:7,sensor:2,x:32:-16,y:-16</id>  
     </readout>
   </readouts>
 
+  <plugins>
+  </plugins>
 
+  <fields>
+  </fields>
 </lccdd>
-
diff --git a/src/SiVertexBarrel_geo.cpp b/src/SiVertexBarrel_geo.cpp
index d03da5a244db7a4707cfc339eeb32a86bacabb15..3a0927d2cb50ca8a194fb58795ed7278f7ea46ba 100644
--- a/src/SiVertexBarrel_geo.cpp
+++ b/src/SiVertexBarrel_geo.cpp
@@ -221,4 +221,3 @@ static Ref_t create_detector(Detector& description, xml_h e, SensitiveDetector s
 //@}
 // clang-format off
 DECLARE_DETELEMENT(refdet_SiVertexBarrel, create_detector)
-DECLARE_DETELEMENT(refdet_BarrelTOF, create_detector)