diff --git a/vpd-manager/include/types.hpp b/vpd-manager/include/types.hpp
index 51ec239..b4dc22e 100644
--- a/vpd-manager/include/types.hpp
+++ b/vpd-manager/include/types.hpp
@@ -186,7 +186,8 @@
     InternalFailure, /* Should be used for any generic firmware failure */
     FruMissing, /* Should be used in case of presence failure */
     SystemTypeMismatch,
-    UnknownSystemSettings
+    UnknownSystemSettings,
+    FirmwareError
 };
 
 using InventoryCalloutData = std::tuple<std::string, CalloutPriority>;
diff --git a/vpd-manager/src/event_logger.cpp b/vpd-manager/src/event_logger.cpp
index 5eecc62..c59c8ba 100644
--- a/vpd-manager/src/event_logger.cpp
+++ b/vpd-manager/src/event_logger.cpp
@@ -47,7 +47,8 @@
         {types::ErrorType::SystemTypeMismatch,
          "com.ibm.VPD.Error.SystemTypeMismatch"},
         {types::ErrorType::UnknownSystemSettings,
-         "com.ibm.VPD.Error.UnknownSystemSettings"}};
+         "com.ibm.VPD.Error.UnknownSystemSettings"},
+        {types::ErrorType::FirmwareError, "com.ibm.VPD.Error.FirmwareError"}};
 
 const std::unordered_map<types::CalloutPriority, std::string>
     EventLogger::m_priorityMap = {
@@ -304,7 +305,7 @@
     const std::exception& i_exception)
 {
     types::ExceptionDataMap l_errorInfo{
-        {"ErrorType", types::ErrorType::InternalFailure},
+        {"ErrorType", types::ErrorType::FirmwareError},
         {"ErrorMsg", i_exception.what()}};
 
     try
@@ -382,14 +383,14 @@
     auto l_itrToErrType = l_exceptionDataMap.find("ErrorType");
     if (l_itrToErrType == l_exceptionDataMap.end())
     {
-        return types::ErrorType::InternalFailure;
+        return types::ErrorType::FirmwareError;
     }
 
     auto l_ptrToErrType =
         std::get_if<types::ErrorType>(&l_itrToErrType->second);
     if (!l_ptrToErrType)
     {
-        return types::ErrorType::InternalFailure;
+        return types::ErrorType::FirmwareError;
     }
 
     return *l_ptrToErrType;
