Stelpro SMT402
Model | SMT402 |
Vendor | Stelpro |
Description | Maestro, line-voltage thermostat |
Exposes | local_temperature, keypad_lockout, humidity, climate (occupied_heating_setpoint, local_temperature, system_mode, running_state), linkquality |
Picture | ![]() |
Notes
Setting outdoor temperature
To set outdoor temperature, you need to send the value to the following MQTT topic:
zigbee2mqtt/<FRIENDLY_NAME>/set/thermostat_outdoor_temperature
If you want to automate the publishing of the outdoor temperature using Home Assistant, you may create an automation like this:
- id: auto_publish_outdoor_temp
description: publish the outdoor temperature to Stelpro thermostat
trigger:
- platform: state
entity_id: sensor.outdoor_sensor_temperature
condition: []
action:
- service: mqtt.publish
data_template:
payload: '{{ states(trigger.entity_id) }}'
topic: 'zigbee2mqtt/THERMOSTAT_FRIENDLY_NAME/set/thermostat_outdoor_temperature'
IMPORTANT: The outdoor temperature need to be refreshed at least each 4 hours, or the EXT
display will be cleared on the thermostat.
Options
thermostat_unit
: Controls the temperature unit of the thermostat (default celsius). The value must be one ofcelsius
,fahrenheit
legacy
: Set to false to disable the legacy integration (highly recommended), will change structure of the published payload (default true). The value must betrue
orfalse
humidity_precision
: Number of digits after decimal point for humidity, takes into effect on next report of device. The value must be a number with a minimum value of0
and with a with a maximum value of3
humidity_calibration
: Calibrates the humidity value (absolute offset), takes into effect on next report of device. The value must be a number.
Exposes
Local_temperature (numeric)
Current temperature measured on the device. Value can be found in the published state on the local_temperature
property. To read (/get
) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get
with payload {"local_temperature": ""}
. It's not possible to write (/set
) this value. The unit of this value is °C
.
Keypad_lockout (enum)
Enables/disables physical input on the device. Value can be found in the published state on the keypad_lockout
property. To read (/get
) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get
with payload {"keypad_lockout": ""}
. To write (/set
) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set
with payload {"keypad_lockout": NEW_VALUE}
. The possible values are: unlock
, lock1
, lock2
.
Humidity (numeric)
Measured relative humidity. Value can be found in the published state on the humidity
property. It's not possible to read (/get
) or write (/set
) this value. The unit of this value is %
.
Climate
This climate device supports the following features: occupied_heating_setpoint
, local_temperature
, system_mode
, running_state
.
occupied_heating_setpoint
: Temperature setpoint. To control publish a message to topiczigbee2mqtt/FRIENDLY_NAME/set
with payload{"occupied_heating_setpoint": VALUE}
whereVALUE
is the °C between5
and30
. To read send a message tozigbee2mqtt/FRIENDLY_NAME/get
with payload{"occupied_heating_setpoint": ""}
.local_temperature
: Current temperature measured on the device (in °C). To read send a message tozigbee2mqtt/FRIENDLY_NAME/get
with payload{"local_temperature": ""}
.system_mode
: Mode of this device. To control publish a message to topiczigbee2mqtt/FRIENDLY_NAME/set
with payload{"system_mode": VALUE}
whereVALUE
is one of:off
,auto
,heat
. To read send a message tozigbee2mqtt/FRIENDLY_NAME/get
with payload{"system_mode": ""}
.running_state
: The current running state. Possible values are:idle
,heat
. To read send a message tozigbee2mqtt/FRIENDLY_NAME/get
with payload{"running_state": ""}
.
Linkquality (numeric)
Link quality (signal strength). Value can be found in the published state on the linkquality
property. It's not possible to read (/get
) or write (/set
) this value. The minimal value is 0
and the maximum value is 255
. The unit of this value is lqi
.