Enumerations
‘Attribute ID’ Enumerations
The following structure contains the enumerations used to identify the attributes of the Simple Metering cluster.
Note: Some of the following enumerations correspond to attributes that are not certifiable in SE 1.1.1 (07-5356-17) or earlier and are for future use (as indicated in the attribute descriptions in Section 42.2).
typedef enum PACK
{
/* Reading information attribute set attribute IDs*/
E_CLD_SM_ATTR_ID_CURRENT_SUMMATION_DELIVERED = 0x0000,
E_CLD_SM_ATTR_ID_CURRENT_SUMMATION_RECEIVED,
E_CLD_SM_ATTR_ID_CURRENT_MAX_DEMAND_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_MAX_DEMAND_RECEIVED,
E_CLD_SM_ATTR_ID_DFT_SUMMATION,
E_CLD_SM_ATTR_ID_DAILY_FREEZE_TIME,
E_CLD_SM_ATTR_ID_POWER_FACTOR,
E_CLD_SM_ATTR_ID_READING_SNAPSHOT_TIME,
E_CLD_SM_ATTR_ID_CURRENT_MAX_DEMAND_DELIVERED_TIME,
E_CLD_SM_ATTR_ID_CURRENT_MAX_DEMAND_RECEIVED_TIME,
E_CLD_SM_ATTR_ID_DEFAULT_UPDATE_PERIOD,
E_CLD_SM_ATTR_ID_FAST_POLL_UPDATE_PERIOD,
E_CLD_SM_ATTR_ID_CURRENT_BLOCK_PERIOD_CONSUMPTION_DELIVERED,
E_CLD_SM_ATTR_ID_DAILY_CONSUMPTION_TARGET,
E_CLD_SM_ATTR_ID_CURRENT_BLOCK,
E_CLD_SM_ATTR_ID_PROFILE_INTERVAL_PERIOD,
E_CLD_SM_ATTR_ID_INTERVAL_READ_REPORTING_PERIOD,
E_CLD_SM_ATTR_ID_PRESET_READING_TIME,
E_CLD_SM_ATTR_ID_VOLUME_PER_REPORT,
E_CLD_SM_ATTR_ID_FLOW_RESTRICTION,
E_CLD_SM_ATTR_ID_SUPPLY_STATUS,
E_CLD_SM_ATTR_ID_CURRENT_INLET_ENERGY_CARRIER_SUMMATION,
E_CLD_SM_ATTR_ID_CURRENT_OUTLET_ENERGY_CARRIER_SUMMATION,
E_CLD_SM_ATTR_ID_INLET_TEMPERATURE,
E_CLD_SM_ATTR_ID_OUTLET_TEMPERATURE,
E_CLD_SM_ATTR_ID_CONTROL_TEMPERATURE,
E_CLD_SM_ATTR_ID_CURRENT_INLET_ENERGY_CARRIER_DEMAND,
E_CLD_SM_ATTR_ID_CURRENT_OUTLET_ENERGY_CARRIER_DEMAND,
/* Time Of Use Information attribute set attribute IDs */
E_CLD_SM_ATTR_ID_CURRENT_TIER_1_SUMMATION_DELIVERED = 0x0100,
E_CLD_SM_ATTR_ID_CURRENT_TIER_1_SUMMATION_RECEIVED,
E_CLD_SM_ATTR_ID_CURRENT_TIER_2_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER_2_SUMMATION_RECEIVED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER_15_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER_15_SUMMATION_RECEIVED,
/* Meter status attribute set attribute IDs */
E_CLD_SM_ATTR_ID_STATUS = 0x0200,
E_CLD_SM_ATTR_ID_REMAINING_BATTERY_LIFE,
E_CLD_SM_ATTR_ID_HOURS_IN_OPERATION,
E_CLD_SM_ATTR_ID_HOURS_IN_FAULT,
/* Formatting attribute set attribute IDs */
E_CLD_SM_ATTR_ID_UNIT_OF_MEASURE = 0x0300,
E_CLD_SM_ATTR_ID_MULTIPLIER,
E_CLD_SM_ATTR_ID_DIVISOR,
E_CLD_SM_ATTR_ID_SUMMATION_FORMATING,
E_CLD_SM_ATTR_ID_DEMAND_FORMATING,
E_CLD_SM_ATTR_ID_HISTORICAL_CONSUMPTION_FORMATTING,
E_CLD_SM_ATTR_ID_METERING_DEVICE_TYPE,
E_CLD_SM_ATTR_ID_SITE_ID,
E_CLD_SM_ATTR_ID_METER_SERIAL_NUMBER,
E_CLD_SM_ATTR_ID_ENERGY_CARRIER_UNIT_OF_MEASURE,
E_CLD_SM_ATTR_ID_ENERGY_CARRIER_SUMMATION_FORMATTING,
E_CLD_SM_ATTR_ID_ENERGY_CARRIER_DEMAND_FORMATTING,
E_CLD_SM_ATTR_ID_TEMPERATURE_UNIT_OF_MEASURE,
E_CLD_SM_ATTR_ID_TEMPERATURE_FORMATTING,
/* ESP Historical Consumption set attribute IDs */
E_CLD_SM_ATTR_ID_INSTANTANEOUS_DEMAND = 0x0400,
E_CLD_SM_ATTR_ID_CURRENT_DAY_CONSUMPTION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_DAY_CONSUMPTION_RECEIVED,
E_CLD_SM_ATTR_ID_PREVIOUS_DAY_CONSUMPTION_DELIVERED,
E_CLD_SM_ATTR_ID_PREVIOUS_DAY_CONSUMPTION_RECEIVED,
E_CLD_SM_ATTR_ID_CURRENT_PARTIAL_PROFILE_INTERVAL_START_TIME_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_PARTIAL_PROFILE_INTERVAL_START_TIME_RECEIVED,
E_CLD_SM_ATTR_ID_CURRENT_PARTIAL_PROFILE_INTERVAL_VALUE_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_PARTIAL_PROFILE_INTERVAL_VALUE_RECEIVED,
E_CLD_SM_ATTR_ID_CURRENT_DAY_MAXIMUM_PRESSURE,
E_CLD_SM_ATTR_ID_CURRENT_DAY_MINIMUM_PRESSURE,
E_CLD_SM_ATTR_ID_PREVIOUS_DAY_MAXIMUM_PRESSURE,
E_CLD_SM_ATTR_ID_PREVIOUS_DAY_MINIMUM_PRESSURE,
E_CLD_SM_ATTR_ID_CURRENT_DAY_MAXIMUM_DEMAND,
E_CLD_SM_ATTR_ID_PREVIOUS_DAY_MAXIMUM_DEMAND,
E_CLD_SM_ATTR_ID_CURRENT_MONTH_MAXIMUM_DEMAND,
E_CLD_SM_ATTR_ID_CURRENT_YEAR_MAXIMUM_DEMAND,
E_CLD_SM_ATTR_ID_CURRENT_DAY_MAXIMUM_ENERGY_CARRIER_DEMAND,
E_CLD_SM_ATTR_ID_PREVIOUS_DAY_MAXIMUM_ENERGY_CARRIER_DEMAND,
E_CLD_SM_ATTR_ID_CURRENT_MONTH_MAXIMUM_ENERGY_CARRIER_DEMAND,
E_CLD_SM_ATTR_ID_CURRENT_MONTH_MINIMUM_ENERGY_CARRIER_DEMAND,
E_CLD_SM_ATTR_ID_CURRENT_YEAR_MAXIMUM_ENERGY_CARRIER_DEMAND,
E_CLD_SM_ATTR_ID_CURRENT_YEAR_MINIMUM_ENERGY_CARRIER_DEMAND,
/* Load Profile attribute set attribute IDs */
E_CLD_SM_ATTR_ID_MAX_NUMBER_OF_PERIODS_DELIVERED = 0x0500,
/* Supply Limit attribute set attribute IDs */
E_CLD_SM_ATTR_ID_CURRENT_DEMAND_DELIVERED = 0x0600,
E_CLD_SM_ATTR_ID_DEMAND_LIMIT,
E_CLD_SM_ATTR_ID_DEMAND_INTEGRATION_PERIOD,
E_CLD_SM_ATTR_ID_NUMBER_OF_DEMAND_SUBINTERVALS,
/* Block Information Attribute set attribute IDs */
/* Block Information Attribute set: No Tier Block Set */
E_CLD_SM_ATTR_ID_CURRENT_NOTIER_BLOCK1_SUMMATION_DELIVERED = 0x0700,
E_CLD_SM_ATTR_ID_CURRENT_NOTIER_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_NOTIER_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier1 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER1_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER1_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER1_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier2 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER2_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER2_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER2_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier5 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER3_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER3_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER3_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier4 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER4_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER4_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER4_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier5 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER5_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER5_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER5_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier6 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER6_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER6_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER6_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier8 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER7_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER7_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER7_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier8 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER8_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER8_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER8_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier9 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER9_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER9_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER9_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier10 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER10_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER10_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER10_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier11 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER11_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER11_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER11_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier12 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER12_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER12_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER12_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier13 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER13_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER13_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER13_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier14 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER14_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER14_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER14_BLOCK16_SUMMATION_DELIVERED,
/* Block Information Attribute set: Tier15 Block Set */
E_CLD_SM_ATTR_ID_CURRENT_TIER15_BLOCK1_SUMMATION_DELIVERED,
E_CLD_SM_ATTR_ID_CURRENT_TIER15_BLOCK2_SUMMATION_DELIVERED,
:
E_CLD_SM_ATTR_ID_CURRENT_TIER15_BLOCK16_SUMMATION_DELIVERED,
/* Alarm Attribute set attribute IDs */
E_CLD_SM_ATTR_ID_GENERIC_ALARM_MASK = 0x0800,
E_CLD_SM_ATTR_ID_ELECTRICITY_ALARM_MASK,
E_CLD_SM_ATTR_ID_PRESSURE_ALARM_MASK,
E_CLD_SM_ATTR_ID_WATER_SPECIFIC_ALARM_MASK,
E_CLD_SM_ATTR_ID_HEAT_AND_COOLING_SPECIFIC_ALARM_MASK,
E_CLD_SM_ATTR_ID_GAS_ALARM_MASK,
} teCLD_SM_SimpleMeteringAttributeID;
Parent topic:Enumerations
‘Meter Status’ Enumerations
Enumerations for the u8MeterStatus element in the Simple Metering cluster structure tsSE_SimpleMetering are provided as #defines.
The following enumerated masks can be used to set the meter status:
Enumeration |
Description |
|---|---|
E_CLD_SM_METER_STATUS_CHECK_METER_MASK |
Non-fatal problem detected on meter |
E_CLD_SM_METER_STATUS_LOW_BATTERY_MASK |
Battery level is low |
E_CLD_SM_METER_STATUS_TAMPER_DETECT_MASK |
Detected tampering with device |
E_CLD_SM_METER_STATUS_POWER_FAILURE_MASK |
Indicates power failure on device |
E_CLD_SM_METER_STATUS_POWER_QUALITY_MASK |
Power anomaly detected |
E_CLD_SM_METER_STATUS_LEAK_DETECT_MASK |
Detected leak (e.g. of gas or water) |
E_CLD_SM_METER_STATUS_SERVICE_DISCONNECT_OPEN_MASK |
Service to premises disconnected |
Parent topic:Enumerations
‘Unit of Measure’ Enumerations
The following enumerations are used to set the teSE_UnitOfMeasure element in the Simple Metering cluster structure tsSE_SimpleMetering. Separate sets of enumerations are provided for binary and BCD (Binary Coded Decimal) representations.
typedef enum PACK
{
/* Binary values */
E_CLD_SM_UOM_KILO_WATTS = 0x00,
E_CLD_SM_UOM_CUBIC_METER,
E_CLD_SM_UOM_CUBIC_FEET,
E_CLD_SM_UOM_100_CUBIC_FEET, /* ccf & ccf/h */
E_CLD_SM_UOM_US_GALLON, /* USG & USG/h */
E_CLD_SM_UOM_IMPERIAL_GALLON, /* IMPG & IMPG/h */
E_CLD_SM_UOM_BTU, /* BTU & BTU/h */
E_CLD_SM_UOM_LITERS, /* Liters & Liters/h */
E_CLD_SM_UOM_KPA_GAUGE,
E_CLD_SM_UOM_KPA_ABSOLUTE,
/* BCD values */
E_CLD_SM_UOM_KILO_WATTS_BCD = 0x80,
E_CLD_SM_UOM_CUBIC_METER_BCD,
E_CLD_SM_UOM_CUBIC_FEET_BCD,
E_CLD_SM_UOM_100_CUBIC_FEET_BCD, /* ccf & ccf/h */
E_CLD_SM_UOM_US_GALLON_BCD, /* USG & USG/h */
E_CLD_SM_UOM_IMPERIAL_GALLON_BCD, /* IMPG & IMPG/h */
E_CLD_SM_UOM_BTU_BCD, /* BTU & BTU/h */
E_CLD_SM_UOM_LITERS_BCD, /* Liters & Liters/h */
E_CLD_SM_UOM_KPA_GAUGE_BCD,
E_CLD_SM_UOM_KPA_ABSOLUTE_BCD
} teCLD_SM_UnitOfMeasure;
The above enumerations are detailed in the table below.
Enumeration |
Description |
|---|---|
Instantaneous |
|
Binary Values |
|
E_CLD_SM_UOM_KILO_WATTS |
kW (kiloWatts) |
E_CLD_SM_UOM_CUBIC_METER |
m3/h (cubic metres per hour) |
E_CLD_SM_UOM_CUBIC_FEET |
ft3/h (cubic feet per hour) |
E_CLD_SM_UOM_100_CUBIC_FEET |
ccf/h (100 cubic feet per hour) |
E_CLD_SM_UOM_US_GALLON |
US gl/h (US Gallons per hour) |
E_CLD_SM_UOM_IMPERIAL_GALLON |
Imperial gl/h (Imperial Gallons per hour) |
E_CLD_SM_UOM_BTU |
BTU/h (British Thermal Units per hour) |
E_CLD_SM_UOM_LITERS |
l/h (litres per hour) |
E_CLD_SM_UOM_KPA_GAUGE |
kPA (kiloPascal) gauge |
E_CLD_SM_UOM_KPA_ABSOLUTE |
kPA (kiloPascal) absolute |
BCD Values |
|
E_CLD_SM_UOM_KILO_WATTS_BCD |
kW (kiloWatts) |
E_CLD_SM_UOM_CUBIC_METER_BCD |
m3/h (cubic metres per hour) |
E_CLD_SM_UOM_CUBIC_FEET_BCD |
ft3/h (cubic feet per hour) |
E_CLD_SM_UOM_100_CUBIC_FEET_BCD |
ccf/h (100 cubic feet per hour) |
E_CLD_SM_UOM_US_GALLON_BCD |
US gl/h (US Gallons per hour) |
E_CLD_SM_UOM_IMPERIAL_GALLON_BCD |
Imperial gl/h (Imperial Gallons per hour) |
E_CLD_SM_UOM_BTU_BCD |
BTU/h (British Thermal Units per hour) |
E_CLD_SM_UOM_LITERS_BCD |
l/h (litres per hour) |
E_CLD_SM_UOM_KPA_GAUGE_BCD |
kPA (kiloPascal) gauge |
E_CLD_SM_UOM_KPA_ABSOLUTE_BCD |
kPA (kiloPascal) absolute |
Parent topic:Enumerations
‘Summation Formatting’ Enumerations
Enumerations for use with the u8SummationFormatting element in the Simple Metering cluster structure u8SummationFormatting are provided as #defines. The enumerations allow the following formatting information to be extracted from the u8SummationFormatting bitmap:
Enumeration |
Description |
|---|---|
E_CLD_SM_FORMATTING_DIGITS_TO_RIGHT_OF_DP_LS_BIT |
Position of least significant bit of bit-field indicating number of digits to right of decimal point |
E_CLD_SM_FORMATTING_DIGITS_TO_RIGHT_OF_DP_NUMBER_OF_BITS |
Number of bits in bit-field indicating number of digits to right of decimal point |
E_CLD_SM_FORMATTING_DIGITS_TO_RIGHT_OF_DP_MASK |
Bit-mask used to extract number of digits to right of decimal point |
E_CLD_SM_FORMATTING_DIGITS_TO_LEFT_OF_DP_LS_BIT |
Position of least significant bit of bit-field indicating number of digits to left of decimal point |
E_CLD_SM_FORMATTING_DIGITS_TO_LEFT_OF_DP_NUMBER_OF_BITS |
Number of bits in bit-field indicating number of digits to left of decimal point |
E_CLD_SM_FORMATTING_DIGITS_TO_LEFT_OF_DP_MASK |
Bit-mask used to extract number of digits to left of decimal point |
E_CLD_SM_FORMATTING_SUPPRESS_LEADING_ZEROS_BIT |
Bit-mask used to extract bit indicating whether lead-ing zeros will be suppressed |
The following are examples of the use of the above enumerations.
Extracting the number of digits to the right of the decimal point:
u8BitsToRight = (u8SummationFormatting & E_CLD_SM_FORMATTING_DIGITS_TO_RIGHT_OF_DP_MASK)
>> E_CLD_SM_FORMATTING_DIGITS_TO_RIGHT_OF_DP_LS_BIT
Extracting the number of digits to the left of the decimal point:
u8BitsToLeft = (u8SummationFormatting & E_CLD_SM_FORMATTING_DIGITS_TO_LEFT_OF_DP_MASK)
>> E_CLD_SM_FORMATTING_DIGITS_TO_LEFT_OF_DP_LS_BIT
Determining whether leading zeros will be suppressed:
bSuppressZeros = !((u8SummationFormatting & E_CLD_SM_FORMATTING_SUPPRESS_LEADING_ZEROS_BIT) == 0)
Parent topic:Enumerations
‘Supply Direction’ Enumerations
The following enumerations are used to indicate the direction of supply.
typedef enum PACK
{
E_CLD_SM_CONSUMPTION_DELIVERED,
E_CLD_SM_CONSUMPTION_RECEIVED
}teSM_IntervalChannel;
The above enumerations are detailed in the table below.
Enumeration |
Description |
|---|---|
E_CLD_SM_CONSUMPTION_DELIVERED |
Specifies that the supply is from the customer to the utility company (in cases where the customer generates their own supply) |
E_CLD_SM_CONSUMPTION_RECEIVED |
Specifies that the supply is from the utility company to the customer |
Parent topic:Enumerations
‘Metering Device Type’ Enumerations
The following enumerations are used to set the eMeteringDeviceType element in the Simple Metering cluster structure tsSE_SimpleMetering.
typedef enum PACK
{
E_CLD_SM_MDT_ELECTRIC = 0x00,
E_CLD_SM_MDT_GAS,
E_CLD_SM_MDT_WATER,
E_CLD_SM_MDT_THERMAL, /* Deprecated */
E_CLD_SM_MDT_PRESSURE,
E_CLD_SM_MDT_HEAT,
E_CLD_SM_MDT_COOLING,
E_CLD_SM_MDT_GAS_MIRRORED = 0x80,
E_CLD_SM_MDT_WATER_MIRRORED,
E_CLD_SM_MDT_THERMAL_MIRRORED,
E_CLD_SM_MDT_PRESSURE_MIRRORED,
E_CLD_SM_MDT_HEAT_MIRRORED,
E_CLD_SM_MDT_COOLING_MIRRORED,
} teCLD_SM_MeteringDeviceType;
The above enumerations are detailed in the table below.
Enumeration |
Description |
|---|---|
E_CLD_SM_MDT_ELECTRIC |
Electric Meter |
E_CLD_SM_MDT_GAS |
Gas Meter |
E_CLD_SM_MDT_WATER |
Water Meter |
E_CLD_SM_MDT_THERMAL |
Thermal Meter (deprecated) |
E_CLD_SM_MDT_PRESSURE |
Pressure Meter |
E_CLD_SM_MDT_HEAT |
Heat Meter |
E_CLD_SM_MDT_COOLING |
Cooling Meter |
E_CLD_SM_MDT_GAS_MIRRORED |
Mirrored Gas Meter |
E_CLD_SM_MDT_WATER_MIRRORED |
Mirrored Water Meter |
E_CLD_SM_MDT_THERMAL_MIRRORED |
Mirrored Thermal Meter (deprecated) |
E_CLD_SM_MDT_PRESSURE_MIRRORED |
Mirrored Pressure Meter |
E_CLD_SM_MDT_HEAT_MIRRORED |
Mirrored Heat Meter |
E_CLD_SM_MDT_COOLING_MIRRORED |
Mirrored Cooling Meter |
Parent topic:Enumerations
‘Simple Metering Event’ Enumerations
The event types generated by the Simple Metering cluster are enumerated in the teSM_CallBackEventType structure below:
typedef enum PACK
{
E_CLD_SM_CLIENT_RECEIVED_COMMAND,
E_CLD_SM_SERVER_RECEIVED_COMMAND,
E_CLD_SM_FAST_POLLING_TIMER_EXPIRED
}teSM_CallBackEventType;
The above event types are described in the table below.
Event Type Enumeration |
Description |
|---|---|
E_CLD_SM_CLIENT_RECEIVED_COMMAND |
Generated on a cluster client when a command is received from the server |
E_CLD_SM_SERVER_RECEIVED_COMMAND |
Generated on the cluster server when a command is received from a client |
E_CLD_SM_FAST_POLLING_TIMER_EXPIRED |
Generated on the cluster server when the end-time of a fast polling episode is reached (for future use) |
Parent topic:Enumerations
‘Server Command’ Enumerations
The comands issued by a Simple Metering cluster server and received by a client are enumerated in the teSM_ClusterServerCommands structure below:
typedef enum PACK
{
E_CLD_SM_GET_PROFILE_RESPONSE,
E_CLD_SM_REQUEST_MIRROR,
E_CLD_SM_REMOVE_MIRROR,
E_CLD_SM_REQUEST_FAST_POLL_MODE_RESPONSE,
E_CLD_SM_CLIENT_ERROR
}teSM_ClusterServerCommands;
Command Enumeration |
Description |
|---|---|
E_CLD_SM_GET_PROFILE_RESPONSE |
Response to ‘Get Profile’ request - content of response is contained in the structure |
E_CLD_SM_REQUEST_MIRROR |
An ‘Add Mirror’ request |
E_CLD_SM_REMOVE_MIRROR |
A ‘Remove Mirror’ request |
E_CLD_SM_REQUEST_FAST_POLL_MODE_-RESPONSE |
Response to ‘Fast Polling’ request (for future use) |
E_CLD_SM_CLIENT_ERROR |
Error condition - content of error is contained in the structure |
Parent topic:Enumerations
‘Client Command’ Enumerations
The comands issued by a Simple Metering cluster client and received by the server are enumerated in the teSM_ClusterClientCommands structure below:
typedef enum PACK
{
E_CLD_SM_GET_PROFILE,
E_CLD_SM_REQUEST_MIRROR_RESPONSE,
E_CLD_SM_MIRROR_REMOVED,
E_CLD_SM_REQUEST_FAST_POLL_MODE,
E_CLD_SM_SERVER_ERROR
}teSM_ClusterClientCommands;
Command Enumeration |
Description |
|---|---|
E_CLD_SM_GET_PROFILE |
A ‘Get Profile’ request - content of request is contained in the structure |
E_CLD_SM_REQUEST_MIRROR_RESPONSE |
Response to ‘Add Mirror’ request - content of response is contained in the structure |
E_CLD_SM_MIRROR_REMOVED |
Response to ‘Remove Mirror’ request - content of response is contained in the structure |
E_CLD_SM_REQUEST_FAST_POLL_MODE |
A ‘Fast Polling’ request (for future use) |
E_CLD_SM_SERVER_ERROR |
Error condition - content of error is contained in the structure |
Parent topic:Enumerations
‘Consumption Interval’ Enumerations
The following enumerations define the possible time-intervals for the consumption data captured in the ‘Get Profile’ feature.
typedef enum PACK
{
E_CLD_SM_TIME_FRAME_DAILY,
E_CLD_SM_TIME_FRAME_60MINS,
E_CLD_SM_TIME_FRAME_30MINS,
E_CLD_SM_TIME_FRAME_15MINS,
E_CLD_SM_TIME_FRAME_10MINS,
E_CLD_SM_TIME_FRAME_7_5MINS,
E_CLD_SM_TIME_FRAME_5MINS,
E_CLD_SM_TIME_FRAME_2_5MINS
}teSM_TimeFrame;
Time Frame Enumeration |
Time Interval |
|---|---|
E_CLD_SM_TIME_FRAME_DAILY |
One day |
E_CLD_SM_TIME_FRAME_60MINS |
60 minutes |
E_CLD_SM_TIME_FRAME_30MINS |
30 minutes |
E_CLD_SM_TIME_FRAME_15MINS |
15 minutes |
E_CLD_SM_TIME_FRAME_10MINS |
10 minutes |
E_CLD_SM_TIME_FRAME_7_5MINS |
7.5 minutes |
E_CLD_SM_TIME_FRAME_5MINS |
5 minutes |
E_CLD_SM_TIME_FRAME_2_5MINS |
2.5 minutes |
Parent topic:Enumerations
‘Simple Metering Status’ Enumerations
The following enumerations are used to report status in the Simple Metering cluster.
typedef enum PACK
{
E_CLD_SM_STATUS_SUCCESS,
E_CLD_SM_STATUS_UNDEFINED_INTERVAL_CHANNEL,
E_CLD_SM_STATUS_INTERVAL_NOT_SUPPORTED,
E_CLD_SM_STATUS_INVALID_END_TIME,
E_CLD_SM_STATUS_MORE_PERIODS_REQUESTED_THAN_SUPPORTED,
E_CLD_SM_STATUS_NO_INTERVALS_AVAILABLE_FOR_REQUESTED_TIME,
E_CLD_SM_STATUS_EP_NOT_AVAILABLE
}teSM_Status;
Status Enumeration |
Description |
|---|---|
E_CLD_SM_STATUS_SUCCESS |
Success |
E_CLD_SM_STATUS_UNDEFINED_INTERVAL_CHANNEL |
Undefined |
E_CLD_SM_STATUS_INTERVAL_NOT_SUPPORTED |
Unsupported consumption data specifed through |
E_CLD_SM_STATUS_INVALID_END_TIME |
Invalid end-time specified in ‘Get Profile’ request (Section 42.11.8) |
E_CLD_SM_STATUS_MORE_PERIODS_REQUESTED_THAN_SUPPORTED |
More periods specified in ‘Get Profile’ request than can be returned |
E_CLD_SM_STATUS_NO_INTERVALS_AVAILABLE_FOR_REQUESTED_TIME |
No intervals available for the end-time specified in ‘Get Profile’ request |
E_CLD_SM_STATUS_EP_NOT_AVAILABLE |
Specified endpoint not available |
Parent topic:Enumerations
Parent topic:Simple Metering Cluster