Sinopé TH1400ZB

ModelTH1400ZB
VendorSinopé
DescriptionZigbee low volt thermostat
Exposesclimate (occupied_heating_setpoint, unoccupied_heating_setpoint, local_temperature, system_mode, pi_heating_demand, running_state), max_heat_setpoint_limit, min_heat_setpoint_limit, thermostat_occupancy, second_display_mode, thermostat_outdoor_temperature, outdoor_temperature_timeout, enable_outdoor_temperature, temperature_display_mode, time_format, backlight_auto_dim, keypad_lockout, connected_load, floor_control_mode, floor_max_heat_setpoint, floor_min_heat_setpoint, ambiant_max_heat_setpoint, floor_temperature_sensor, main_cycle_output, aux_cycle_output, pump_protection, aux_connected_load, linkquality
PictureSinopé TH1400ZB

Notes

Setting outdoor temperature

To set the outdoor temperature (value below the Out label on the thermostat display), 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_Temprature'
  alias: 'Publish outside temperature'
  description: 'Automatically Publish the outdoor temperature to thermostats'
  mode: single
  trigger:
  - platform: state
    entity_id: sensor.<OUTDOOR_TEMPERATURE_SENSOR_NAME>
  condition: []
  action:
  - service: mqtt.publish
    data:
      topic: zigbee2mqtt/<FRIENDLY_NAME>/set/thermostat_outdoor_temperature
      payload_template: "{{ states('sensor.<OUTDOOR_TEMPERATURE_SENSOR_NAME>') }}"

Setting outdoor temperature

To enable time you need to send a blank message to the following MQTT topic:

zigbee2mqtt/<FRIENDLY_NAME>/set/thermostat_time

Every time the above message is sent, Zigbee2MQTT will calculate the current time and send it to the thermostat.

If the thermostat loses power, you need to do this again. For Home Assistant users: if you want to avoid remembering to do this, you can add the following action to your Auto_Publish_Outdoor_Temperature automation (noted above).

  - service: mqtt.publish
    data:
      topic: zigbee2mqtt/<FRIENDLY_NAME>/set/thermostat_time
      payload: ''

Options

How to use device type specific configuration

  • thermostat_unit: Controls the temperature unit of the thermostat (default celsius). The value must be one of celsius, fahrenheit

  • legacy: Set to false to disable the legacy integration (highly recommended), will change structure of the published payload (default true). The value must be true or false

Exposes

Climate

This climate device supports the following features: occupied_heating_setpoint, unoccupied_heating_setpoint, local_temperature, system_mode, pi_heating_demand, running_state.

  • occupied_heating_setpoint: Temperature setpoint. To control publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"occupied_heating_setpoint": VALUE} where VALUE is the °C between 5 and 36. To read send a message to zigbee2mqtt/FRIENDLY_NAME/get with payload {"occupied_heating_setpoint": ""}.
  • pi_heating_demand: Position of the valve (= demanded heat) where 0% is fully closed and 100% is fully open. To control publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"pi_heating_demand": VALUE} where VALUE is the % between 0 and 100. Reading (/get) this attribute is not possible.
  • local_temperature: Current temperature measured on the device (in °C). To read send a message to zigbee2mqtt/FRIENDLY_NAME/get with payload {"local_temperature": ""}.
  • system_mode: Mode of this device. To control publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"system_mode": VALUE} where VALUE is one of: off, heat. To read send a message to zigbee2mqtt/FRIENDLY_NAME/get with payload {"system_mode": ""}.
  • running_state: The current running state. Possible values are: idle, heat. Reading (/get) this attribute is not possible.

Max heat setpoint limit (numeric)

Maximum Heating set point limit. Value can be found in the published state on the max_heat_setpoint_limit property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"max_heat_setpoint_limit": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"max_heat_setpoint_limit": NEW_VALUE}. The minimal value is 5 and the maximum value is 36. The unit of this value is °C.

Min heat setpoint limit (numeric)

Minimum Heating set point limit. Value can be found in the published state on the min_heat_setpoint_limit property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"min_heat_setpoint_limit": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"min_heat_setpoint_limit": NEW_VALUE}. The minimal value is 5 and the maximum value is 36. The unit of this value is °C.

Thermostat occupancy (enum)

Occupancy state of the thermostat. Value can be found in the published state on the thermostat_occupancy property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"thermostat_occupancy": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"thermostat_occupancy": NEW_VALUE}. The possible values are: unoccupied, occupied.

Second display mode (enum)

Displays the outdoor temperature and then returns to the set point in "auto" mode, or clears in "outdoor temp" mode when expired.. Value can be found in the published state on the second_display_mode property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"second_display_mode": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"second_display_mode": NEW_VALUE}. The possible values are: auto, setpoint, outdoor temp.

Thermostat outdoor temperature (numeric)

Outdoor temperature for the secondary display. Value can be found in the published state on the thermostat_outdoor_temperature property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"thermostat_outdoor_temperature": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"thermostat_outdoor_temperature": NEW_VALUE}. The minimal value is -99.5 and the maximum value is 99.5. The unit of this value is °C.

Outdoor temperature timeout (numeric)

Time in seconds after which the outdoor temperature is considered to have expired. Value can be found in the published state on the outdoor_temperature_timeout property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"outdoor_temperature_timeout": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"outdoor_temperature_timeout": NEW_VALUE}. The minimal value is 30 and the maximum value is 64800. The unit of this value is s. Besides the numeric values the following values are accepted: 15 min, 30 min, 1 hour.

Enable outdoor temperature (binary)

DEPRECATED: Use second_display_mode or control via outdoor_temperature_timeout. Value can be found in the published state on the enable_outdoor_temperature property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"enable_outdoor_temperature": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"enable_outdoor_temperature": NEW_VALUE}. If value equals ON enable outdoor temperature is ON, if OFF OFF.

Temperature display mode (enum)

The temperature format displayed on the thermostat screen. Value can be found in the published state on the temperature_display_mode property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"temperature_display_mode": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"temperature_display_mode": NEW_VALUE}. The possible values are: celsius, fahrenheit.

Time format (enum)

The time format featured on the thermostat display. Value can be found in the published state on the time_format property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"time_format": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"time_format": NEW_VALUE}. The possible values are: 24h, 12h.

Backlight auto dim (enum)

The display backlight behavior. Value can be found in the published state on the backlight_auto_dim property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"backlight_auto_dim": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"backlight_auto_dim": NEW_VALUE}. The possible values are: on_demand, sensing.

Keypad lockout (enum)

Enables or disables the device’s buttons. 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.

Connected load (numeric)

The power in watts of the electrical load connected to the device. Value can be found in the published state on the connected_load property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"connected_load": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"connected_load": NEW_VALUE}. The minimal value is 1 and the maximum value is 20000. The unit of this value is W.

Floor control mode (enum)

Control mode using floor or ambient temperature. Value can be found in the published state on the floor_control_mode property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"floor_control_mode": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"floor_control_mode": NEW_VALUE}. The possible values are: ambiant, floor.

Floor max heat setpoint (numeric)

The maximum floor temperature limit of the floor when in ambient control mode. Value can be found in the published state on the floor_max_heat_setpoint property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"floor_max_heat_setpoint": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"floor_max_heat_setpoint": NEW_VALUE}. The minimal value is 7 and the maximum value is 36. The unit of this value is °C. Besides the numeric values the following values are accepted: off.

Floor min heat setpoint (numeric)

The minimum floor temperature limit of the floor when in ambient control mode. Value can be found in the published state on the floor_min_heat_setpoint property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"floor_min_heat_setpoint": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"floor_min_heat_setpoint": NEW_VALUE}. The minimal value is 5 and the maximum value is 34. The unit of this value is °C. Besides the numeric values the following values are accepted: off.

Ambiant max heat setpoint (numeric)

The maximum ambient temperature limit when in floor control mode. Value can be found in the published state on the ambiant_max_heat_setpoint property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"ambiant_max_heat_setpoint": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"ambiant_max_heat_setpoint": NEW_VALUE}. The minimal value is 5 and the maximum value is 36. The unit of this value is °C. Besides the numeric values the following values are accepted: off.

Floor temperature sensor (enum)

The floor sensor. Value can be found in the published state on the floor_temperature_sensor property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"floor_temperature_sensor": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"floor_temperature_sensor": NEW_VALUE}. The possible values are: 10k, 12k.

Main cycle output (enum)

The length of the control cycle according to the type of load connected to the thermostats. Value can be found in the published state on the main_cycle_output property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"main_cycle_output": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"main_cycle_output": NEW_VALUE}. The possible values are: 15_sec, 5_min, 10_min, 15_min, 20_min, 30_min.

Aux cycle output (enum)

The length of the control cycle according to the type of auxiliary load connected to the thermostats. Value can be found in the published state on the aux_cycle_output property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"aux_cycle_output": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"aux_cycle_output": NEW_VALUE}. The possible values are: off, 15_sec, 5_min, 10_min, 15_min, 20_min, 30_min.

Pump protection (binary)

This function prevents the seizure of the pump. Value can be found in the published state on the pump_protection property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"pump_protection": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"pump_protection": NEW_VALUE}. If value equals ON pump protection is ON, if OFF OFF.

Aux connected load (numeric)

The power in watts of the heater connected to the auxiliary output of the thermostat. Value can be found in the published state on the aux_connected_load property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"aux_connected_load": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"aux_connected_load": NEW_VALUE}. The minimal value is 0 and the maximum value is 20000. The unit of this value is W.

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.