diff --git a/inc/button_handler.hpp b/inc/button_handler.hpp
index c6dc127..8d1b319 100644
--- a/inc/button_handler.hpp
+++ b/inc/button_handler.hpp
@@ -10,7 +10,10 @@
 {
     powerPressed,
     longPowerPressed,
-    resetPressed
+    resetPressed,
+    powerReleased,
+    longPowerReleased,
+    resetReleased
 };
 /**
  * @class Handler
@@ -49,7 +52,7 @@
      *
      * @param[in] msg - sdbusplus message from signal
      */
-    void powerPressed(sdbusplus::message::message& msg);
+    void powerReleased(sdbusplus::message::message& msg);
 
     /**
      * @brief The handler for a long power button press
@@ -68,7 +71,7 @@
      *
      * @param[in] msg - sdbusplus message from signal
      */
-    void idPressed(sdbusplus::message::message& msg);
+    void idReleased(sdbusplus::message::message& msg);
 
     /**
      * @brief The handler for a reset button press
@@ -77,7 +80,7 @@
      *
      * @param[in] msg - sdbusplus message from signal
      */
-    void resetPressed(sdbusplus::message::message& msg);
+    void resetReleased(sdbusplus::message::message& msg);
 
     /**
      * @brief Checks if system is powered on
@@ -132,7 +135,7 @@
     /**
      * @brief Matches on the power button long press released signal
      */
-    std::unique_ptr<sdbusplus::bus::match_t> powerButtonLongPressReleased;
+    std::unique_ptr<sdbusplus::bus::match_t> powerButtonLongPressed;
 
     /**
      * @brief Matches on the ID button released signal
