diff --git a/extensions/openpower-pels/user_header.cpp b/extensions/openpower-pels/user_header.cpp
index a1b6194..34e2fa1 100644
--- a/extensions/openpower-pels/user_header.cpp
+++ b/extensions/openpower-pels/user_header.cpp
@@ -230,12 +230,19 @@
         pv::getValuesBitwise(_actionFlags, pel_values::actionFlagsValues);
 
     std::string hostState{"Invalid"};
+    std::string hmcState{"Invalid"};
     auto iter = pv::transmissionStates.find(
         static_cast<TransmissionState>(hostTransmissionState()));
     if (iter != pv::transmissionStates.end())
     {
         hostState = iter->second;
     }
+    auto iter1 = pv::transmissionStates.find(
+        static_cast<TransmissionState>(hmcTransmissionState()));
+    if (iter1 != pv::transmissionStates.end())
+    {
+        hmcState = iter1->second;
+    }
 
     std::string uh;
     jsonInsert(uh, pv::sectionVer, getNumberString("%d", userHeaderVersion), 1);
@@ -248,6 +255,7 @@
     jsonInsert(uh, "Event Type", eventType, 1);
     jsonInsertArray(uh, "Action Flags", actionFlags, 1);
     jsonInsert(uh, "Host Transmission", hostState, 1);
+    jsonInsert(uh, "HMC Transmission", hmcState, 1);
     uh.erase(uh.size() - 2);
     return uh;
 }
