diff --git a/include/error_monitors/mem_thermtrip_monitor.hpp b/include/error_monitors/mem_thermtrip_monitor.hpp
index 7d87fe1..fea3e21 100644
--- a/include/error_monitors/mem_thermtrip_monitor.hpp
+++ b/include/error_monitors/mem_thermtrip_monitor.hpp
@@ -26,6 +26,7 @@
     const static host_error_monitor::base_gpio_monitor::AssertValue
         assertValue =
             host_error_monitor::base_gpio_monitor::AssertValue::lowAssert;
+    std::shared_ptr<sdbusplus::asio::dbus_interface> assertInterface;
     size_t cpuNum;
 
     void logEvent() override
@@ -37,15 +38,32 @@
                         LOG_ERR, "REDFISH_MESSAGE_ID=%s",
                         "OpenBMC.0.1.MemoryThermTrip",
                         "REDFISH_MESSAGE_ARGS=%s", cpuNumber.c_str(), NULL);
+        assertInterface->set_property("Asserted", true);
+    }
+
+    void deassertHandler() override
+    {
+        assertInterface->set_property("Asserted", false);
     }
 
   public:
     MemThermtripMonitor(boost::asio::io_service& io,
                         std::shared_ptr<sdbusplus::asio::connection> conn,
-                        const std::string& signalName, const size_t cpuNum) :
+                        const std::string& signalName, const size_t cpuNum,
+                        const std::string& customName = std::string()) :
         BaseGPIOMonitor(io, conn, signalName, assertValue),
         cpuNum(cpuNum)
     {
+        sdbusplus::asio::object_server server =
+            sdbusplus::asio::object_server(conn);
+        std::string objectName = customName.empty() ? signalName : customName;
+        std::string path =
+            "/xyz/openbmc_project/host_error_monitor/processor/" + objectName;
+
+        assertInterface = server.add_interface(
+            path, "xyz.openbmc_project.HostErrorMonitor.Processor.ThermalTrip");
+        assertInterface->register_property("Asserted", false);
+        assertInterface->initialize();
         if (valid)
         {
             startMonitoring();
