diff --git a/src/PSUSensorMain.cpp b/src/PSUSensorMain.cpp
index e485598..0a197b8 100644
--- a/src/PSUSensorMain.cpp
+++ b/src/PSUSensorMain.cpp
@@ -40,43 +40,14 @@
 static constexpr bool debug = false;
 
 static constexpr auto sensorTypes{std::to_array<const char*>(
-    {"xyz.openbmc_project.Configuration.ADM1266",
-     "xyz.openbmc_project.Configuration.ADM1272",
-     "xyz.openbmc_project.Configuration.ADM1275",
-     "xyz.openbmc_project.Configuration.ADM1278",
-     "xyz.openbmc_project.Configuration.ADM1293",
-     "xyz.openbmc_project.Configuration.ADS7830",
-     "xyz.openbmc_project.Configuration.BMR490",
-     "xyz.openbmc_project.Configuration.DPS800",
-     "xyz.openbmc_project.Configuration.INA219",
-     "xyz.openbmc_project.Configuration.INA230",
-     "xyz.openbmc_project.Configuration.IPSPS",
-     "xyz.openbmc_project.Configuration.ISL68137",
-     "xyz.openbmc_project.Configuration.ISL68220",
-     "xyz.openbmc_project.Configuration.ISL68223",
-     "xyz.openbmc_project.Configuration.ISL69225",
-     "xyz.openbmc_project.Configuration.ISL69243",
-     "xyz.openbmc_project.Configuration.ISL69260",
-     "xyz.openbmc_project.Configuration.LM25066",
-     "xyz.openbmc_project.Configuration.MAX16601",
-     "xyz.openbmc_project.Configuration.MAX20710",
-     "xyz.openbmc_project.Configuration.MAX20730",
-     "xyz.openbmc_project.Configuration.MAX20734",
-     "xyz.openbmc_project.Configuration.MAX20796",
-     "xyz.openbmc_project.Configuration.MAX34451",
-     "xyz.openbmc_project.Configuration.MP2971",
-     "xyz.openbmc_project.Configuration.MP2973",
-     "xyz.openbmc_project.Configuration.MP5023",
-     "xyz.openbmc_project.Configuration.pmbus",
-     "xyz.openbmc_project.Configuration.PXE1610",
-     "xyz.openbmc_project.Configuration.RAA228000",
-     "xyz.openbmc_project.Configuration.RAA228228",
-     "xyz.openbmc_project.Configuration.RAA228620",
-     "xyz.openbmc_project.Configuration.RAA229001",
-     "xyz.openbmc_project.Configuration.RAA229004",
-     "xyz.openbmc_project.Configuration.RAA229126",
-     "xyz.openbmc_project.Configuration.TPS546D24",
-     "xyz.openbmc_project.Configuration.XDPE12284"})};
+    {"ADM1266",   "ADM1272",   "ADM1275",   "ADM1278",   "ADM1293",
+     "ADS7830",   "BMR490",    "DPS800",    "INA219",    "INA230",
+     "IPSPS",     "ISL68137",  "ISL68220",  "ISL68223",  "ISL69225",
+     "ISL69243",  "ISL69260",  "LM25066",   "MAX16601",  "MAX20710",
+     "MAX20730",  "MAX20734",  "MAX20796",  "MAX34451",  "MP2971",
+     "MP2973",    "MP5023",    "pmbus",     "PXE1610",   "RAA228000",
+     "RAA228228", "RAA228620", "RAA229001", "RAA229004", "RAA229126",
+     "TPS546D24", "XDPE12284"})};
 
 // clang-format off
 static constexpr auto pmbusNames{std::to_array<const char*>({
@@ -395,7 +366,7 @@
             sensorData = &cfgData;
             for (const char* type : sensorTypes)
             {
-                auto sensorBase = sensorData->find(type);
+                auto sensorBase = sensorData->find(configInterfaceName(type));
                 if (sensorBase != sensorData->end())
                 {
                     baseConfig = &sensorBase->second;
