diff --git a/modules/sensors/dynamic_sensor/HidRawSensor.cpp b/modules/sensors/dynamic_sensor/HidRawSensor.cpp
index f3c8a27..91aed0a 100644
--- a/modules/sensors/dynamic_sensor/HidRawSensor.cpp
+++ b/modules/sensors/dynamic_sensor/HidRawSensor.cpp
@@ -784,8 +784,9 @@
 }
 
 bool HidRawSensor::findSensorControlUsage(const std::vector<HidParser::ReportPacket> &packets) {
+    using namespace Hid::Sensor::PowerStateUsage;
     using namespace Hid::Sensor::PropertyUsage;
-    using namespace Hid::Sensor::RawMinMax;
+    using namespace Hid::Sensor::ReportingStateUsage;
 
     //REPORTING_STATE
     const HidParser::ReportItem *reportingState
@@ -793,13 +794,31 @@
 
     if (reportingState == nullptr
             || !reportingState->isByteAligned()
-            || reportingState->bitSize != 8
-            || reportingState->minRaw != REPORTING_STATE_MIN
-            || reportingState->maxRaw != REPORTING_STATE_MAX) {
+            || reportingState->bitSize != 8) {
         LOG_W << "Cannot find valid reporting state feature" << LOG_ENDL;
     } else {
         mReportingStateId = reportingState->id;
         mReportingStateOffset = reportingState->bitOffset / 8;
+
+        mReportingStateDisableIndex = -1;
+        mReportingStateEnableIndex = -1;
+        for (unsigned i = 0; i < reportingState->usageVector.size(); ++i) {
+            if (reportingState->usageVector[i] == REPORTING_STATE_NO_EVENTS) {
+                mReportingStateDisableIndex = i;
+            }
+            if (reportingState->usageVector[i] == REPORTING_STATE_ALL_EVENTS) {
+                mReportingStateEnableIndex = i;
+            }
+        }
+        if (mReportingStateDisableIndex < 0) {
+            LOG_W << "Cannot find reporting state to disable sensor"
+                  << LOG_ENDL;
+            mReportingStateId = -1;
+        }
+        if (mReportingStateEnableIndex < 0) {
+            LOG_W << "Cannot find reporting state to enable sensor" << LOG_ENDL;
+            mReportingStateId = -1;
+        }
     }
 
     //POWER_STATE
@@ -807,13 +826,31 @@
             = find(packets, POWER_STATE, HidParser::REPORT_TYPE_FEATURE);
     if (powerState == nullptr
             || !powerState->isByteAligned()
-            || powerState->bitSize != 8
-            || powerState->minRaw != POWER_STATE_MIN
-            || powerState->maxRaw != POWER_STATE_MAX) {
+            || powerState->bitSize != 8) {
         LOG_W << "Cannot find valid power state feature" << LOG_ENDL;
     } else {
         mPowerStateId = powerState->id;
         mPowerStateOffset = powerState->bitOffset / 8;
+
+        mPowerStateOffIndex = -1;
+        mPowerStateOnIndex = -1;
+        for (unsigned i = 0; i < powerState->usageVector.size(); ++i) {
+            if (powerState->usageVector[i] == POWER_STATE_D4_POWER_OFF) {
+                mPowerStateOffIndex = i;
+            }
+            if (powerState->usageVector[i] == POWER_STATE_D0_FULL_POWER) {
+                mPowerStateOnIndex = i;
+            }
+        }
+        if (mPowerStateOffIndex < 0) {
+            LOG_W << "Cannot find power state to power off sensor"
+                  << LOG_ENDL;
+            mPowerStateId = -1;
+        }
+        if (mPowerStateOnIndex < 0) {
+            LOG_W << "Cannot find power state to power on sensor" << LOG_ENDL;
+            mPowerStateId = -1;
+        }
     }
 
     //REPORT_INTERVAL
@@ -846,7 +883,6 @@
 }
 
 int HidRawSensor::enable(bool enable) {
-    using namespace Hid::Sensor::StateValue;
     SP(HidDevice) device = PROMOTE(mDevice);
 
     if (device == nullptr) {
@@ -864,7 +900,8 @@
         uint8_t id = static_cast<uint8_t>(mPowerStateId);
         if (device->getFeature(id, &buffer)
                 && buffer.size() > mPowerStateOffset) {
-            buffer[mPowerStateOffset] = enable ? POWER_STATE_FULL_POWER : POWER_STATE_POWER_OFF;
+            buffer[mPowerStateOffset] =
+                    enable ? mPowerStateOnIndex : mPowerStateOffIndex;
             setPowerOk = device->setFeature(id, buffer);
         } else {
             LOG_E << "enable: changing POWER STATE failed" << LOG_ENDL;
@@ -878,7 +915,8 @@
         if (device->getFeature(id, &buffer)
                 && buffer.size() > mReportingStateOffset) {
             buffer[mReportingStateOffset]
-                    = enable ? REPORTING_STATE_ALL_EVENT : REPORTING_STATE_NO_EVENT;
+                    = enable ? mReportingStateEnableIndex :
+                               mReportingStateDisableIndex;
             setReportingOk = device->setFeature(id, buffer);
         } else {
             LOG_E << "enable: changing REPORTING STATE failed" << LOG_ENDL;
@@ -1019,7 +1057,10 @@
     ss << "  Power state ";
     if (mPowerStateId >= 0) {
         ss << "found, id: " << mPowerStateId
-              << " offset: " << mPowerStateOffset << LOG_ENDL;
+              << " offset: " << mPowerStateOffset
+              << " power off index: " << mPowerStateOffIndex
+              << " power on index: " << mPowerStateOnIndex
+              << LOG_ENDL;
     } else {
         ss << "not found" << LOG_ENDL;
     }
@@ -1027,7 +1068,10 @@
     ss << "  Reporting state ";
     if (mReportingStateId >= 0) {
         ss << "found, id: " << mReportingStateId
-              << " offset: " << mReportingStateOffset << LOG_ENDL;
+              << " offset: " << mReportingStateOffset
+              << " disable index: " << mReportingStateDisableIndex
+              << " enable index: " << mReportingStateEnableIndex
+              << LOG_ENDL;
     } else {
         ss << "not found" << LOG_ENDL;
     }
diff --git a/modules/sensors/dynamic_sensor/HidRawSensor.h b/modules/sensors/dynamic_sensor/HidRawSensor.h
index 2dd32b6..201e72e 100644
--- a/modules/sensors/dynamic_sensor/HidRawSensor.h
+++ b/modules/sensors/dynamic_sensor/HidRawSensor.h
@@ -138,9 +138,13 @@
     // Features for control sensor
     int mReportingStateId;
     unsigned int mReportingStateOffset;
+    int mReportingStateDisableIndex;
+    int mReportingStateEnableIndex;
 
     int mPowerStateId;
     unsigned int mPowerStateOffset;
+    int mPowerStateOffIndex;
+    int mPowerStateOnIndex;
 
     int mReportIntervalId;
     unsigned int mReportIntervalOffset;
diff --git a/modules/sensors/dynamic_sensor/HidSensorDef.h b/modules/sensors/dynamic_sensor/HidSensorDef.h
index 2728b28..8f47a85 100644
--- a/modules/sensors/dynamic_sensor/HidSensorDef.h
+++ b/modules/sensors/dynamic_sensor/HidSensorDef.h
@@ -77,24 +77,28 @@
 };
 } // namespace ReportUsage
 
-namespace RawMinMax {
+namespace ReportingStateUsage {
 enum {
-    REPORTING_STATE_MIN = 0,
-    REPORTING_STATE_MAX = 5,
-    POWER_STATE_MIN = 0,
-    POWER_STATE_MAX = 5,
+    REPORTING_STATE_NO_EVENTS = 0x0840,
+    REPORTING_STATE_ALL_EVENTS = 0x0841,
+    REPORTING_STATE_REPORT_THRESHOLD_EVENTS = 0x0842,
+    REPORTING_STATE_REPORT_WAKE_ON_NO_EVENTS = 0x0843,
+    REPORTING_STATE_REPORT_WAKE_ON_ALL_EVENTS = 0x0844,
+    REPORTING_STATE_REPORT_WAKE_ON_THRESHOLD_EVENTS = 0x0845,
 };
-} // namespace RawMinMax
+} // namespace ReportingStateUsage
 
-namespace StateValue {
+namespace PowerStateUsage {
 enum {
-    POWER_STATE_FULL_POWER = 1,
-    POWER_STATE_POWER_OFF = 5,
-
-    REPORTING_STATE_ALL_EVENT = 1,
-    REPORTING_STATE_NO_EVENT = 0,
+    POWER_STATE_UNDEFINED = 0x0850,
+    POWER_STATE_D0_FULL_POWER = 0x0851,
+    POWER_STATE_D1_LOW_POWER = 0x0852,
+    POWER_STATE_D2_STANDBY_POWER_WITH_WAKEUP = 0x0853,
+    POWER_STATE_D3_SLEEP_WITH_WAKEUP = 0x0854,
+    POWER_STATE_D4_POWER_OFF = 0x0855,
 };
-} // StateValue
+} // namespace PowerStateUsage
+
 } // namespace Sensor
 } // namespace Hid
 #endif // HID_SENSOR_DEF_H_
diff --git a/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp b/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp
index 264f13c..704a1b3 100644
--- a/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp
+++ b/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp
@@ -248,6 +248,7 @@
                 ReportItem digest = {
                     .usage = r.getFullUsage(),
                     .id = id,
+                    .usageVector = r.getUsageVector(),
                     .minRaw = logical.first,
                     .maxRaw = logical.second,
                     .a = scale,
diff --git a/modules/sensors/dynamic_sensor/HidUtils/HidParser.h b/modules/sensors/dynamic_sensor/HidUtils/HidParser.h
index 4ef5ec6..20dcf63 100644
--- a/modules/sensors/dynamic_sensor/HidUtils/HidParser.h
+++ b/modules/sensors/dynamic_sensor/HidUtils/HidParser.h
@@ -89,6 +89,7 @@
     unsigned int usage;
     unsigned int id;
     int type; // feature, input or output
+    std::vector<unsigned int> usageVector;
 
     int64_t minRaw;
     int64_t maxRaw;
