The Thermostat cluster (0x0201) is a Matter cluster that Controls heating and cooling systems with setpoints, modes, and schedules for climate control.. It defines 12 commands and 71 attributes and is mandatory for 5 device types.
Thermostat 0x0201
Controls heating and cooling systems with setpoints, modes, and schedules for climate control.
Spec History
This cluster's ClusterRevision across the Matter releases it has shipped in. Click a version to inspect the cluster as it existed in that release.
Attributes 71
Commands 12
Features 12
| Code | Name | Type | Flags |
|---|---|---|---|
| 0x0000 |
LocalTemperature
min -27315 · nullable
|
temperature | |
| 0x0001 |
OutdoorTemperature
min -27315 · nullable
|
temperature | Optional |
| 0x0002 |
Occupancy
max 0x01
|
OccupancyBitmap | Optional |
| 0x0003 |
AbsMinHeatSetpointLimit
default 700
|
temperature | Optional |
| 0x0004 |
AbsMaxHeatSetpointLimit
default 3000
|
temperature | Optional |
| 0x0005 |
AbsMinCoolSetpointLimit
default 1600
|
temperature | Optional |
| 0x0006 |
AbsMaxCoolSetpointLimit
default 3200
|
temperature | Optional |
| 0x0007 |
PICoolingDemand
max 100
|
int8u | Optional |
| 0x0008 |
PIHeatingDemand
max 100
|
int8u | Optional |
| 0x0009 |
HVACSystemTypeConfiguration
max 0x3F · default 0x00
|
HVACSystemTypeBitmap | Writable Optional write: manage |
| 0x0010 |
LocalTemperatureCalibration
min -127 · default 0x00
|
int8s | Writable Optional write: manage |
| 0x0011 |
OccupiedCoolingSetpoint
min -27315 · default 2600
|
temperature | Writable Optional |
| 0x0012 |
OccupiedHeatingSetpoint
min -27315 · default 2000
|
temperature | Writable Optional |
| 0x0013 |
UnoccupiedCoolingSetpoint
min -27315 · default 2600
|
temperature | Writable Optional |
| 0x0014 |
UnoccupiedHeatingSetpoint
min -27315 · default 2000
|
temperature | Writable Optional |
| 0x0015 |
MinHeatSetpointLimit
min -27315 · default 700
|
temperature | Writable Optional write: manage |
| 0x0016 |
MaxHeatSetpointLimit
min -27315 · default 3000
|
temperature | Writable Optional write: manage |
| 0x0017 |
MinCoolSetpointLimit
min -27315 · default 1600
|
temperature | Writable Optional write: manage |
| 0x0018 |
MaxCoolSetpointLimit
min -27315 · default 3200
|
temperature | Writable Optional write: manage |
| 0x0019 |
MinSetpointDeadBand
min 0 · default 20
|
int8s | Writable Optional write: manage |
| 0x001A |
RemoteSensing
max 0x7 · default 0
|
RemoteSensingBitmap | Writable Optional write: manage |
| 0x001B |
ControlSequenceOfOperation
max 0x5
|
ControlSequenceOfOperationEnum | Writable write: manage |
| 0x001C |
SystemMode
max 0x9
|
SystemModeEnum | Writable write: manage |
| 0x001E |
ThermostatRunningMode
max 0x4 · default 0
|
ThermostatRunningModeEnum | Optional |
| 0x0020 |
StartOfWeek
max 0x6
|
StartOfWeekEnum | Optional |
| 0x0021 |
NumberOfWeeklyTransitions
default 0
|
int8u | Optional |
| 0x0022 |
NumberOfDailyTransitions
default 0
|
int8u | Optional |
| 0x0023 |
TemperatureSetpointHold
max 0x1 · default 0
|
TemperatureSetpointHoldEnum | Writable Optional write: manage |
| 0x0024 |
TemperatureSetpointHoldDuration
1..1440 · nullable
|
int16u | Writable Optional write: manage |
| 0x0025 |
ThermostatProgrammingOperationMode
max 0x7 · default 0
|
ProgrammingOperationModeBitmap | Writable Optional write: manage |
| 0x0029 |
ThermostatRunningState
max 0x7F
|
RelayStateBitmap | Optional |
| 0x0030 |
SetpointChangeSource
max 0x2 · default 0
|
SetpointChangeSourceEnum | Optional |
| 0x0031 |
SetpointChangeAmount
nullable
|
int16s | Optional |
| 0x0032 | SetpointChangeSourceTimestamp | epoch_s | Optional |
| 0x0034 |
OccupiedSetback
nullable
|
int8u | Writable Optional write: manage |
| 0x0035 |
OccupiedSetbackMin
nullable
|
int8u | Optional |
| 0x0036 |
OccupiedSetbackMax
nullable
|
int8u | Optional |
| 0x0037 |
UnoccupiedSetback
nullable
|
int8u | Writable Optional write: manage |
| 0x0038 |
UnoccupiedSetbackMin
nullable
|
int8u | Optional |
| 0x0039 |
UnoccupiedSetbackMax
nullable
|
int8u | Optional |
| 0x003A |
EmergencyHeatDelta
default 0xFF
|
int8u | Writable Optional write: manage |
| 0x0040 |
ACType
max 0x4 · default 0
|
ACTypeEnum | Writable Optional write: manage |
| 0x0041 |
ACCapacity
default 0
|
int16u | Writable Optional write: manage |
| 0x0042 |
ACRefrigerantType
max 0x3 · default 0
|
ACRefrigerantTypeEnum | Writable Optional write: manage |
| 0x0043 |
ACCompressorType
max 0x3 · default 0
|
ACCompressorTypeEnum | Writable Optional write: manage |
| 0x0044 |
ACErrorCode
default 0
|
ACErrorCodeBitmap | Writable Optional write: manage |
| 0x0045 |
ACLouverPosition
max 0x5 · default 0
|
ACLouverPositionEnum | Writable Optional write: manage |
| 0x0046 |
ACCoilTemperature
min -27315 · nullable
|
temperature | Optional |
| 0x0047 |
ACCapacityformat
max 0x00 · default 0
|
ACCapacityFormatEnum | Writable Optional write: manage |
| 0x0048 | PresetTypes | array | Optional |
| 0x0049 | ScheduleTypes | array | Optional |
| 0x004A |
NumberOfPresets
min 1
|
int8u | Optional |
| 0x004B |
NumberOfSchedules
min 1
|
int8u | Optional |
| 0x004C |
NumberOfScheduleTransitions
min 1
|
int8u | Optional |
| 0x004D |
NumberOfScheduleTransitionPerDay
1..254 · nullable
|
int8u | Optional |
| 0x004E |
ActivePresetHandle
nullable
|
octet_string | Optional |
| 0x004F |
ActiveScheduleHandle
nullable
|
octet_string | Optional |
| 0x0050 | Presets | array | Writable Optional write: manage |
| 0x0051 | Schedules | array | Writable Optional write: manage |
| 0x0052 |
SetpointHoldExpiryTimestamp
nullable
|
epoch_s | Optional |
| 0x0053 |
MaxThermostatSuggestions
min 5
|
int8u | Optional |
| 0x0054 | ThermostatSuggestions | array | Optional |
| 0x0055 |
CurrentThermostatSuggestion
nullable
|
ThermostatSuggestionStruct | Optional |
| 0x0056 |
ThermostatSuggestionNotFollowingReason
max 0x00FF · nullable
|
ThermostatSuggestionNotFollowingReasonBitmap | Optional |
| 0x0057 |
CriticalFreezeProtection
default 0
|
boolean | Optional Provisional |
| 0x0058 |
CriticalOverheatProtection
default 0
|
boolean | Optional Provisional |
| 0x0059 | Sensors | array | Optional Provisional |
| 0x005A | AvailableSensors | array | Writable Optional Provisional write: manage |
| 0x005B | EnabledSensors | array | Writable Optional Provisional write: manage |
| 0x005C | NumberOfSensorScheduleTransitions | int8u | Optional Provisional |
| 0x005D | SensorSchedule | array | Writable Optional Provisional write: manage |
| Code | Name | Direction | Parameters |
|---|---|---|---|
| 0x00 |
SetpointRaiseLower
This command will raise or lower the setpoint based on the provided values.
|
client→server |
Mode: SetpointRaiseLowerModeEnum, Amount: int8s |
| 0x00 |
GetWeeklyScheduleResponse
Optional This command has the same payload format as the Set Weekly Schedule.
|
server→client |
NumberOfTransitionsForSequence: int8u, DayOfWeekForSequence: ScheduleDayOfWeekBitmap, ModeForSequence: ScheduleModeBitmap, Transitions: WeeklyScheduleTransitionStruct |
| 0x01 |
SetWeeklySchedule
Optional invoke: manage
This command is used to update the thermostat weekly setpoint schedule from a management system.
|
client→server |
NumberOfTransitionsForSequence: int8u, DayOfWeekForSequence: ScheduleDayOfWeekBitmap, ModeForSequence: ScheduleModeBitmap, Transitions: WeeklyScheduleTransitionStruct |
| 0x02 |
GetWeeklySchedule
Optional The Current Weekly Schedule Command is sent from the server in response to the Get Weekly Schedule Command.
|
client→server |
DaysToReturn: ScheduleDayOfWeekBitmap, ModeToReturn: ScheduleModeBitmap |
| 0x02 |
AddThermostatSuggestionResponse
Optional This command is sent in response to the AddThermostatSuggestion command.
|
server→client |
UniqueID: int8u |
| 0x03 |
ClearWeeklySchedule
Optional invoke: manage
This command is used to clear the weekly schedule.
|
client→server | None |
| 0x05 |
SetActiveScheduleRequest
Optional This command will set the active schedule to the provided schedule handle.
|
client→server |
ScheduleHandle: octet_string |
| 0x06 |
SetActivePresetRequest
Optional This command will set the active preset to the provided preset handle.
|
client→server |
PresetHandle: octet_string |
| 0x07 |
AddThermostatSuggestion
Optional invoke: manage
This command will add a new suggestion based on the specified values.
|
client→server |
PresetHandle: octet_string, EffectiveTime: epoch_s, ExpirationInMinutes: int16u |
| 0x08 |
RemoveThermostatSuggestion
Optional invoke: manage
This command will remove the specified suggestion.
|
client→server |
UniqueID: int8u |
| 0xFD |
AtomicResponse
Optional Returns the status of an atomic write
|
server→client |
StatusCode: status, AttributeStatus: AtomicAttributeStatusStruct, Timeout: int16u |
| 0xFE |
AtomicRequest
Optional Begins, Commits or Cancels an atomic write
|
client→server |
RequestType: AtomicRequestTypeEnum, AttributeRequests: attrib_id, Timeout: int16u |
Heating
(HEAT)
bit 0
Thermostat is capable of managing a heating device
Cooling
(COOL)
bit 1
Thermostat is capable of managing a cooling device
Occupancy
(OCC)
bit 2
Supports Occupied and Unoccupied setpoints
ScheduleConfiguration
(SCH)
bit 3
Supports remote configuration of a weekly schedule of setpoint transitions
Setback
(SB)
bit 4
AutoMode
(AUTO)
bit 5
Supports a System Mode of Auto
LocalTemperatureNotExposed
(LTNE)
bit 6
Thermostat does not expose the LocalTemperature Value in the LocalTemperature attribute
MatterScheduleConfiguration
(MSCH)
bit 7
Supports enhanced schedules
Presets
(PRES)
bit 8
Thermostat supports setpoint presets
Events
(TEVT)
bit 9
Provisional
Thermostat supports events
ThermostatSuggestions
(TSUGGEST)
bit 10
Thermostat supports suggestions
ThermostatSensors
(SENSORS)
bit 11
Provisional
Thermostat supports scheduling sensors
Device Types Using This Cluster
Device types in the Matter spec that reference this cluster
Devices Implementing This Cluster
38 devices in the survey implement this cluster
Aqara Smart Thermostat W400
Aqara
TCL Portable AC
TCL
X8S
Resideo
Warmup 7IE Wifi Thermostat. Cloud White Body with Light Chrome Surround.
Warmup Plc
Matter Thermostat
Matterbridge
TARUIE AC Remote
DUCTECH
Mill Wi-Fi Panel Heater
Mill International AS
Lennox L40 Smart Thermostat
Lennox
Hisense Climate Control
Hisense
WT410-Matter
MIUC
ElitePRO S1100
Resideo
Lennox S40 Smart Thermostat
Lennox
Eve Thermostat
Eve Systems
Lennox S40 Smart Thermostat
Lennox