Implementation of ClimateDevice for controlling IP based AC units. This component is able to work with any AC unit which can be controlled with REST API. At this moment it is configured to work with:
Support for any unit working with REST API can be easily added via YAML configuration file.
- platform: climate_ip
config_file: 'samsungrac.yaml'
ip_address: 'device_ip'
token: 'token'
cert: 'ac14k_m.pem'
- platform: climate_ip
config_file: 'mim-h03_heatpump.yaml'
ip_address: 'device_ip'
token: 'token'
cert: 'ac14k_m.pem'
- platform: climate_ip
config_file: 'samsung_2878.yaml'
ip_address: 'device_ip'
token: 'token'
cert: 'ac14k_m.pem' #set as '' to skip certificate verification
mac: 'AB:cd:EF:gh:IJ'
Configuration parameters:
Param name | description | obligatory |
---|---|---|
config_file | YAML configuration filename | Yes |
ip_address | Device IP address (e.g. 192.178.1.200) | Yes |
token | Access token to the device | Yes |
cert_file | certificate file name (default: ac14k_m.pem, Use None to not use certification) | Usually Yes |
mac | MAC address of device | For 2878 devices |
name | Device name (by default this value is taken from YAML config file) | No |
controller | Controller type to use (default, and the only one for now: yaml) | No |
poll | Enable/disable state polling. Default: Taken from YAML config. Enabled for old gen devices | No |
debug | Enable/disable more debugs. Default: False | No |
TO DO
Functionality depends on yaml configuration file and can be easily changed by editing those files. Currently configuration provides:
This component implements Home Assistant ClimateDevice class. Functionality enabled in HA by default:
Device specific functionality is added as extra service called climate.climate_ip_set_property. Every device attribute can be set using this service with proper params.
{
"entity_id" : "climate.salon_ac",
"power" : "on",
"purify" : "on",
"special_mode" : "comfort"
}
To make controllig device as easy as possible user can create template switches for operations defined as Switch (please see configuration file). Below is an example of template switch for Purify option
switch:
- platform: template
switches:
purify:
value_template: "{{ is_state_attr('climate.salon_ac', 'purify', 'on') }}"
turn_on:
service: climate.climate_ip_set_property
data:
entity_id: climate.salon_ac
purify: 'on'
turn_off:
service: climate.climate_ip_set_property
data:
entity_id: climate.salon_ac
purify: 'off'
Documentation...