diff --git a/DDG4/lcio/LCIOConversions.cpp b/DDG4/lcio/LCIOConversions.cpp
index 7f5b75c3b0582a5a07559348ffaaf6b6c068a908..f471d1ca163fe0f924893da198bb00ccf94caf84 100644
--- a/DDG4/lcio/LCIOConversions.cpp
+++ b/DDG4/lcio/LCIOConversions.cpp
@@ -123,8 +123,8 @@ namespace DD4hep {
         EVENT::MCParticle* lc_mcp = (EVENT::MCParticle*)lc_part->getElementAt(trackID);
         double pos[3] = {hit->position.x()/CLHEP::mm, hit->position.y()/CLHEP::mm, hit->position.z()/CLHEP::mm};
         lcio::SimTrackerHitImpl* lc_hit = new lcio::SimTrackerHitImpl;
-        lc_hit->setCellID0((hit->cellID >>    0       ) & 0xFFFFFFFF);
-        lc_hit->setCellID1((hit->cellID >> sizeof(int)) & 0xFFFFFFFF);
+        lc_hit->setCellID0((hit->cellID >>    0         ) & 0xFFFFFFFF);
+        lc_hit->setCellID1((hit->cellID >> sizeof(int)*8) & 0xFFFFFFFF);
         lc_hit->setEDep(hit->energyDeposit/CLHEP::GeV);
         lc_hit->setPathLength(hit->length/CLHEP::mm);
         lc_hit->setTime(hit->truth.time/CLHEP::ns);
@@ -175,8 +175,8 @@ namespace DD4hep {
         const Geant4Calorimeter::Hit* hit = coll->hit(i);
         float pos[3] = {float(hit->position.x()/mm), float(hit->position.y()/mm), float(hit->position.z()/mm)};
         lcio::SimCalorimeterHitImpl*  lc_hit = new lcio::SimCalorimeterHitImpl;
-        lc_hit->setCellID0((hit->cellID >>    0       ) & 0xFFFFFFFF);
-        lc_hit->setCellID1((hit->cellID >> sizeof(int)) & 0xFFFFFFFF); // ????
+        lc_hit->setCellID0((hit->cellID >>    0         ) & 0xFFFFFFFF);
+        lc_hit->setCellID1((hit->cellID >> sizeof(int)*8) & 0xFFFFFFFF); // ????
         lc_hit->setPosition(pos);
         ///No! Done when adding particle contrbutions: lc_hit->setEnergy( hit->energyDeposit );
         lc_coll->addElement(lc_hit);