home-assistant.io/source/_integrations/climate.modbus.markdown
Franck Nijhof 272086948a
Collection of domain & logo cleanups (#12299)
* Collection of domain & logo cleanups

* Fix build
2020-03-06 23:02:31 +01:00

117 lines
2.9 KiB
Markdown

---
title: "Modbus Climate"
description: "Instructions how to integrate a Modbus thermostat within Home Assistant."
ha_category:
- Climate
ha_release: 0.68
ha_iot_class: Local Polling
ha_domain: modbus
---
The `modbus` thermostat allows you to use a sensor value (current temperature) and target value (target temperature) from [Modbus](http://www.modbus.org/) registers.
## Configuration
To use your Modbus thermostat in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
climate:
- platform: modbus
name: Watlow F4T
hub: hub1
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
hub:
description: The name of the hub.
required: false
default: default
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
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
{% 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` |