RelativeHumidityMeasurement Cluster

Cluster ID: 0x0405  |  Endpoint: Typically on Endpoint 1 (application endpoint)

RelativeHumidityMeasurement reports the relative humidity value measured by the device. This Cluster is read-only — it has no Commands, only 4 Attributes, and its structure is identical to TemperatureMeasurement. Commonly found on humidity sensors, temperature/humidity meters, and climate-controlled enclosures.

Humidity Unit Pitfall

All humidity Attribute values are in units of 0.01% RH (one hundredth of a percent relative humidity). For example, a device returning 6500 means an actual humidity of 65.00% RH. The valid range is 0 to 10000, corresponding to 0% to 100% RH. A value of null indicates the current measurement is invalid or unknown.

Attribute Overview

RelativeHumidityMeasurement has only 4 Attributes, of which MeasuredValue is mandatory. Click an Attribute ID to jump to its detailed description.

ID Name Type Access Description
0x00 MeasuredValue uint16 / null Read-only Current measured humidity (0.01% RH)
0x01 MinMeasuredValue uint16 / null Read-only Minimum measurable humidity
0x02 MaxMeasuredValue uint16 / null Read-only Maximum measurable humidity
0x03 Tolerance uint16 Read-only Measurement accuracy/tolerance (0.01% RH)

MeasuredValue (Current Measured Humidity)

The current relative humidity value measured by the device sensor, in units of 0.01% RH. The valid range is between MinMeasuredValue and MaxMeasuredValue. A value of null indicates the sensor is temporarily unable to provide a valid reading (e.g., sensor failure or initialization in progress).

Conversion Formula

Actual humidity = MeasuredValue / 100
For example: 6500 / 100 = 65.00% RH, 3275 / 100 = 32.75% RH

MinMeasuredValue (Minimum Measurable Humidity)

The minimum relative humidity value the sensor can measure, in units of 0.01% RH. This represents the hardware capability lower limit — MeasuredValue will not fall below this value. A value of null indicates the minimum is undefined. Range: 0 to 9999 (0% to 99.99% RH).

MaxMeasuredValue (Maximum Measurable Humidity)

The maximum relative humidity value the sensor can measure, in units of 0.01% RH. MeasuredValue will not exceed this value. A value of null indicates the maximum is undefined. Range: 1 to 10000 (0.01% to 100% RH), and must be greater than MinMeasuredValue.

Tolerance (Measurement Tolerance)

The measurement accuracy of the sensor, in units of 0.01% RH. Represents the maximum deviation between the actual value and the reported value. For example, Tolerance = 200 means an accuracy of ±2.00% RH. Range: 0 to 2048 (0% to 20.48% RH). This is an optional Attribute and not all devices support it.

Example Data

Reading the RelativeHumidityMeasurement Cluster Attributes from a temperature/humidity sensor:

{
  // --- Humidity Measurement ---
  "0x0": 6500,          // MeasuredValue = 6500 → actual 65.00% RH
  "0x1": 0,             // MinMeasuredValue = 0 → 0.00% RH
  "0x2": 10000,         // MaxMeasuredValue = 10000 → 100.00% RH
  "0x3": 200            // Tolerance = 200 → ±2.00% RH
}
Data Interpretation

The example above indicates: current humidity 65.00% RH, sensor range 0% to 100%, accuracy ±2.00%. When displaying in the App, simply read MeasuredValue and divide by 100. If the value is null, the UI should show "--" or "No data available" rather than 0.

Common Scenarios

Scenario 1: Reading and Displaying Current Humidity
  1. Read MeasuredValue (0x00), handling null (sensor not ready or faulty)
  2. Divide by 100 to get the actual percentage, keeping two decimal places
  3. Optionally read Tolerance (0x03) to display accuracy information on the detail page (e.g., "±2%")
  4. Subscribe to MeasuredValue change notifications to update the UI in real time
Scenario 2: Comfort Zone Automation
  1. Define the comfort humidity range, e.g., 40% to 60% RH (corresponding to raw values 4000 to 6000)
  2. Subscribe to MeasuredValue changes; when humidity drops below 4000, trigger the humidifier to turn on
  3. Turn off the humidifier when humidity returns above 5000 (with hysteresis to avoid frequent toggling)
  4. Combine with temperature data from the TemperatureMeasurement Cluster for comprehensive comfort assessment
Scenario 3: Dehumidifier Linked Control
  1. Read MaxMeasuredValue (0x02) to confirm the sensor range covers high-humidity scenarios
  2. Set a dehumidification threshold (e.g., 70% RH = 7000); when MeasuredValue exceeds the threshold, activate dehumidification
  3. Stop after the dehumidification target reaches 55% RH (5500), with hysteresis to prevent repeated start/stop cycles
  4. Use the Tolerance Attribute to evaluate measurement precision — if tolerance is large (e.g., ±5%), threshold settings should be more conservative