From: James Melville Date: Fri, 6 Sep 2024 21:44:28 +0000 (+0100) Subject: [warmup] Fixes & Enhancements (#16387) X-Git-Url: https://git.basschouten.com/?a=commitdiff_plain;h=460350d007c9f93ce450f61fde42fae86a1c5ef1;p=openhab-addons.git [warmup] Fixes & Enhancements (#16387) * Update docs for multiple device support Signed-off-by: James Melville --- diff --git a/bundles/org.openhab.binding.warmup/README.md b/bundles/org.openhab.binding.warmup/README.md index 7f454d42e4..51e48fe223 100644 --- a/bundles/org.openhab.binding.warmup/README.md +++ b/bundles/org.openhab.binding.warmup/README.md @@ -1,11 +1,30 @@ # Warmup Binding -This binding integrates the Warmup 4iE Thermostat , via the API at . +This binding integrates [Warmup](https://www.warmup.co.uk) Wifi enabled Thermostats via the API at . -Any Warmup 4iE device(s) must be registered at prior to usage. +Devices known to work with the binding: + +* [Warmup 4iE](https://www.warmup.co.uk/thermostats/smart/4ie-underfloor-heating) +* [Warmup Element](https://www.warmup.co.uk/thermostats/smart/element-wifi-thermostat) + +Device expected to work with the binding: + +* [Warmup 6iE](https://www.warmup.co.uk/thermostats/smart/6ie-underfloor-heating) + +Devices which might work with the binding: + +* Other similar looking devices marketed under different brands, mentioned in the API + * [Laticrete](https://laticrete.com/) + * [Rointe](https://rointe.com/) + * [Porcelanosa](https://www.porcelanosa.com/) + * Equus + * [Savant](https://www.savant.com/) + +Any Warmup device must be registered at prior to usage, or connected through the [MyHeating app](https://www.warmup.co.uk/thermostats/smart/myheating-app). This API is not known to be documented publicly. -The binding api implementation has been derived from the implementations at and , and enhanced by inspecting the GraphQL endpoint. +The binding api implementation has been derived from the implementations at and , and enhanced by inspecting the [GraphQL endpoint](https://apil.warmup.com/graphql). + ## Supported Things @@ -15,15 +34,15 @@ The Warmup binding supports the following thing types: |----------------|-------------------|----------------------------------------------------------------------------------------| | `my-warmup` | My Warmup Account | The account credentials for my.warmup.com which acts as an API to the Warmup device(s) | -| Thing | Label | Description | -|----------|-------|----------------------------------------------------------------------------------------------------------------------| -| `room` | Room | A room containing an individual Warmup 4iE device which is a WiFi connected device which controls a heating circuit. | +| Thing | Label | Description | +|----------|-------|------------------------------------------------------------------------------------------------| +| `room` | Room | A room containing an individual Warmup WiFi connected device which controls a heating circuit. | ### Room The device is optimised for controlling underfloor heating (electric or hydronic), although it can also control central heating circuits. The device reports the temperature from one of two thermostats, either a floor temperature probe or the air temperature at the device. -The separate temperatures do not appear to be reported through the API. It appears to be possible to configure two devices in a primary / secondary configuration, but it is not clear how this might be represented by the API and hasn't been implemented. +It appears to be possible to configure two devices in a primary / secondary configuration, but it is not clear how this might be represented by the API and hasn't been implemented. ## Discovery @@ -41,12 +60,12 @@ Once credentials are successfully added to the bridge, any rooms (devices) detec ### Room -Rooms are configured automatically with a Serial Number on discovery, or can be added manually using the "Device Number" from the device, excluding the last 3 characters. The only supported temperature change is an override, through a default duration configured on the thing. This defaults to 60 minutes. +Rooms are configured automatically with a Serial Number on discovery, or can be added manually using the "Device Number" from the device, excluding the last 3 characters. Changing the target temperature results in a temporary override to that temperature, for the duration configured on the thing. This defaults to 60 minutes. | config parameter | type | description | required | default | |------------------|---------|--------------------------------------------------------------------|----------|---------| | serialNumber | String | Device Serial Number, excluding last 3 characters | true | | -| overrideDuration | Integer | Duration in minutes of override when target temperature is changed | true | 60 | +| overrideDuration | Integer | Duration in minutes of override when target temperature is changed | false | 60 | ## Channels @@ -55,12 +74,20 @@ Rooms are configured automatically with a Serial Number on discovery, or can be | currentTemperature | Number:Temperature | Currently reported temperature | true | | targetTemperature | Number:Temperature | Target temperature | false | | overrideRemaining | Number:Time | Duration remaining of the configured override | true | -| runMode | String | Current operating mode of the thermostat, options listed below | true | +| fixedTemperature | Number:Temperature | Target temperature for fixed mode | false | +| energyToday | Number:Energy | Today's current energy consumption. | true | +| runMode | String | Current operating mode of the thermostat, options listed below | false | | frostProtectionMode | Switch | Toggles between the "Frost Protection" run mode and the previously configured "active" run mode (known options are either Fixed or Schedule) | false | +| airTemperature | Number:Temperature | Currently reported air temperature at the device | true | +| floor1Temperature | Number:Temperature | Currently reported temperature from floor probe 1 on the device | true | +| floor2Temperature | Number:Temperature | Currently reported temperature from floor probe 2 on the device | true | ### Run Mode Statuses -These run mode statuses are defined for the API. The descriptions are based on inspection of the device behaviour and are not sourced from documentation. +These run mode statuses are defined for the API. +The descriptions are based on inspection of the device behaviour and are not sourced from documentation. +Only the value `schedule` is writeable, this reverts the device to the program/schedule configured on the device. +The value `fixed` can be set by commanding the `fixedTemperature` channel. The value `override` can be set by commanding the `targetTemperature` channel. | api value | ui name | description | |------------|------------------|---------------------------------------------------------------------------------| @@ -76,6 +103,40 @@ These run mode statuses are defined for the API. The descriptions are based on i | relay | Relay | Unknown | | previous | Previous | Unknown | +## Rule Actions + +### setOverride(temperature, duration) + +Sets a temporary temperature override on the device + + Parameters: + +| Name | Type | Description | +|-------------|---------------------------|-------------------------------------------------------------------------| +| temperature | QuantityType | Override temperature. Must be between 5°C and 30°C | +| duration | QuantityType