diff --git a/src/appcommands.cpp b/src/appcommands.cpp
index ed9e365..ecbc2b4 100644
--- a/src/appcommands.cpp
+++ b/src/appcommands.cpp
@@ -72,21 +72,34 @@
     int fd = -1;
     ssize_t bytes_rd;
     int ret = 0;
+    std::string eepromPath = FRU_EEPROM;
+
+    // find the eeprom path of MB FRU
+    auto device = getMbFruDevice();
+    if (device)
+    {
+        auto [bus, address] = *device;
+        std::stringstream ss;
+        ss << "/sys/bus/i2c/devices/" << static_cast<int>(bus) << "-"
+           << std::setw(4) << std::setfill('0') << std::hex
+           << static_cast<int>(address) << "/eeprom";
+        eepromPath = ss.str();
+    }
 
     errno = 0;
 
     // Check if file is present
-    if (access(FRU_EEPROM, F_OK) == -1)
+    if (access(eepromPath.c_str(), F_OK) == -1)
     {
-        std::cerr << "Unable to access: " << FRU_EEPROM << std::endl;
+        std::cerr << "Unable to access: " << eepromPath << std::endl;
         return errno;
     }
 
     // Open the file
-    fd = open(FRU_EEPROM, O_RDONLY);
+    fd = open(eepromPath.c_str(), O_RDONLY);
     if (fd == -1)
     {
-        std::cerr << "Unable to open: " << FRU_EEPROM << std::endl;
+        std::cerr << "Unable to open: " << eepromPath << std::endl;
         return errno;
     }
 
