This indicates a specific stage of an ESA’s operation.

MatterSpecification.v13.Cluster § 9.2.7.11

interface Slot {
    costs?: TypeFromFields<{
        costType: FieldType<DeviceEnergyManagement.CostType>;
        currency: OptionalFieldType<number>;
        decimalPoints: FieldType<number>;
        value: FieldType<number>;
    }>[];
    defaultDuration: number;
    elapsedSlotTime: number;
    manufacturerEsaState?: number;
    maxDuration: number;
    maxDurationAdjustment?: number;
    maxPauseDuration?: number;
    maxPower?: number | bigint;
    maxPowerAdjustment?: number | bigint;
    minDuration: number;
    minDurationAdjustment?: number;
    minPauseDuration?: number;
    minPower?: number | bigint;
    minPowerAdjustment?: number | bigint;
    nominalEnergy?: number | bigint;
    nominalPower?: number | bigint;
    remainingSlotTime: number;
    slotIsPauseable?: boolean;
}

Hierarchy (view full)

Properties

costs?: TypeFromFields<{
    costType: FieldType<DeviceEnergyManagement.CostType>;
    currency: OptionalFieldType<number>;
    decimalPoints: FieldType<number>;
    value: FieldType<number>;
}>[]

This field shall indicate the current estimated cost for operating.

For example, if the device has access to an Energy pricing server it may be able to use the tariff to estimate the cost of energy for this slot in the power forecast.

When an Energy Management System requests a change in the schedule, then the device may suggest a change in the cost as a result of shifting its energy. This can allow a demand side response service to be informed of the relative cost to use energy at a different time.

The Costs field is a list of CostStruct structures which allows multiple CostTypeEnum and Values to be shared by the energy appliance. These could be based on GHG emissions, comfort value for the consumer etc.

For example, comfort could be expressed in abstract units or in currency. A water heater that is heated earlier in the day is likely to lose some of its heat before it is needed, which could require a top-up heating event to occur later in the day (which may incur additional cost).

If the ESA cannot calculate its cost for any reason (such as losing its connection to a Price server) it may omit this field. This is treated as extra meta data that an EMS may use to optimize a system.

MatterSpecification.v13.Cluster § 9.2.7.11.14

defaultDuration: number

This field shall indicate the expected time (in seconds) that the appliance expects to be in this slot for.

MatterSpecification.v13.Cluster § 9.2.7.11.3

elapsedSlotTime: number

This field shall indicate the time (in seconds) that has already elapsed whilst in this slot. If the slot has not yet been started, then it shall be 0. Once the slot has been completed, then this reflects how much time was spent in this slot.

When subscribed to, a change in this field value shall NOT cause the Forecast attribute to be updated since this value may change every 1 second.

When the Forecast attribute is read, then this value shall be the most recent value.

MatterSpecification.v13.Cluster § 9.2.7.11.4

manufacturerEsaState?: number

This field shall indicate a manufacturer defined value indicating the state of the ESA.

This may be used by an observing EMS which also has access to the metering data to ascertain the typical power drawn when the ESA is in a manufacturer defined state.

Some appliances, such as smart thermostats, may not know how much power is being drawn by the HVAC system, but do know what they have asked the HVAC system to do.

Manufacturers can use this value to indicate a variety of states in an unspecified way. For example, they may choose to use values between 0-100 as a percentage of compressor modulation, or could use these values as Enum states meaning heating with fan, heating without fan etc.

NOTE An ESA shall always use the same value to represent the same operating state.

By providing this information a smart EMS may be able to learn the observed power draw when the ESA is put into a specific state. It can potentially then use the information in the PowerForecastReporting data to predict the power draw from the appliance and potentially ask it to modify its timing via one of the adjustment request commands, or adjust other ESAs power to compensate.

MatterSpecification.v13.Cluster § 9.2.7.11.9

maxDuration: number

This field shall indicate the maximum time (in seconds) that the appliance expects to be in this slot for.

MatterSpecification.v13.Cluster § 9.2.7.11.2

maxDurationAdjustment?: number

This field shall indicate the maximum time, in seconds, that the slot can be requested to extended to.

For example, if the slot indicates a NominalPower of 0W (indicating it is expecting to be off), this allows an ESA to specify the maximum time it could be switched on for. This may allow a battery or water heater to indicate the maximum duration that it can charge for before becoming full. In the case of a battery inverter which can be discharged, it may equally indicate the maximum time the battery could be discharged for (at the MaxPowerAdjustment power level).

MatterSpecification.v13.Cluster § 9.2.7.11.18

maxPauseDuration?: number

This field shall indicate the longest period that the slot can be paused for.

MatterSpecification.v13.Cluster § 9.2.7.11.8

maxPower?: number | bigint

This field shall indicate the maximum power that the appliance expects to use during this slot. (e.g. during a ramp up it may be 0W). This field ignores the effects of short-lived inrush currents.

Some appliances (e.g. battery inverters which can charge and discharge) may have a negative power.

MatterSpecification.v13.Cluster § 9.2.7.11.12

maxPowerAdjustment?: number | bigint

This field shall indicate the maximum power that the appliance can be requested to use.

For example, an EVSE may be limited by its electrical supply to 32A which would be ~7.6kW in EU markets. If the slot indicates a NominalPower of 0W (indicating it is expecting to be off), this allows an ESA to indicate it could be switched on to charge, but this would be the maximum power limit it can be set to.

MatterSpecification.v13.Cluster § 9.2.7.11.16

minDuration: number

This field shall indicate the minimum time (in seconds) that the appliance expects to be in this slot for.

MatterSpecification.v13.Cluster § 9.2.7.11.1

minDurationAdjustment?: number

This field shall indicate the minimum time, in seconds, that the slot can be requested to shortened to.

For example, if the slot indicates a NominalPower of 0W (indicating it is expecting to be off), this would allow an ESA to specify the minimum time it could be switched on for. This is to help protect the appliance from being damaged by short cycling times.

For example, a heat pump compressor may have a minimum cycle time of order a few minutes.

MatterSpecification.v13.Cluster § 9.2.7.11.17

minPauseDuration?: number

This field shall indicate the shortest period that the slot can be paused for. This can be set to avoid controllers trying to pause ESAs for short periods and then resuming operation in a cyclic fashion which may damage or cause excess energy to be consumed with restarting of an operation.

MatterSpecification.v13.Cluster § 9.2.7.11.7

minPower?: number | bigint

This field shall indicate the lowest power that the appliance expects to use during this slot. (e.g. during a ramp up it may be 0W).

Some appliances (e.g. battery inverters which can charge and discharge) may have a negative power.

MatterSpecification.v13.Cluster § 9.2.7.11.11

minPowerAdjustment?: number | bigint

This field shall indicate the minimum power that the appliance can be requested to use.

For example, some EVSEs cannot be switched on to charge below 6A which may equate to ~1.3kW in EU markets. If the slot indicates a NominalPower of 0W (indicating it is expecting to be off), this allows an ESA to indicate it could be switched on to charge, but this would be the minimum power limit it can be set to.

MatterSpecification.v13.Cluster § 9.2.7.11.15

nominalEnergy?: number | bigint

This field shall indicate the expected energy that the appliance expects to use or produce during this slot.

Some appliances (e.g. battery inverters which can charge and discharge) may have a negative energy.

MatterSpecification.v13.Cluster § 9.2.7.11.13

nominalPower?: number | bigint

This field shall indicate the expected power that the appliance will use during this slot. It may be considered the average value over the slot, and some variation from this would be expected (for example, as it is ramping up).

MatterSpecification.v13.Cluster § 9.2.7.11.10

remainingSlotTime: number

This field shall indicate the time (in seconds) that is estimated to be remaining.

Note that it may not align to the DefaultDuration - ElapsedSlotTime since an appliance may have revised its planned operation based on conditions.

When subscribed to, a change in this field value shall NOT cause the Forecast attribute to be updated, since this value may change every 1 second.

Note that if the ESA is currently paused, then this value shall not change.

When the Forecast attribute is read, then this value shall be the most recent value.

MatterSpecification.v13.Cluster § 9.2.7.11.5

slotIsPauseable?: boolean