No Description

Nik Rolls b5bbaba2f7 Merge pull request #17 from nikrolls/custom-updater-support 6 years ago
goldair_climate c88a78124a Custom Updater support 6 years ago
.gitignore c88a78124a Custom Updater support 6 years ago
LICENSE.md c88a78124a Custom Updater support 6 years ago
README.md c88a78124a Custom Updater support 6 years ago
custom_components.json c88a78124a Custom Updater support 6 years ago

README.md

Home Assistant Goldair WiFi Climate component

The goldair_climate component integrates Goldair WiFi-enabled heaters into Home Assistant, enabling control of setting the following parameters via the UI and the following services:

Climate

  • power (on/off)
  • mode (Comfort, Eco, Anti-freeze)
  • target temperature (5-35 in Comfort mode, 5-21 in Eco mode, in °C)
  • power level (via the swing mode setting because no appropriate HA option exists: Auto, 1-5, Stop)

Current temperature is also displayed.

Sensor

  • current temperature (in °C)

Light

  • LED display (on/off)

Lock

  • Child lock (on/off)

Warning

Please note, this component has currently only been tested with the Goldair GPPH (inverter) range, however theoretically it should also work with GEPH and GPCV devices and any other Goldair heaters based on the Tuya platform.

Work is in progress to support Goldair WiFi dehumidifiers.


Installation

The preferred installation method is via custom_updater:

custom_updater:
  track:
    - components
  component_urls:
    - https://raw.githubusercontent.com/nikrolls/homeassistant-goldair-climate/master/custom_components.json

Alternatively you can copy the contents of this repository's goldair_climate directory to your config directory.

Configuration

Add the following lines to your configuration.yaml file:

# Example configuration.yaml entry
goldair_climate:
  - name: My heater
    host: 1.2.3.4
    device_id: <your device id>
    local_key: <your local key>
    type: 'heater'

Configuration variables

name

    (string) (Required) Any unique for the device; required because the Tuya API doesn't provide

                                          the one you set in the app.

host

    (string) (Required) IP or hostname of the device.

device_id

    (string) (Required) Device ID retrieved from the Goldair app logs (see below).

local_key

    (string) (Required) Local key retrieved from the Goldair app logs (see below).

type

    (string) (Required) The type of Goldair device. Currently heater is the only option; a future update will add support for dehumidifiers, so setting the type now will prevent the component breaking when this functionality is released.

climate

    (boolean) (Optional) Whether to surface this heater as a climate device.

    Default value: true

sensor

    (boolean) (Optional) Whether to surface this heater's thermometer as a temperature sensor.

    Default value: false

display_light

    (boolean) (Optional) Whether to surface this heater's LED display control as a light.

    Default value: false

child_lock

    (boolean) (Optional) Whether to surface this heater's child lock as a lock device.

    Default value: false

Gotchas

These heaters have individual target temperatures for their Comfort and Eco modes, whereas Home Assistant only supports a single target temperature. Therefore, when you're in Comfort mode you will set the Comfort temperature (5-35), and when you're in Eco mode you will set the Eco temperature (5-21), just like you were using the heater's own control panel. Bear this in mind when writing automations that change the operation mode and set a temperature at the same time: you must change the operation mode before setting the new target temperature, otherwise you will set the current thermostat rather than the new one.

When switching to Anti-freeze mode, the heater will set the current power level to 1 as if you had manually chosen it. When you switch back to other modes, you will no longer be in Auto and will have to set it again if this is what you wanted. This could be worked around in code however it would require storing state that may be cleared if HA is restarted and due to this unreliability it's probably best that you just factor it into your automations.

When child lock is enabled, the heater's display will flash with the child lock symbol ([]) whenever you change something in HA. This can be confusing because it's the same behaviour as when you try to change something via the heater's own control panel and the change is rejected due to being locked, however rest assured that the changes are taking effect.

Finding your device ID and local key

You can find these keys the same way as you would for any Tuya local component. You'll need the Tuya Smart app rather than the Goldair app (the Goldair app is just a re-branded clone of Tuya Smart).

You're looking for the uuid (this is the device ID) and the localKey values.

Next steps

This component needs specs! Once they're written I'm considering submitting it to the HA team for inclusion in standard installations. Please report any issues and feel free to raise pull requests.

I also have a working integration for Goldair WiFi dehumidifiers; it needs to be re-worked to prevent duplicate code before releasing it to the wild.

Acknowledgements

None of this would have been possible without some foundational discovery work to get me started: