diff --git a/compact/cb_CTD_Straw.xml b/compact/cb_CTD_Straw.xml
new file mode 100644
index 0000000000000000000000000000000000000000..f77c68a48910e2ccf2fdd3a12f55871489b5c13e
--- /dev/null
+++ b/compact/cb_CTD_Straw.xml
@@ -0,0 +1,35 @@
+<lccdd>
+
+  <comment> Central Barrel Tracker Straw </comment>        
+
+  <define>
+  </define>
+
+  <limits>
+  </limits>
+
+  <regions>
+  </regions>
+
+  <display>
+  </display>
+
+  <detectors>
+    <detector id="cb_CTD_Straw_ID" name="cb_CTD_Straw" type="cb_CTD_Straw" readout="cb_CTD_Straw_Hits" vis="cb_CTDVis" insideTrackingVloume="true">
+      <dimensions rmin="cb_CTD_rmin" rmax="cb_CTD_rmax" length="cb_CTD_length" zmax="cb_CTD_zmax"/>
+    </detector>
+  </detectors>
+
+  <readouts>
+    <readout name="cb_CTD_Straw_Hits">
+      <segmentation type="CartesianGridXY" grid_size_x="1.0*mm" grid_size_y="1.0*mm" />
+      <id>system:8,barrel:3,layer:4,x:32:-16,y:-16</id>  
+    </readout>
+  </readouts>
+
+  <plugins>
+  </plugins>
+
+  <fields>
+  </fields>
+</lccdd>
diff --git a/compact/definitions.xml b/compact/definitions.xml
index 7f74152af6f01554247c30385d286c661b8c9bd8..4e18421cba2da14e70985b1e8104a483642798d2 100644
--- a/compact/definitions.xml
+++ b/compact/definitions.xml
@@ -122,6 +122,9 @@
     <constant name="SiTrackerEndcapP_Layer5_ID"     value="69"/>
     <constant name="SiTrackerEndcapN_Layer5_ID"     value="70"/>
 
+
+    <constant name="cb_CTD_Straw_ID"                value="73"/>
+
     <comment> 
     ===================
     (75-99 Reserved IDs
@@ -318,6 +321,24 @@
     <constant name="SiliconTrackerOuterRadius"       value="Solenoid_rmax/2.0"/>
     <constant name="SiliconTrackerOuterBarrelLength" value="SolenoidLength/2.0"/>
 
+    <comment>
+      -------------------------------
+      Central Barrel Tracker - Global
+      -------------------------------
+    </comment>
+    <constant name="cb_CTD_rmin"   value="21.0 * cm"/>
+    <constant name="cb_CTD_rmax"   value="80.0 * cm"/>
+    <constant name="cb_CTD_zmax"   value="200.0 * cm"/>
+    <comment> Original Global parameter </comment>
+    <!--
+    <constant name="cb_CTD_zmax"   value="120.0 * cm"/>
+    -->
+    <constant name="cb_CTD_length" value="SolenoidLength - cb_CTD_zmax"/>    
+    <comment> After fix cb_Solenoid parameters  </comment>
+    <!--
+    <constant name="cb_CTD_length" value="cb_Solenoid_z - cb_CTD_zmax"/>
+    -->
+
     <comment>
       ------------
       Calorimeters
diff --git a/compact/display.xml b/compact/display.xml
index 7e5846d7c116a9978967203c3a11e04ea57205ac..29f966c8f302d4ca1c1361b44c2281e17e0d0716 100644
--- a/compact/display.xml
+++ b/compact/display.xml
@@ -51,6 +51,7 @@
     <vis name="cb_SolenoidVis"   alpha="0.4"  r= "0.1"  g="0.0"  b="0.1"  showDaughters="true" visible="true"/>
     <vis name="ffi_ZDCVis"       alpha="0.1"  r= "0.1"  g="0.0"  b="1.0"  showDaughters="true" visible="true"/>
     <vis name="ffi_ZDCmoduleVis" alpha="1.0"  r= "0.1"  g="1.0"  b="0.9"  showDaughters="true" visible="true"/>
+    <vis name="cb_CTDVis"       alpha="0.1"  r= "0.1"  g="0.0"  b="1.0"  showDaughters="true" visible="true"/>
 
     <comment>
       Deprecated colors.
diff --git a/reference_detector.xml b/reference_detector.xml
index db0a52b76c7796d6581f981be0b256404480359f..0e131a64e3da81a73f059a304668d3af508f22b6 100644
--- a/reference_detector.xml
+++ b/reference_detector.xml
@@ -114,6 +114,7 @@
   <include ref="reference_detector/vertex_tracker.xml"/>
   <include ref="compact/silicon_tracker.xml"/>
   -->
+  <include ref="compact/cb_CTD_Straw.xml"/>
   <include ref="ip6/beampipe.xml"/>
   <include ref="compact/ffi_ZDC.xml"/>
   <include ref="compact/solenoid.xml"/>
diff --git a/src/cb_CTD_Straw.cpp b/src/cb_CTD_Straw.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..5f2c249a525026128129e36f18748c92ec6af426
--- /dev/null
+++ b/src/cb_CTD_Straw.cpp
@@ -0,0 +1,37 @@
+#include <XML/Helper.h>
+//////////////////////////////////
+// Central Barrel Tracker Straw
+//////////////////////////////////
+
+using namespace std;
+using namespace dd4hep;
+
+static Ref_t createDetector(Detector& desc, xml_h e, SensitiveDetector sens)
+{
+  xml_det_t  x_det      = e;
+  string     detName    = x_det.nameStr();
+  int        detID      = x_det.id();
+
+  xml_dim_t  dim        = x_det.dimensions();
+  double     RIn        = dim.rmin();
+  double     ROut       = dim.rmax();
+  double     SizeZ      = dim.length();
+  double     SizeZCut   = dim.zmax();
+
+  Material   Vacuum     = desc.material("Vacuum");
+
+  // Create Global Volume 
+  Tube cb_CTD_GVol_Solid(RIn, ROut, SizeZ / 2.0, 0., 360.0 * deg);
+  Volume detVol("cb_CTD_GVol_Logic", cb_CTD_GVol_Solid, Vacuum);
+  detVol.setVisAttributes(desc.visAttributes(x_det.visStr()));
+
+  DetElement   det(detName, detID);
+  Volume       motherVol = desc.pickMotherVolume(det);
+  Transform3D  tr(RotationZYX(0.0, 0.0, 0.0), Position(0.0, 0.0, 0.0));
+  PlacedVolume detPV = motherVol.placeVolume(detVol, tr);
+  detPV.addPhysVolID("system", detID);
+  det.setPlacement(detPV);
+  return det;
+}
+
+DECLARE_DETELEMENT(cb_CTD_Straw, createDetector)