home-assistant.io/source/_integrations/climate.modbus.markdown
2020-10-21 00:06:03 +02:00

3.2 KiB

title, description, ha_category, ha_release, ha_iot_class, ha_domain
title description ha_category ha_release ha_iot_class ha_domain
Modbus Climate Instructions how to integrate a Modbus thermostat within Home Assistant.
Climate
0.68 Local Polling modbus

The modbus thermostat allows you to use a sensor value (current temperature) and target value (target temperature) from Modbus registers.

Configuration

To use your Modbus thermostat in your installation, add the following to your configuration.yaml file:

# Example configuration.yaml entry
modbus:
  - name: hub1
    type: tcp
    host: IP_ADDRESS
    port: 502

    climates:
      - name: Watlow F4T
        slave: 1
        data_type: uint
        data_count: 1
        scale: 0.1
        offset: 0
        precision: 1
        max_temp: 30
        min_temp: 15
        temp_step: 1
        target_temp_register: 2782
        current_temp_register: 27586

{% configuration %} name: description: Name of the device required: true type: string slave: description: The number of the slave (Optional for tcp and upd Modbus, use 1). required: true type: integer target_temp_register: description: Register number for target temperature (Setpoint). required: true type: integer current_temp_register: description: Register number for current temperature (Process value). required: true type: integer current_temp_register_type: description: Modbus register type (holding, input) for current temperature, default holding. required: false type: string default: holding data_type: description: Response representation (int, uint, float, custom). If float selected, value will converted to IEEE 754 floating point format. required: false type: string default: float structure: description: "If data_type is custom specified a double-quoted Python struct is expected here, to format the string to unpack the value. See Python documentation for details. Example: >i." required: false type: string default: ">f" data_count: description: Number of registers to read. required: false type: integer default: 2 precision: description: Number of valid decimals. required: false type: integer default: 1 scale: description: Scale factor (output = scale * value + offset). required: false type: float default: 1 offset: description: Final offset (output = scale * value + offset). required: false type: float default: 0 max_temp: description: Maximum setpoint temperature. required: false type: integer default: 35 min_temp: description: Maximum setpoint temperature. required: false type: integer default: 5 temp_step: description: The supported step size a target temperature can be increased/decreased. required: false type: float default: 0.5 temperature_unit: description: Temperature unit reported by the current_temp_register. C or F required: false type: string default: C scan_interval: description: Defines the update interval of the sensor in seconds. required: false type: integer default: 15 {% endconfiguration %}

Services

Service Description
set_temperature Set Temperature. Requires value to be passed in, which is the desired target temperature. value should be in the same type as data_type