diff --git a/Detector/DetDriftChamber/compact/materials.xml b/Detector/DetDriftChamber/compact/materials.xml
index a86e3c48cccd159c8fa873bf65f60c66bc6378de..44ee58bf7f60632ec8addf1cee047ed2f259cb5b 100644
--- a/Detector/DetDriftChamber/compact/materials.xml
+++ b/Detector/DetDriftChamber/compact/materials.xml
@@ -148,5 +148,12 @@
     <fraction n="0.671054" ref="Bi" />
   </material>
 
+  <!-- Driftchamber: material for the drift chamber -->
+  <material name="GasHe_90Isob_10">
+    <D value="0.0003983999999999999" unit="g/cm3" />
+    <fraction n="0.3826351004462046" ref="He"/>
+    <fraction n="0.011371937371285891"   ref="H" />
+    <fraction n="0.6059929621825095" ref="C" />
+  </material>
 
 </materials>
diff --git a/Detector/DetDriftChamber/src/driftchamber/DriftChamber.cpp b/Detector/DetDriftChamber/src/driftchamber/DriftChamber.cpp
index 27d2a4f936fd450dddd1c38d0754b9344a3609f3..8a978ef41b86175dc1d95f4097e258be5f3bf9c5 100644
--- a/Detector/DetDriftChamber/src/driftchamber/DriftChamber.cpp
+++ b/Detector/DetDriftChamber/src/driftchamber/DriftChamber.cpp
@@ -107,9 +107,6 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector,
     double wall_rmin[4] = {inner_chamber_inner_wall_rmin,inner_chamber_outer_wall_rmin,outer_chamber_inner_wall_rmin,outer_chamber_outer_wall_rmin};
     double wall_rmax[4] = {inner_chamber_inner_wall_rmax,inner_chamber_outer_wall_rmax,outer_chamber_inner_wall_rmax,outer_chamber_outer_wall_rmax};
 
-    dd4hep::Tube wall_solid;
-    dd4hep::Volume wall_vol;
-
    // - wire
     dd4hep::Volume module_vol;
     dd4hep::Volume Module_vol;
@@ -158,6 +155,7 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector,
         double rmin,rmax,offset;
         std::string layer_name;
         dd4hep::Volume* current_vol_ptr = nullptr;
+        dd4hep::Material layer_mat(theDetector.material("GasHe_90Isob_10"));
         if( layer_id < inner_chamber_layer_number ) {
            current_vol_ptr = &det_inner_chamber_vol;
            rmin = inner_chamber_radius_min+(layer_id*chamber_layer_width);
@@ -186,18 +184,18 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector,
         DCHseg->setWiresInLayer(layer_id, numWire);
 
         dd4hep::Tube layer_solid(rmin,rmax,chamber_length*0.5);
-        dd4hep::Volume layer_vol(layer_name,layer_solid,det_mat);
+        dd4hep::Volume layer_vol(layer_name,layer_solid,layer_mat);
         layer_vol.setAttributes(theDetector,x_det.regionStr(),x_det.limitsStr(),x_det.visStr());
 
         // - wire vol
         //phi <-------------------> -phi
-        //    |       F4        F3|
-        //    |                   |
-        //    |       S         F2|
-        //    |                   |
-        //    |       F0        F1|
-        //    ---------------------
-//     if(layer_id == 1) {
+        //    |   F8    F7   F6   F5|  Only on the outermost layer.
+        //    |                     |
+        //    |         S         F4|
+        //    |                     |
+        //    |   F0    F1   F2   F3|
+        //    -----------------------
+//     if(layer_id == 1|| layer_id == 2 || layer_id ==3) {
         for(int icell=0; icell< numWire; icell++) {
             double wire_phi = (icell+0.5)*layer_Phi + offset;
             // - signal wire
@@ -205,9 +203,11 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector,
             dd4hep::PlacedVolume module_phy = layer_vol.placeVolume(module_vol,transform_module);
            // - Field wire
             dd4hep::PlacedVolume Module_phy;
-            double radius[5] = {rmid-chamber_layer_width*0.5,rmid-chamber_layer_width*0.5,rmid,rmid+chamber_layer_width*0.5,rmid+chamber_layer_width*0.5};
-            double phi[5] = {wire_phi,wire_phi-layer_Phi*0.5,wire_phi-layer_Phi*0.5,wire_phi-layer_Phi*0.5,wire_phi};
-            for(int i=0; i<5; i++) {
+            double radius[9] = {rmid-chamber_layer_width*0.5,rmid-chamber_layer_width*0.5,rmid-chamber_layer_width*0.5,rmid-chamber_layer_width*0.5,rmid,rmid+chamber_layer_width*0.5,rmid+chamber_layer_width*0.5,rmid+chamber_layer_width*0.5,rmid+chamber_layer_width*0.5};
+            double phi[9] = {wire_phi+layer_Phi*0.25,wire_phi,wire_phi-layer_Phi*0.25,wire_phi-layer_Phi*0.5,wire_phi-layer_Phi*0.5,wire_phi-layer_Phi*0.5,wire_phi-layer_Phi*0.25,wire_phi,wire_phi+layer_Phi*0.25};
+            int num = 5;
+            if(layer_id==66||layer_id==129) { num = 9; }
+            for(int i=0; i<num ; i++) {
                 dd4hep::Position tr3D = Position(radius[i]*std::cos(phi[i]),radius[i]*std::sin(phi[i]),0.);
                 dd4hep::Transform3D transform_Module(dd4hep::Rotation3D(),tr3D);
                 Module_phy = layer_vol.placeVolume(Module_vol,transform_Module);
@@ -248,12 +248,12 @@ static dd4hep::Ref_t create_detector(dd4hep::Detector& theDetector,
             dd4hep::Position(0,0,0));
     dd4hep::PlacedVolume phv = envelope.placeVolume(det_vol,transform);
     // - place wall
-    dd4hep::PlacedVolume wall_phy;
-    for(int i=0; i<4 ; i++) {
-       wall_solid = Tube(wall_rmin[i],wall_rmax[i],chamber_length*0.5);
-       wall_vol = Volume(det_name+"_wall_vol",wall_solid,wall_mat);
+//    dd4hep::PlacedVolume wall_phy;
+    for(int i=0; i<4; i++) {
+       dd4hep::Tube wall_solid(wall_rmin[i],wall_rmax[i],chamber_length*0.5);
+       dd4hep::Volume wall_vol(det_name+"_wall_vol",wall_solid,wall_mat);
        wall_vol.setVisAttributes(theDetector,"VisibleGreen");
-       wall_phy = envelope.placeVolume(wall_vol,transform);
+       dd4hep::PlacedVolume wall_phy = envelope.placeVolume(wall_vol,transform);
     }
 
     if ( x_det.hasAttr(_U(id)) )  {