diff --git a/InnerDetector/InDetConditions/PixelConditionsTools/CMakeLists.txt b/InnerDetector/InDetConditions/PixelConditionsTools/CMakeLists.txt
index 6b3894176da821a04d82c230d5e7b8f0d7c0b7e2..1898f1e1172ac0548ef4f7b541545a6afac40f31 100644
--- a/InnerDetector/InDetConditions/PixelConditionsTools/CMakeLists.txt
+++ b/InnerDetector/InDetConditions/PixelConditionsTools/CMakeLists.txt
@@ -5,16 +5,6 @@
 # Declare the package name:
 atlas_subdir( PixelConditionsTools )
 
-# Possible extra dependencies:
-set( extra_dep )
-set( extra_lib )
-if( NOT SIMULATIONBASE )
-  # DO NOT ADD A DEPENDENCY ON PixelConditionsServices UNLESS YOU ALSO REMOVE
-  # THE DEPENDENCY OF PixelConditionsServices ON THIS PACKAGE!!!!
-  set( extra_dep InnerDetector/InDetConditions/InDetConditionsSummaryService InnerDetector/InDetDetDescr/PixelGeoModel InnerDetector/InDetConditions/InDetByteStreamErrors )
-  set( extra_lib PixelGeoModelLib InDetByteStreamErrors InDetConditionsSummaryService )
-endif()
-
 # Declare the package's dependencies:
 atlas_depends_on_subdirs( PUBLIC
   Control/AthenaKernel
@@ -31,24 +21,25 @@ atlas_depends_on_subdirs( PUBLIC
   DetectorDescription/GeoModel/GeoModelInterfaces
   DetectorDescription/GeoModel/GeoModelUtilities
   InnerDetector/InDetConditions/PixelConditionsData
-  InnerDetector/InDetConditions/PixelCoralClientUtils
   InnerDetector/InDetDetDescr/InDetIdentifier
   InnerDetector/InDetDetDescr/InDetReadoutGeometry
   InnerDetector/InDetDetDescr/PixelCabling
-  Tools/PathResolver
-  ${extra_dep} )
+  InnerDetector/InDetDetDescr/PixelGeoModel
+  InnerDetector/InDetConditions/InDetByteStreamErrors
+  Tools/PathResolver )
 
 # External dependencies:
 find_package( CLHEP )
-find_package( CORAL COMPONENTS CoralBase CoralKernel RelationalAccess )
 find_package( Eigen )
 
 # Component(s) in the package:
 atlas_add_component( PixelConditionsTools
                      src/*.cxx
                      src/components/*.cxx
-                     INCLUDE_DIRS ${CORAL_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${EIGEN_INCLUDE_DIRS}
-                     LINK_LIBRARIES ${CORAL_LIBRARIES} ${CLHEP_LIBRARIES} ${EIGEN_LIBRARIES} AthenaKernel GeoPrimitives GaudiKernel AthenaBaseComps SGTools AthenaPoolUtilities DetDescrConditions Identifier PixelConditionsData PixelCoralClientUtils InDetIdentifier GeoModelUtilities InDetReadoutGeometry PathResolver ${extra_lib} )
+                     INCLUDE_DIRS ${CLHEP_INCLUDE_DIRS} ${EIGEN_INCLUDE_DIRS}
+                     LINK_LIBRARIES ${CLHEP_LIBRARIES} ${EIGEN_LIBRARIES} AthenaKernel GeoPrimitives GaudiKernel AthenaBaseComps 
+                     SGTools AthenaPoolUtilities DetDescrConditions Identifier PixelCablingLib PixelConditionsData InDetIdentifier 
+                     GeoModelUtilities InDetReadoutGeometry PathResolver PixelGeoModelLib InDetByteStreamErrors )
 
 # Install files from the package:
 atlas_install_headers( PixelConditionsTools )
diff --git a/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelByteStreamErrorsTool.cxx b/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelByteStreamErrorsTool.cxx
index 9ff2ba4bd14591066d26d1f573a086a7c0ea1851..6c2cdeb041ff9b3ee7400dbb4ec80314c9a561c8 100644
--- a/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelByteStreamErrorsTool.cxx
+++ b/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelByteStreamErrorsTool.cxx
@@ -1,8 +1,7 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
-#ifndef SIMULATIONBASE
 #include "PixelByteStreamErrorsTool.h"
 
 PixelByteStreamErrorsTool::PixelByteStreamErrorsTool(const std::string& type, const std::string& name, const IInterface* parent)
@@ -360,5 +359,3 @@ unsigned int PixelByteStreamErrorsTool::getServiceRecordCount(int code) const {
   return m_ServiceRecords[code];
 }
 
-#endif
-
diff --git a/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelByteStreamErrorsTool.h b/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelByteStreamErrorsTool.h
index d294cecfb76269bd604a67feb9fd0a110631e5ce..64b8a6b94ea0098314af50055e3e05c0cbb4e348 100644
--- a/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelByteStreamErrorsTool.h
+++ b/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelByteStreamErrorsTool.h
@@ -1,11 +1,10 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef PixelByteStreamErrorsTool_h
 #define PixelByteStreamErrorsTool_h
 
-#ifndef SIMULATIONBASE
 #include "AthenaBaseComps/AthAlgTool.h"
 #include "PixelConditionsTools/IPixelByteStreamErrorsTool.h"
 
@@ -127,4 +126,3 @@ inline InterfaceID& PixelByteStreamErrorsTool::interfaceID() {
 }
 
 #endif
-#endif
diff --git a/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelConditionsSummaryTool.cxx b/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelConditionsSummaryTool.cxx
index 134ce1e05a451c8b57d46d6a83565c9a9396f8d4..47f56a6d50cfc08a5ea62e2f204c3cd159811b3f 100644
--- a/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelConditionsSummaryTool.cxx
+++ b/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelConditionsSummaryTool.cxx
@@ -26,15 +26,13 @@ StatusCode PixelConditionsSummaryTool::initialize(){
 
   ATH_CHECK(m_condDCSStateKey.initialize());
   ATH_CHECK(m_condDCSStatusKey.initialize());
-
-#ifndef SIMULATIONBASE
   ATH_CHECK(m_BSErrContReadKey.initialize(m_useByteStream && !m_BSErrContReadKey.empty()));
-#endif
 
   ATH_CHECK(detStore()->retrieve(m_pixelID,"PixelID"));
 
   ATH_CHECK(m_condTDAQKey.initialize());
   ATH_CHECK(m_condDeadMapKey.initialize());
+  ATH_CHECK(m_pixelCabling.retrieve());
 
   for (unsigned int istate=0; istate<m_isActiveStates.size(); istate++) {
     if      (m_isActiveStates[istate]=="READY")      { m_activeState.push_back(PixelDCSStateData::DCSModuleState::READY); }
@@ -65,7 +63,6 @@ StatusCode PixelConditionsSummaryTool::initialize(){
 }
 
 bool PixelConditionsSummaryTool::isBSError([[maybe_unused]] const IdentifierHash & moduleHash) const {
-#ifndef SIMULATIONBASE
   if (!m_useByteStream) {
      return false;
   }
@@ -100,18 +97,15 @@ bool PixelConditionsSummaryTool::isBSError([[maybe_unused]] const IdentifierHash
   else if (errorcode) {
     return false;
   }
-#endif
   return true;
 }
 
 bool PixelConditionsSummaryTool::isBSActive([[maybe_unused]] const IdentifierHash & moduleHash) const {
-#ifndef SIMULATIONBASE
   SG::ReadHandle<InDetBSErrContainer> errCont(m_BSErrContReadKey);
   for (const auto* elt : *errCont) {
     IdentifierHash myHash=elt->first;
     if (myHash-m_pixelID->wafer_hash_max()==moduleHash) { return false; }
   }
-#endif
   return true;
 }
 
@@ -139,7 +133,7 @@ bool PixelConditionsSummaryTool::isActive(const IdentifierHash & moduleHash) con
   return true;
 }
 
-bool PixelConditionsSummaryTool::isActive(const IdentifierHash & moduleHash, const Identifier & /*elementId*/) const {
+bool PixelConditionsSummaryTool::isActive(const IdentifierHash & moduleHash, const Identifier & elementId) const {
 
   if (m_useByteStream && !isBSActive(moduleHash)) { return false; }
 
@@ -154,7 +148,7 @@ bool PixelConditionsSummaryTool::isActive(const IdentifierHash & moduleHash, con
 
   if (SG::ReadCondHandle<PixelModuleData>(m_condDeadMapKey)->getModuleStatus(moduleHash)) { return false; }
 
-  return true;
+  return checkChipStatus(moduleHash, elementId);
 }
 
 double PixelConditionsSummaryTool::activeFraction(const IdentifierHash & /*moduleHash*/,
@@ -165,7 +159,7 @@ double PixelConditionsSummaryTool::activeFraction(const IdentifierHash & /*modul
 }
 
 bool PixelConditionsSummaryTool::isGood(const Identifier & elementId,
-                                        const InDetConditions::Hierarchy /*h*/)const
+                                        const InDetConditions::Hierarchy h)const
 {
   Identifier moduleID       = m_pixelID->wafer_id(elementId);
   IdentifierHash moduleHash = m_pixelID->wafer_hash(moduleID);
@@ -190,6 +184,10 @@ bool PixelConditionsSummaryTool::isGood(const Identifier & elementId,
 
   if (SG::ReadCondHandle<PixelModuleData>(m_condDeadMapKey)->getModuleStatus(moduleHash)) { return false; }
 
+  if (h==InDetConditions::PIXEL_CHIP) {
+    return checkChipStatus(moduleHash, elementId);
+  }
+
   return true;
 }
 
@@ -218,9 +216,7 @@ bool PixelConditionsSummaryTool::isGood(const IdentifierHash & moduleHash) const
   return true;
 }
 
-bool PixelConditionsSummaryTool::isGood(const IdentifierHash & moduleHash,
-                                        const Identifier & /*elementId*/) const
-{
+bool PixelConditionsSummaryTool::isGood(const IdentifierHash & moduleHash, const Identifier &elementId) const {
 
   if (m_useByteStream && !isBSError(moduleHash)) { return false; }
 
@@ -242,36 +238,32 @@ bool PixelConditionsSummaryTool::isGood(const IdentifierHash & moduleHash,
 
   if (SG::ReadCondHandle<PixelModuleData>(m_condDeadMapKey)->getModuleStatus(moduleHash)) { return false; }
 
-  return true;
+  return checkChipStatus(moduleHash, elementId);
 }
 
 double PixelConditionsSummaryTool::goodFraction(const IdentifierHash & moduleHash,
-                                                const Identifier & /*idStart*/,
-                                                const Identifier & /*idEnd*/) const
+                                                const Identifier & idStart,
+                                                const Identifier & idEnd) const
 {
 
-  if (m_useByteStream && !isBSError(moduleHash)) { return false; }
-
-  SG::ReadCondHandle<PixelDCSStateData> dcsstate_data(m_condDCSStateKey);
-  bool isDCSActive = false;
-  for (unsigned int istate=0; istate<m_activeState.size(); istate++) {
-    if (m_activeState[istate]==dcsstate_data->getModuleStatus(moduleHash)) { isDCSActive=true; }
-  }
-  if (!isDCSActive) { return false; }
+  if (!isGood(moduleHash)) { return 0.0; }
 
-  SG::ReadCondHandle<PixelDCSStatusData> dcsstatus_data(m_condDCSStatusKey);
-  bool isDCSGood = false;
-  for (unsigned int istatus=0; istatus<m_activeStatus.size(); istatus++) {
-    if (m_activeStatus[istatus]==dcsstatus_data->getModuleStatus(moduleHash)) { isDCSGood=true; }
-  }
-  if (!isDCSGood) { return 0.0; }
+  Identifier moduleID = m_pixelID->wafer_id(moduleHash);
 
-  if (SG::ReadCondHandle<PixelTDAQData>(m_condTDAQKey)->getModuleStatus(moduleHash)) { return 1.0; }
+  int phiStart = m_pixelID->phi_index(idStart);
+  int etaStart = m_pixelID->eta_index(idStart);
 
-  if (SG::ReadCondHandle<PixelModuleData>(m_condDeadMapKey)->getModuleStatus(moduleHash)) { return 1.0; }
+  int phiEnd = m_pixelID->phi_index(idEnd);
+  int etaEnd = m_pixelID->eta_index(idEnd);
 
-  // TODO!!!  Calculate active fraction from dead map.
+  double nTotal = (std::abs(phiStart-phiEnd)+1.0)*(std::abs(etaStart-etaEnd)+1.0);
 
-  return 1.0;
+  double nGood = 0.0;
+  for (int i=std::min(phiStart,phiEnd); i<=std::max(phiStart,phiEnd); i++) {
+    for (int j=std::min(etaStart,etaEnd); j<=std::max(etaStart,etaEnd); j++) {
+      if (checkChipStatus(moduleHash, m_pixelID->pixel_id(moduleID,i,j))) { nGood++; }
+    }
+  }
+  return nGood/nTotal;
 }
 
diff --git a/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelConditionsSummaryTool.h b/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelConditionsSummaryTool.h
index 916df3458c6465d0bd2f1afd9f45404fa5baa7ee..2005ea9279aa26657c9b3dd1dbce8c74a52eac6c 100644
--- a/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelConditionsSummaryTool.h
+++ b/InnerDetector/InDetConditions/PixelConditionsTools/src/PixelConditionsSummaryTool.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 /**
  * @file PixelConditionsTools/PixelConditionsSummaryTool.h
@@ -14,12 +14,10 @@
 #include <string>
 
 #include "AthenaBaseComps/AthAlgTool.h"
+#include "GaudiKernel/ServiceHandle.h"
 #include "InDetConditionsSummaryService/IInDetConditionsTool.h"
 
-#ifndef SIMULATIONBASE
 #include "InDetByteStreamErrors/InDetBSErrContainer.h"
-#endif
-
 #include "Identifier/Identifier.h"
 #include "Identifier/IdentifierHash.h"
 #include "InDetIdentifier/PixelID.h"
@@ -30,6 +28,7 @@
 #include "PixelConditionsData/PixelDCSStatusData.h"
 #include "PixelConditionsData/PixelTDAQData.h"
 #include "StoreGate/ReadCondHandleKey.h"
+#include "PixelCabling/IPixelCablingSvc.h"
 
 class PixelConditionsSummaryTool: public AthAlgTool, public IInDetConditionsTool{
   public:
@@ -52,6 +51,8 @@ class PixelConditionsSummaryTool: public AthAlgTool, public IInDetConditionsTool
     virtual bool isBSActive(const IdentifierHash & moduleHash) const override final;
     virtual bool isBSError(const IdentifierHash & moduleHash) const override final;
 
+    bool checkChipStatus(IdentifierHash moduleHash, Identifier pixid) const;
+
   private:
     const PixelID* m_pixelID;
 
@@ -74,13 +75,14 @@ class PixelConditionsSummaryTool: public AthAlgTool, public IInDetConditionsTool
     SG::ReadCondHandleKey<PixelModuleData> m_condDeadMapKey
     {this, "PixelModuleData", "PixelModuleData", "Pixel deadmap conditions key"};
 
-//    SG::ReadCondHandleKey<PixelDeadMapCondData> m_condDeadMapKey
-//    {this, "PixelDeadMapCondData", "PixelDeadMapCondData", "Pixel deadmap conditions key"};
+// NEW FOR RUN3    SG::ReadCondHandleKey<PixelDeadMapCondData> m_condDeadMapKey
+// NEW FOR RUN3    {this, "PixelDeadMapCondData", "PixelDeadMapCondData", "Pixel deadmap conditions key"};
+
+    ServiceHandle<IPixelCablingSvc> m_pixelCabling
+    {this,  "PixelCablingSvc", "PixelCablingSvc", "Pixel cabling service"};
 
-#ifndef SIMULATIONBASE
     SG::ReadHandleKey<InDetBSErrContainer>  m_BSErrContReadKey
     {this, "PixelByteStreamErrs", "PixelByteStreamErrs", "PixelByteStreamErrs container key"};
-#endif
 
 };
 
@@ -89,4 +91,14 @@ inline InterfaceID& PixelConditionsSummaryTool::interfaceID(){
   return IID_PixelConditionsSummaryTool;
 }
 
+inline bool PixelConditionsSummaryTool::checkChipStatus(IdentifierHash moduleHash, Identifier pixid) const {
+  std::bitset<16> chipStatus(SG::ReadCondHandle<PixelModuleData>(m_condDeadMapKey)->getChipStatus(moduleHash));
+  if (chipStatus.any()) {
+    Identifier moduleID = m_pixelID->wafer_id(pixid);
+    std::bitset<16> circ; circ.set(m_pixelCabling->getFE(&pixid,moduleID));
+    if ((chipStatus&circ).any()) { return false; }
+  }
+  return true;
+}
+
 #endif
diff --git a/InnerDetector/InDetDetDescr/PixelCabling/CMakeLists.txt b/InnerDetector/InDetDetDescr/PixelCabling/CMakeLists.txt
index a6c29222774f4da59fca7f781e8515b100288f5b..9122ee0e4257a57a1ffd8d3541ab0f898a3d98de 100644
--- a/InnerDetector/InDetDetDescr/PixelCabling/CMakeLists.txt
+++ b/InnerDetector/InDetDetDescr/PixelCabling/CMakeLists.txt
@@ -21,9 +21,6 @@ atlas_depends_on_subdirs(
    InnerDetector/InDetConditions/PixelConditionsData
    Tools/PathResolver )
 
-# External dependencies:
-find_package( tdaq-common )
-
 # Component(s) in the package:
 atlas_add_library( PixelCablingLib
    PixelCabling/*.h
@@ -33,8 +30,7 @@ atlas_add_library( PixelCablingLib
 
 atlas_add_component( PixelCabling
    src/*.h src/*.cxx src/components/*.cxx
-   INCLUDE_DIRS ${TDAQ-COMMON_INCLUDE_DIRS}
-   LINK_LIBRARIES ${TDAQ-COMMON_LIBRARIES} GaudiKernel AthenaBaseComps SGTools StoreGateLib
+   LINK_LIBRARIES GaudiKernel AthenaBaseComps SGTools StoreGateLib
    AthenaPoolUtilities Identifier InDetIdentifier InDetReadoutGeometry PixelReadoutGeometry PixelConditionsData PathResolver PixelCablingLib )
 
 atlas_add_test( PixelCablingConfigNew_test
diff --git a/InnerDetector/InDetExample/InDetRecExample/python/TrackingCommon.py b/InnerDetector/InDetExample/InDetRecExample/python/TrackingCommon.py
index cd5ec6f12eb9e356707a900e54a17ea593514a6f..433a8c7a9ed6628e9f9c126cab646262aaf6abe2 100644
--- a/InnerDetector/InDetExample/InDetRecExample/python/TrackingCommon.py
+++ b/InnerDetector/InDetExample/InDetRecExample/python/TrackingCommon.py
@@ -848,9 +848,6 @@ def getInDetHoleSearchTool(name = 'InDetHoleSearchTool', **kwargs) :
     if 'Extrapolator' not in kwargs :
         kwargs = setDefaults( kwargs, Extrapolator     = getInDetExtrapolator())
 
-    if 'PixelSummaryTool' not in kwargs :
-        kwargs = setDefaults( kwargs, PixelSummaryTool = getInDetPixelConditionsSummaryTool() if DetFlags.haveRIO.pixel_on() else None)
-
     if 'SctSummaryTool' not in kwargs :
         kwargs = setDefaults( kwargs, SctSummaryTool   = getInDetSCT_ConditionsSummaryTool()  if DetFlags.haveRIO.SCT_on()   else None)
 
diff --git a/InnerDetector/InDetExample/InDetRecExample/share/InDetRecConditionsAccess.py b/InnerDetector/InDetExample/InDetRecExample/share/InDetRecConditionsAccess.py
index 7a3eba434634bb356aaa85944d0ea9b3fe8377bf..3de09a128508dae9886f4156f4876bdb35b9b9f7 100644
--- a/InnerDetector/InDetExample/InDetRecExample/share/InDetRecConditionsAccess.py
+++ b/InnerDetector/InDetExample/InDetRecExample/share/InDetRecConditionsAccess.py
@@ -110,7 +110,6 @@ if DetFlags.pixel_on():
                                       UseDCSStateConditions=(globalflags.DataSource=='data') and InDetFlags.usePixelDCS(),
                                       UseDCSStatusConditions=(globalflags.DataSource=='data') and InDetFlags.usePixelDCS(),
                                       UseTDAQConditions=athenaCommonFlags.isOnline(),
-                                      ReadDeadMapKey="/PIXEL/PixMapOverlay",
                                       UseCalibConditions=True,
                                       UseCablingConditions=useCablingConditions,
                                       CablingMapFileName=IdMappingDat)
diff --git a/InnerDetector/InDetExample/InDetTrigRecExample/python/InDetTrigConfigConditions.py b/InnerDetector/InDetExample/InDetTrigRecExample/python/InDetTrigConfigConditions.py
index 887b932f4616419f58f63e45c44643ce0ceec148..f3f7f6e0025b97f34feb94ae9a035e8c82ba0dd4 100644
--- a/InnerDetector/InDetExample/InDetTrigRecExample/python/InDetTrigConfigConditions.py
+++ b/InnerDetector/InDetExample/InDetTrigRecExample/python/InDetTrigConfigConditions.py
@@ -131,7 +131,6 @@ class PixelConditionsServicesSetup:
                                     UseDCSStateConditions=self.useDCS,
                                     UseDCSStatusConditions=self.useDCS,
                                     UseTDAQConditions=self.useTDAQ,     # should be false. This is only valid in RUN-1.
-                                    ReadDeadMapKey="/PIXEL/PixMapOverlay",
                                     UseCalibConditions=True,
                                     UseCablingConditions=useCablingConditions,
                                     CablingMapFileName=IdMappingDat)
diff --git a/InnerDetector/InDetExample/InDetTrigRecExample/python/InDetTrigConfigRecLoadTools.py b/InnerDetector/InDetExample/InDetTrigRecExample/python/InDetTrigConfigRecLoadTools.py
index 55265be7c09873dfe9221cd3f43e0a31b0c8cb7d..11b940938dadcdad1c2283febee86cf2e5304846 100755
--- a/InnerDetector/InDetExample/InDetTrigRecExample/python/InDetTrigConfigRecLoadTools.py
+++ b/InnerDetector/InDetExample/InDetTrigRecExample/python/InDetTrigConfigRecLoadTools.py
@@ -674,7 +674,6 @@ if InDetTrigFlags.loadSummaryTool():
                                                             Extrapolator = InDetTrigExtrapolator,
                                                             usePixel      = DetFlags.haveRIO.pixel_on(),
                                                             useSCT        = DetFlags.haveRIO.SCT_on(),
-                                                            PixelSummaryTool = InDetTrigPixelConditionsSummaryTool,
                                                             SctSummaryTool = InDetTrigSCTConditionsSummaryTool,
                                                             PixelLayerTool=InDetTrigTestPixelLayerTool,
                                                             )
diff --git a/InnerDetector/InDetMonitoring/SCT_Monitoring/python/TrackSummaryToolWorkaround.py b/InnerDetector/InDetMonitoring/SCT_Monitoring/python/TrackSummaryToolWorkaround.py
index 4719887d4af504ed1f90716f2ccca5235a840312..ee832c2c61adc3f7004c37500a6c863731631d2e 100644
--- a/InnerDetector/InDetMonitoring/SCT_Monitoring/python/TrackSummaryToolWorkaround.py
+++ b/InnerDetector/InDetMonitoring/SCT_Monitoring/python/TrackSummaryToolWorkaround.py
@@ -77,7 +77,6 @@ def TrackSummaryToolWorkaround(flags):
     result.addPublicTool(InDetTestPixelLayerTool)
     InDetHoleSearchTool = CompFactory.InDet.InDetTrackHoleSearchTool(name = "InDetHoleSearchTool",
                                                           Extrapolator = InDetExtrapolator,
-                                                          PixelSummaryTool = InDetPixelConditionsSummaryTool,
                                                           usePixel      = flags.Detector.GeometryPixel,
                                                           useSCT        = flags.Detector.GeometrySCT,
                                                           CountDeadModulesAfterLastHit = True,
diff --git a/InnerDetector/InDetRecTools/InDetTrackHoleSearch/InDetTrackHoleSearch/InDetTrackHoleSearchTool.h b/InnerDetector/InDetRecTools/InDetTrackHoleSearch/InDetTrackHoleSearch/InDetTrackHoleSearchTool.h
index 32e167c5771021801c0ffa2975d70c3531c7e61c..53b5ace5b53aa32781d7d3cb03c1beb12875bcd1 100644
--- a/InnerDetector/InDetRecTools/InDetTrackHoleSearch/InDetTrackHoleSearch/InDetTrackHoleSearchTool.h
+++ b/InnerDetector/InDetRecTools/InDetTrackHoleSearch/InDetTrackHoleSearch/InDetTrackHoleSearchTool.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
 ///////////////////////////////////////////////////////////////////
@@ -114,7 +114,6 @@ namespace InDet
 
       /** Handles to IConditionsSummaryTools for Pixels and SCT*/
       ToolHandle <IInDetConditionsTool> m_sctCondSummaryTool{this, "SctSummaryTool", "SCT_ConditionsSummaryTool/InDetSCT_ConditionsSummaryTool", "Tool to retrieve SCT Conditions summary"};
-      ToolHandle <IInDetConditionsTool> m_pixelCondSummaryTool{this, "PixelSummaryTool", "PixelConditionsSummaryTool/InDetPixelConditionsSummaryTool", "Tool to retrieve Pixel Conditions summary"};
       
       ToolHandle< IInDetTestPixelLayerTool >  m_pixelLayerTool;
 
diff --git a/InnerDetector/InDetRecTools/InDetTrackHoleSearch/src/InDetTrackHoleSearchTool.cxx b/InnerDetector/InDetRecTools/InDetTrackHoleSearch/src/InDetTrackHoleSearchTool.cxx
index fa4595eed1056b1c9b1cca293471f846a178d6fd..c559257aed067e6b25b361b785fee0afdcecfeae 100644
--- a/InnerDetector/InDetRecTools/InDetTrackHoleSearch/src/InDetTrackHoleSearchTool.cxx
+++ b/InnerDetector/InDetRecTools/InDetTrackHoleSearch/src/InDetTrackHoleSearchTool.cxx
@@ -76,9 +76,6 @@ StatusCode InDet::InDetTrackHoleSearchTool::initialize() {
   ATH_MSG_INFO("Retrieved tool " << m_extrapolator);
 
   if (m_usepix) {
-    // Get PixelConditionsSummaryTool
-    ATH_CHECK(m_pixelCondSummaryTool.retrieve());
-    ATH_MSG_INFO("Retrieved tool " << m_pixelCondSummaryTool);
     // Get InDetPixelLayerTool from ToolService
     ATH_CHECK(m_pixelLayerTool.retrieve());
     ATH_MSG_INFO("Retrieved tool " << m_pixelLayerTool);
@@ -805,7 +802,6 @@ bool InDet::InDetTrackHoleSearchTool::isSensitive(const Trk::TrackParameters* pa
   if (m_atlasId->is_pixel(id)) { 
     if (m_usepix) {
       ATH_MSG_VERBOSE("Found element is a Pixel module without a hit, see if it might be dead");
-      isgood=m_pixelCondSummaryTool->isGood(idHash);
       isgood=m_pixelLayerTool->expectHit(parameters);
       if (isgood) {
         // this detElement is only cosidered as hole if the extrapolation of
diff --git a/Projects/AthSimulation/package_filters.txt b/Projects/AthSimulation/package_filters.txt
index a4cb2f4c05ed15ac048ca2907eb879c58cd054e7..ae32473e13244b0d5f0ce766c4881762fa89906e 100644
--- a/Projects/AthSimulation/package_filters.txt
+++ b/Projects/AthSimulation/package_filters.txt
@@ -170,7 +170,6 @@
 + InnerDetector/InDetConditions/InDetConditionsSummaryService
 + InnerDetector/InDetConditions/InDetCoolCoralClientUtils
 + InnerDetector/InDetConditions/PixelConditionsData
-+ InnerDetector/InDetConditions/PixelConditionsTools
 + InnerDetector/InDetConditions/PixelCoralClientUtils
 + InnerDetector/InDetConditions/SCT_ConditionsData
 + InnerDetector/InDetConditions/TRT_ConditionsAlgs
diff --git a/Reconstruction/MuonIdentification/MuonCombinedRecExample/python/CombinedMuonTrackSummary.py b/Reconstruction/MuonIdentification/MuonCombinedRecExample/python/CombinedMuonTrackSummary.py
index 4ca97bef4c82297c433ee6e77e6fbeac63a816ab..43d625052d4f6288686b4365bfe940ec1537e98d 100644
--- a/Reconstruction/MuonIdentification/MuonCombinedRecExample/python/CombinedMuonTrackSummary.py
+++ b/Reconstruction/MuonIdentification/MuonCombinedRecExample/python/CombinedMuonTrackSummary.py
@@ -42,7 +42,6 @@ if muonCombinedRecFlags.useDetailedPixelHoleSearch():
   ToolSvc += InDet__InDetTestPixelLayerTool( 
     name = "CombinedMuonInDetTestPixelLayerTool",
     Extrapolator = atlasExtrapolator,
-    PixelSummaryTool = InDetPixelConditionsSummaryTool,
     CheckActiveAreas = True,
     CheckDeadRegions = True
     )
@@ -104,7 +103,6 @@ if DetFlags.haveRIO.pixel_on():
     name                       = "CombinedMuonPixelToTPID")
 
   # set properties into public tools
-  ToolSvc.CombinedMuonIDHoleSearch.PixelSummaryTool    = InDetPixelConditionsSummaryTool
   ToolSvc.CombinedMuonIDSummaryHelper.PixelToTPIDTool = ToolSvc.CombinedMuonPixelToTPID
   ToolSvc.CombinedMuonIDSummaryHelper.TestBLayerTool  = ToolSvc.CombinedMuonTestBLayer
   ToolSvc.CombinedMuonTrackSummary.PixelToTPIDTool    = ToolSvc.CombinedMuonPixelToTPID