Merge branch 'rc' into current
16
_config.yml
@ -46,13 +46,13 @@ plugins:
|
||||
- jekyll-redirect-from
|
||||
- jekyll-time-to-read
|
||||
|
||||
paginate: 10 # Posts per page on the blog index
|
||||
paginate_path: "blog/posts/:num" # Directory base for pagination URLs eg. /posts/2/
|
||||
recent_posts: 5 # Posts in the sidebar Recent Posts section
|
||||
excerpt_link: "Read on →" # "Continue reading" link text at the bottom of excerpted articles
|
||||
paginate: 10 # Posts per page on the blog index
|
||||
paginate_path: "blog/posts/:num" # Directory base for pagination URLs eg. /posts/2/
|
||||
recent_posts: 5 # Posts in the sidebar Recent Posts section
|
||||
excerpt_link: "Read on →" # "Continue reading" link text at the bottom of excerpted articles
|
||||
excerpt_separator: "<!--more-->"
|
||||
|
||||
titlecase: true # Converts page and post titles to titlecase
|
||||
titlecase: true # Converts page and post titles to titlecase
|
||||
|
||||
# Each layout uses the default asides, but they can have their own asides instead. Simply uncomment the lines below
|
||||
# and add an array with the asides you want to use.
|
||||
@ -98,9 +98,9 @@ social:
|
||||
|
||||
# Home Assistant release details
|
||||
current_major_version: 0
|
||||
current_minor_version: 95
|
||||
current_patch_version: 4
|
||||
date_released: 2019-06-29
|
||||
current_minor_version: 96
|
||||
current_patch_version: 0
|
||||
date_released: 2019-07-17
|
||||
|
||||
# Either # or the anchor link to latest release notes in the blog post.
|
||||
# Must be prefixed with a # and have double quotes around it.
|
||||
|
103
source/_components/arcam_fmj.markdown
Normal file
@ -0,0 +1,103 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Arcam FMJ Receivers"
|
||||
description: "Instructions on how to integrate Arcam FMJ Receivers into Home Assistant."
|
||||
date: 2019-04-28 13:59 +0200
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: arcam.svg
|
||||
ha_category: Media Player
|
||||
ha_release: 0.96
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
The `arcam_fmj` integration allows you to control [Arcam FMJ Receveivers](https://www.arcam.co.uk/range/fmj.htm) from Home Assistant.
|
||||
|
||||
Supported devices:
|
||||
|
||||
- AVR 380
|
||||
- AVR 450
|
||||
- AVR 750
|
||||
- Likely other AVRs
|
||||
|
||||
## Configuration
|
||||
|
||||
To add an Arcam FMJ to your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Minimal example configuration.yaml entry
|
||||
arcam_fmj:
|
||||
- host: HOSTNAME
|
||||
zone:
|
||||
1:
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
host:
|
||||
description: IP address or hostname of the device.
|
||||
required: true
|
||||
type: string
|
||||
port:
|
||||
description: Port to connect to.
|
||||
required: false
|
||||
default: 50000
|
||||
type: integer
|
||||
zone:
|
||||
description: Per zone specific configuration
|
||||
type: map
|
||||
keys:
|
||||
ZONE_INDEX:
|
||||
name:
|
||||
description: Name of zone
|
||||
required: false
|
||||
type: string
|
||||
default: Arcam FMJ - ZONE_INDEX
|
||||
turn_on:
|
||||
description: Service to use when turning on device when no connection is established
|
||||
required: false
|
||||
type: action
|
||||
{% endconfiguration %}
|
||||
|
||||
```yaml
|
||||
# Larger example configuration.yaml entry
|
||||
media_player:
|
||||
- platform: arcam_fmj
|
||||
host: HOSTNAME
|
||||
zone:
|
||||
1:
|
||||
name: "Zone 1 name"
|
||||
turn_on:
|
||||
service: 'broadlink.send'
|
||||
data:
|
||||
host: BROADLINK_IR_IP
|
||||
packet: JgAVADodHTo6HR0dHR0dOh0dHR06Oh0dHQ0FAA==
|
||||
2:
|
||||
name: "Zone 2 name"
|
||||
turn_on:
|
||||
service: 'broadlink.send'
|
||||
data:
|
||||
host: BROADLINK_IR_IP
|
||||
packet: JgAYADodHTo6Oh0dHR0dHR0dHR06Oh0dHQALZw0FAAAAAAAAAAAAAAAAAAA=
|
||||
```
|
||||
|
||||
## Power state
|
||||
|
||||
Arcam FMJ receivers turn off their network port when in standby, the component will try to
|
||||
reconnect to the receiver every 5 seconds. This mean powering on the first zone is not
|
||||
possible over the builtin network connection. Two options for complete power control
|
||||
exists: IR or Serial gateway.
|
||||
|
||||
### IR command
|
||||
|
||||
Use an IR blaster to send a command to turn the device on using these discrete codes:
|
||||
|
||||
- Zone 1: Protocol: NEC1 Device: 16 Function: 123
|
||||
- Zone 2: Protocol: NEC1 Device: 23 Function: 123
|
||||
|
||||
### Serial Port to network gateway
|
||||
|
||||
Use a network to a serial port gateway to connect to the serial port of the
|
||||
receiver. The serial port is always available and can power on the device.
|
||||
This is the most reliable communication method as well.
|
65
source/_components/aurora_abb_powerone.markdown
Normal file
@ -0,0 +1,65 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Aurora ABB Powerone PV Inverter Sensor"
|
||||
description: "Instructions on how to integrate an Aurora ABB Powerone solar inverter within Home Assistant."
|
||||
date: 2019-06-27 23:30
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: powerone.png
|
||||
ha_category:
|
||||
- Sensor
|
||||
- Energy
|
||||
ha_release: 0.96
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
This implements a direct RS485 connection to a solar inverter in the
|
||||
PVI-3.0/3.6/4.2-TL-OUTD ABB series, and may work on others.
|
||||
The inverter was formerly made by PowerOne who got taken over by ABB.
|
||||
|
||||
The TCP/IP method of communicating with inverters is supported by the
|
||||
Python library, but not by this implementation in this integration.
|
||||
|
||||
This integration provides a single sensor which reports the live power output
|
||||
in watts.
|
||||
|
||||
Note the PV inverter will be unresponsive to communications when in darkness,
|
||||
so the value 'unknown' will be displayed during the night.
|
||||
|
||||
## Configuration
|
||||
|
||||
Add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: aurora_abb_powerone
|
||||
device: 'SERIAL_PORT'
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
device:
|
||||
description: The serial port your RS485 adaptor is connected to.
|
||||
required: true
|
||||
type: string
|
||||
address:
|
||||
description: The address of the inverter - only need to set this if you have changed your inverter away from the default address of 2.
|
||||
required: false
|
||||
type: integer
|
||||
default: 2
|
||||
name:
|
||||
description: Name of the sensor to use in the frontend.
|
||||
required: false
|
||||
default: Solar PV
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry for aurora_abb_powerone platform
|
||||
sensor:
|
||||
- platform: aurora_abb_powerone
|
||||
address: 2
|
||||
device: '/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0'
|
||||
```
|
@ -63,14 +63,21 @@ climate:
|
||||
|
||||
`operation_mode_frost_protection_address` / `operation_mode_night_address` / `operation_mode_comfort_address` are not necessary if `operation_mode_address` is specified.
|
||||
|
||||
The following values are valid for the `operation_modes` attribute:
|
||||
The following values are valid for the `hvac_mode` attribute:
|
||||
|
||||
- Comfort (maps internally to STATE_HEAT within Home Assistant)
|
||||
- Standby (maps internally to STATE_ECO within Home Assistant)
|
||||
- Night (maps internally to STATE_IDLE within Home Assistant)
|
||||
- Frost Protection (maps internally to STATE_MANUAL within Home Assistant)
|
||||
- Fan only (maps internally to STATE_FAN_ONLY within Home Assistant)
|
||||
- Dehumidification (maps internally to STATE_DRY within Home Assistant)
|
||||
- Off (maps internally to HVAC_MODE_OFF within Home Assistant)
|
||||
- Auto (maps internally to HVAC_MODE_AUTO within Home Assistant)
|
||||
- Heat (maps internally to HVAC_MDOE_HEAT within Home Assistant)
|
||||
- Cool (maps internally to HVAC_MDOE_COOL within Home Assistant)
|
||||
- Fan only (maps internally to HVAC_MODE_FAN_ONLY within Home Assistant)
|
||||
- Dry (maps internally to HVAC_MODE_DRY within Home Assistant)
|
||||
|
||||
The following presets are valid for the `preset_mode` attribute:
|
||||
|
||||
- Comfort (maps internally to PRESET_COMFORT within Home Assistant)
|
||||
- Standby (maps internally to PRESET_AWAY within Home Assistant)
|
||||
- Night (maps internally to PRESET_SLEEP within Home Assistant)
|
||||
- Frost Protection (maps internally to PRESET_ECO within Home Assistant)
|
||||
|
||||
{% configuration %}
|
||||
name:
|
||||
|
@ -13,7 +13,8 @@ The `climate` integration is built for the controlling and monitoring of HVAC (h
|
||||
## Services
|
||||
|
||||
### Climate control services
|
||||
Available services: `climate.set_aux_heat`, `climate.set_away_mode`, `climate.set_temperature`, `climate.set_humidity`, `climate.set_fan_mode`, `climate.set_operation_mode`, `climate.set_swing_mode`, `climate.set_hold_mode`, `climate.turn_on`, `climate.turn_off`
|
||||
|
||||
Available services: `climate.set_aux_heat`, `climate.set_preset_mode`, `climate.set_temperature`, `climate.set_humidity`, `climate.set_fan_mode`, `climate.set_hvac_mode`, `climate.set_swing_mode`, `climate.turn_on`, `climate.turn_off`
|
||||
|
||||
<div class='note'>\
|
||||
|
||||
@ -30,7 +31,7 @@ Turn auxiliary heater on/off for climate device
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `aux_heat` | no | New value of auxiliary heater.
|
||||
|
||||
#### Automation example
|
||||
#### Automation example
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
@ -44,18 +45,18 @@ automation:
|
||||
aux_heat: true
|
||||
```
|
||||
|
||||
### Service `climate.set_away_mode`
|
||||
### Service `climate.set_preset_mode`
|
||||
|
||||
Set away mode for climate device. The away mode changes the target temperature permanently to a temperature
|
||||
Set preset mode for climate device. The away mode changes the target temperature permanently to a temperature
|
||||
reflecting a situation where the climate device is set to save energy. This may be used to emulate a
|
||||
"vacation mode", for example.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `away_mode` | no | New value of away mode.
|
||||
| `preset_mode` | no | New value of preset mode.
|
||||
|
||||
#### Automation example
|
||||
#### Automation example
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
@ -63,37 +64,10 @@ automation:
|
||||
platform: time
|
||||
at: "07:15:00"
|
||||
action:
|
||||
- service: climate.set_away_mode
|
||||
- service: climate.set_preset_mode
|
||||
data:
|
||||
entity_id: climate.kitchen
|
||||
away_mode: 'on'
|
||||
```
|
||||
|
||||
|
||||
### Service `climate.set_hold_mode`
|
||||
|
||||
Set hold mode for climate device. The hold mode changes the target temperature of the client device temporarily to
|
||||
a different temperature. Typical hold modes provided by a climate device are "away" or "home", where the hold temperature
|
||||
is chosen depending on a predefined climate, or "temperature" hold, where a particular temperature is selected as the
|
||||
temporary target temperature. The particular modes available depend on the climate device.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `hold_mode` | no | New value of hold mode.
|
||||
|
||||
#### Automation example
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
trigger:
|
||||
platform: time
|
||||
at: "07:15:00"
|
||||
action:
|
||||
- service: climate.set_hold_mode
|
||||
data:
|
||||
entity_id: climate.kitchen
|
||||
hold_mode: 'away'
|
||||
preset_mode: 'eco'
|
||||
```
|
||||
|
||||
### Service `climate.set_temperature`
|
||||
@ -108,7 +82,7 @@ Set target temperature of climate device
|
||||
| `target_temp_low` | yes | New target low temperature for hvac
|
||||
| `operation_mode` | yes | Operation mode to set temperature to. This defaults to current_operation mode if not set, or set incorrectly.
|
||||
|
||||
#### Automation example
|
||||
#### Automation example
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
@ -132,7 +106,7 @@ Set target humidity of climate device
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `humidity` | no | New target humidity for climate device
|
||||
|
||||
#### Automation example
|
||||
#### Automation example
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
@ -155,7 +129,7 @@ Set fan operation for climate device
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `fan_mode` | no | New value of fan mode
|
||||
|
||||
#### Automation example
|
||||
#### Automation example
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
@ -169,16 +143,16 @@ automation:
|
||||
fan_mode: 'On Low'
|
||||
```
|
||||
|
||||
### Service `climate.set_operation_mode`
|
||||
### Service `climate.set_hvac_mode`
|
||||
|
||||
Set operation mode for climate device
|
||||
Set HVAC mode for climate device
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `operation_mode` | no | New value of operation mode
|
||||
| `hvac_mode` | no | New value of HVAC mode
|
||||
|
||||
#### Automation example
|
||||
#### Automation example
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
@ -186,10 +160,10 @@ automation:
|
||||
platform: time
|
||||
at: "07:15:00"
|
||||
action:
|
||||
- service: climate.set_operation_mode
|
||||
- service: climate.set_hvac_mode
|
||||
data:
|
||||
entity_id: climate.kitchen
|
||||
operation_mode: Heat
|
||||
operation_mode: heat
|
||||
```
|
||||
|
||||
### Service `climate.set_swing_mode`
|
||||
@ -201,7 +175,7 @@ Set operation mode for climate device
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `swing_mode` | no | New value of swing mode
|
||||
|
||||
#### Automation example
|
||||
#### Automation example
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
@ -214,9 +188,10 @@ automation:
|
||||
entity_id: climate.kitchen
|
||||
swing_mode: 1
|
||||
```
|
||||
|
||||
### Service `climate.turn_on`
|
||||
|
||||
Turn climate device on
|
||||
Turn climate device on. This is only supported if the climate device supports being turned off.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
@ -224,7 +199,7 @@ Turn climate device on
|
||||
|
||||
### Service `climate.turn_off`
|
||||
|
||||
Turn climate device off
|
||||
Turn climate device off. This is only supported if the climate device has the hvac mode "off".
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
|
@ -197,6 +197,9 @@ hold_state_template:
|
||||
description: A template to render the value received on the `hold_state_topic` with.
|
||||
required: false
|
||||
type: template
|
||||
hold_modes:
|
||||
description: A list of available hold modes.
|
||||
required: false
|
||||
aux_command_topic:
|
||||
description: The MQTT topic to publish commands to switch auxiliary heat.
|
||||
required: false
|
||||
|
@ -23,10 +23,10 @@ V_HVAC_FLOW_STATE is mapped to the state of the Climate integration in Home Assi
|
||||
|
||||
Home Assistant State | MySensors State
|
||||
---------------------|----------------
|
||||
STATE_COOL | CoolOn
|
||||
STATE_HEAT | HeatOn
|
||||
STATE_AUTO | AutoChangeOver
|
||||
STATE_OFF | Off
|
||||
HVAC_MODE_COOL | CoolOn
|
||||
HVAC_MODE_HEAT | HeatOn
|
||||
HVAC_MODE_AUTO | AutoChangeOver
|
||||
HVAC_MODE_OFF | Off
|
||||
|
||||
Currently humidity, away_mode, aux_heat, swing_mode is not supported. This will be included in later versions as feasible.
|
||||
|
||||
@ -40,7 +40,6 @@ For more information, visit the [serial api] of MySensors.
|
||||
|
||||
### Example sketch for MySensors 2.x
|
||||
|
||||
|
||||
```cpp
|
||||
/*
|
||||
* Documentation: http://www.mysensors.org
|
||||
|
@ -11,7 +11,7 @@ redirect_from:
|
||||
---
|
||||
|
||||
|
||||
The `cups` sensor platform is using the open source printing system [CUPS](https://www.cups.org/) to show details about your printers.
|
||||
The `cups` sensor platform is using the open source printing system [CUPS](https://www.cups.org/) to show details about your printers, including the ink levels. It can obtain the informations using a CUPS server or communicating directly with the printer with the Internet Printing Protocol.
|
||||
|
||||
## Setup
|
||||
|
||||
@ -38,18 +38,22 @@ sensor:
|
||||
|
||||
{% configuration %}
|
||||
printers:
|
||||
description: List of printers to add.
|
||||
description: List of printers to add. If you're not using a CUPS server, add here your "Printer Name".
|
||||
required: true
|
||||
type: list
|
||||
host:
|
||||
description: IP address of the CUPS print server.
|
||||
description: The IP address of the CUPS print server or of the printer.
|
||||
required: false
|
||||
type: string
|
||||
default: 127.0.0.1
|
||||
port:
|
||||
description: Port of the CUPS print server.
|
||||
description: The port number of the CUPS print server or of the printer.
|
||||
required: false
|
||||
type: integer
|
||||
default: 631
|
||||
is_cups_server:
|
||||
description: Set true if you want to use a CUPS print server, set false otherwise.
|
||||
required: false
|
||||
type: boolean
|
||||
default: true
|
||||
{% endconfiguration %}
|
||||
|
||||
|
@ -30,7 +30,7 @@ There is currently support for the following device types within Home Assistant:
|
||||
|
||||
## Configuration
|
||||
|
||||
The Daikin integration can be configured in three ways.
|
||||
The Daikin integration can be configured in three ways.
|
||||
|
||||
- Automatically via the [discovery]({{site_root}}/components/discovery/) integration.
|
||||
- Via the Home Assistant user interface where it will let you enter the IP-address of your Daikin AC.
|
||||
@ -55,12 +55,11 @@ hosts:
|
||||
|
||||
The `daikin` climate platform integrates Daikin air conditioning systems into Home Assistant, enabling control of setting the following parameters:
|
||||
|
||||
- [**mode**](/components/climate#service-climateset_operation_mode) (cool, heat, dry, fan only or auto)
|
||||
- [**target temperature**](/components/climate#service-climateset_temperature)
|
||||
- [**fan mode**](/components/climate#service-climateset_fan_mode) (speed)
|
||||
- [**swing mode**](/components/climate#service-climateset_swing_mode)
|
||||
- [**turn on/off**](/components/climate#service-climateturn_on)
|
||||
- [**away mode**](/components/climate#service-climateset_away_mode)
|
||||
- [**set_hvac_mode**](/components/climate/#service-climateset_hvac_mode) (off, heat, cool, auto, or fan only)
|
||||
- [**target temperature**](https://www.home-assistant.io/components/climate#service-climateset_temperature)
|
||||
- [**fan mode**](https://www.home-assistant.io/components/climate#service-climateset_fan_mode) (speed)
|
||||
- [**swing mode**](https://www.home-assistant.io/components/climate#service-climateset_swing_mode)
|
||||
- [**set_preset_mode**](https://www.home-assistant.io/components/climate#service-climateset_away_mode) (away, home)
|
||||
|
||||
Current inside temperature is displayed.
|
||||
|
||||
|
@ -31,6 +31,11 @@ to:
|
||||
description: The name of the end/destination station.
|
||||
required: true
|
||||
type: string
|
||||
offset:
|
||||
description: Do not display departures leaving sooner than this number of minutes. Useful if you are a couple of minutes away from the stop.
|
||||
required: false
|
||||
type: time
|
||||
default: 00:00
|
||||
only_direct:
|
||||
description: Only show direct connections.
|
||||
required: false
|
||||
|
@ -126,7 +126,7 @@ This integration supports the following services (see [Climate](/components/clim
|
||||
- [`turn_off`](/components/climate/#service-climateturn_off)
|
||||
- [`set_temperature`](/components/climate/#service-climateset_temperature)
|
||||
- [`set_fan_mode`](/components/climate/#service-climateset_fan_mode)
|
||||
- [`set_operation_mode`](/components/climate/#service-climateset_operation_mode)
|
||||
- [`set_hvac_mode`](/components/climate/#service-climateset_hvac_mode)
|
||||
|
||||
## Fan
|
||||
|
||||
|
@ -112,264 +112,37 @@ The _target temperature_ is the temperature that the device attempts
|
||||
to achieve. The target temperature is either determined by the
|
||||
currently active climate or it may be overridden by a hold. When the
|
||||
thermostat is not in auto mode, there is a single target
|
||||
temperature. When the thermostat is in auto operation mode, there is a
|
||||
temperature. When the thermostat is in auto HVAC mode, there is a
|
||||
pair of target temperatures: the lower target temperature determines
|
||||
the lowest desired temperature, while the higher target temperature
|
||||
determines the highest desired temperature (the thermostat will switch
|
||||
between heating and cooling to keep the temperature within these
|
||||
limits).
|
||||
|
||||
A _climate_ is a predefined or user-defined set of states that the
|
||||
A _climate_ is a predefined or user-defined set of presets that the
|
||||
thermostat aims to achieve. The ecobee thermostat provides three predefined
|
||||
climates: Home, Away, and Sleep. The user can define additional climates.
|
||||
|
||||
A _hold_ is an override of the target temperature defined in the
|
||||
currently active climate. The temperature targeted in the hold mode may be
|
||||
explicitly set (temperature hold), it may be derived from a reference
|
||||
A _preset_ is an override of the target temperature defined in the
|
||||
currently active climate. The temperature targeted in the preset mode may be
|
||||
explicitly set (temperature preset), it may be derived from a reference
|
||||
climate (home, away, sleep, etc.), or it may be derived from a vacation
|
||||
defined by the thermostat. All holds are temporary. Temperature and
|
||||
climate holds expire when the thermostat transitions to the next climate
|
||||
defined in its program. A vacation hold starts at the beginning of the
|
||||
defined vacation period, and expires when the vacation period ends.
|
||||
|
||||
When in _away mode_, the target temperature is permanently overridden by
|
||||
the target temperature defined for the away climate. The away mode is a
|
||||
When in _away preset_, the target temperature is permanently overridden by
|
||||
the target temperature defined for the away climate. The away preset is a
|
||||
simple way to emulate a vacation mode.
|
||||
|
||||
The _operation mode_ of the device is the currently active operational
|
||||
The _HVAC mode_ of the device is the currently active operational
|
||||
modes that the Ecobee thermostat provides: heat, auxHeatOnly, cool,
|
||||
auto, and off.
|
||||
|
||||
## Attributes
|
||||
|
||||
The following attributes are provided by the Ecobee Thermostat:
|
||||
`name`, `temperature_unit`, `current_temperature`, `target_temperature`,
|
||||
`target_temperature_low`, `target_temperature_high`, `desired_fan_mode`,
|
||||
`fan`, `current_hold_mode`, `operation`, `operation_list`, `equipment_running`,
|
||||
`operation_mode`, `mode`, `fan_min_on_time`, `device_state_attributes`,
|
||||
`is_away_mode_on`, `vacation`, `climate_list`, `aux_heat`.
|
||||
The attributes `min_temp` and `max_temp` are meaningless constant values.
|
||||
|
||||
### Attribute `name`
|
||||
|
||||
Returns the name of the Ecobee Thermostat.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| String | Name of the Ecobee Thermostat
|
||||
|
||||
### Attribute `temperature_unit`
|
||||
|
||||
Returns the unit of measurement used for temperature by the thermostat.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| String | Name of the temperature unit
|
||||
|
||||
### Attribute `current_temperature`
|
||||
|
||||
Returns the current temperature measured by the thermostat.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| Integer | Currently measured temperature
|
||||
|
||||
### Attribute `target_temperature`
|
||||
|
||||
Returns the target temperature of the thermostat, when the thermostat is
|
||||
not in auto operation mode.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| Integer | Target temperature
|
||||
|
||||
### Attribute `target_temperature_low`
|
||||
|
||||
Returns the desired heating temperature set in the thermostat when in
|
||||
auto operation mode.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| Integer | Target temperature
|
||||
|
||||
### Attribute `target_temperature_high`
|
||||
|
||||
Returns the desired cooling temperature set in the thermostat when in
|
||||
auto operation mode.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| Integer | Target temperature
|
||||
|
||||
### Attribute `desired_fan_mode`
|
||||
|
||||
Returns the desired fan mode of the current operation.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| String | 'on', 'off'
|
||||
|
||||
### Attribute `fan`
|
||||
|
||||
Returns the current fan state.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| String | 'on', 'off'
|
||||
|
||||
### Attribute `current_hold_mode`
|
||||
|
||||
Returns the current temperature hold, if any.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| String | 'temp', 'vacation', 'home', 'away', etc., None
|
||||
|
||||
### Attribute `operation`
|
||||
|
||||
Returns the current operation of the thermostat.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| String | 'auto', 'cool', 'heat', 'off'
|
||||
|
||||
### Attribute `operation_list`
|
||||
|
||||
Returns the list of available operation modes.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| List of String | Available operation modes
|
||||
|
||||
### Attribute `operation_mode`
|
||||
|
||||
Returns the current operation mode of the thermostat.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| String | Currently active operation mode
|
||||
|
||||
### Attribute `equipment_running`
|
||||
|
||||
Returns the list of equipment that is currently operating from the thermostat.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| String | If no equipment is currently running empty string is returned. Possible values are a comma separated list of any of the following: heatPump, heatPump2, heatPump3, compCool1, compCool2, auxHeat1, auxHeat2, auxHeat3, fan, humidifier, dehumidifier, ventilator, economizer, compHotWater, auxHotWater.
|
||||
|
||||
### Attribute `mode`
|
||||
|
||||
Returns the climate currently active on the thermostat. The mode
|
||||
is returned as the user-visible name (rather than the internally used name).
|
||||
|
||||
### Attribute `fan_min_on_time`
|
||||
|
||||
Returns the current fan minimum on time.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| Integer | Current fan minimum on time in minutes
|
||||
|
||||
### Attribute `is_away_mode_on`
|
||||
|
||||
Returns whether the thermostat is in away mode (see the corresponding
|
||||
service for more detail).
|
||||
|
||||
### Attribute `actual humidity`
|
||||
|
||||
Returns the humidity as measured by the thermostat.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| Integer | Current humidity
|
||||
|
||||
### Attribute `vacation`
|
||||
|
||||
Returns the currently active vacation or `None`.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| String | Name of currently active vacation |
|
||||
|
||||
### Attribute `climate_list`
|
||||
|
||||
Returns the list of climates defined in the thermostat.
|
||||
|
||||
### Attribute `aux_heat`
|
||||
|
||||
Returns the current auxiliary heat state.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| String | 'on', 'off'
|
||||
|
||||
## Services
|
||||
|
||||
The following services are provided by the Ecobee Thermostat:
|
||||
`set_away_mode`, `set_hold_mode`, `set_temperature`, `set_operation_mode`,
|
||||
`fan_min_on_time`, `resume_program`.
|
||||
The services `set_aux_heat`, `set_humidity`, `set_fan_mode`, and
|
||||
`set_swing_mode` offered by the [Climate component](/components/climate/)
|
||||
are not implemented for this thermostat.
|
||||
|
||||
### Service `set_away_mode`
|
||||
|
||||
Turns Away Mode on or off, ignoring the next scheduled activity. This setting will override the thermostat Hold Duration setting, even if you set the hold duration to "Until the next scheduled activity" within thermostat preferences.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `away_mode` | no | 'on' or 'off'
|
||||
|
||||
### Service `set_hold_mode`
|
||||
|
||||
Puts the thermostat into the given hold mode. For 'home', 'away', 'sleep',
|
||||
and any other hold based on a comfort setting, the
|
||||
target temperature is set to whatever is programmed in the comfort setting.
|
||||
For 'temp', the current temperature is taken as the target temperature.
|
||||
When None is provided as parameter, the hold_mode is turned off.
|
||||
If the thermostat Hold Duration is set to "Until the next scheduled activity" within thermostat preferences, then the next scheduled activity will change this hold mode.
|
||||
Note that it is not possible to set a vacation hold; this must be defined on the thermostat directly. However, a vacation hold can be
|
||||
canceled.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `hold_mode` | no | `temp`, `home`, `away`, `sleep`, `None`, `smart1`, `smart2`, etc.
|
||||
|
||||
NOTE: If you create custom hold modes (also known as "Comfort Settings") on your ecobee.com dashboard, their hold_modes are `smart1`, `smart2`, `smart3`, etc. The number for each custom mode should match the mode's icon on your ecobee.com dashboard. Also note that the mode numbers/icons in the ecobee mobile app *may not match* the numbers/icons from the ecobee.com web dashboard. The ones on the website are the ones you shoud use to determine the correct `smartX` hold_mode IDs.
|
||||
|
||||
### Service `set_temperature`
|
||||
|
||||
Puts the thermostat into a temporary hold at the given temperature.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `target_temp_low` | no | Desired heating target temperature (when in auto mode)
|
||||
| `target_temp_high` | no | Desired cooling target temperature (when in auto mode)
|
||||
| `temperature` | no | Desired target temperature (when not in auto mode)
|
||||
|
||||
Only the target temperatures relevant for the current operation mode need to
|
||||
be provided.
|
||||
|
||||
### Service `set_operation_mode`
|
||||
|
||||
Sets the current operation mode of the thermostat.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `operation_mode` | no | 'auto', 'auxHeatOnly', 'cool', 'heat', 'off'
|
||||
|
||||
### Service `fan_min_on_time`
|
||||
|
||||
Sets the fan minimum on time.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `fan_min_on_time` | no | Desired fan minimum on time
|
||||
The following extra services are provided by the Ecobee Thermostat: `resume_program`.
|
||||
|
||||
### Service `resume_program`
|
||||
|
||||
|
@ -60,4 +60,6 @@ monitored_conditions:
|
||||
description: The energy in Wh consumed the last 7 days.
|
||||
lifetime_consumption:
|
||||
description: The energy in Wh consumed in the lifetime of the Envoy.
|
||||
inverters:
|
||||
description: The power in W being produced by each micro-inverter. This will create a separate sensor for each micro-inverter you have installed. These sensors will only update about every 15 minutes, this is a limitation of the Enphase Envoy API.
|
||||
{% endconfiguration %}
|
||||
|
@ -11,19 +11,31 @@ redirect_from:
|
||||
- /components/climate.evohome/
|
||||
---
|
||||
|
||||
The `evohome` integration is the main integration to set up and integrate all _non-US_ [Honeywell Total Connect Comfort (TCC)](https://international.mytotalconnectcomfort.com/Account/Login) CH/DHW systems, primarily the Honeywell evohome multi-zone CH/DHW system. It does not support the home security functionality of TCC.
|
||||
The `evohome` integration links Home Assistant with all _non-US_ [Honeywell Total Connect Comfort (TCC)](https://international.mytotalconnectcomfort.com/Account/Login) CH/DHW systems, such as:
|
||||
* the Honeywell evohome CH/DHW system, and
|
||||
* the Honeywell Round Thermostat
|
||||
|
||||
It uses v2 of the [evohome-client](https://github.com/watchforstock/evohome-client) client library and so will let you control (only) EU/international systems. It _does not_ leverage the [somecomfort](https://github.com/kk7ds/somecomfort) client library as used by US-based systems; for those, you may find what you need at the [honeywell climate platform](/components/climate.honeywell/).
|
||||
It does not support the home security functionality of TCC.
|
||||
|
||||
Currently, only Controllers and Heating zones are supported; support for DHW controllers will be added at a later time. More information is available on the [evohome climate platform](#climate) page.
|
||||
It uses v2 of the [evohome-client](https://github.com/watchforstock/evohome-client) client library.
|
||||
|
||||
There is currently support for the following device types within Home Assistant:
|
||||
Honeywell removed support for higher-precision temperatures from the v2 API, so temperatures are reported to the nearest 0.5C.
|
||||
|
||||
- [Climate](#climate)
|
||||
### evohome
|
||||
|
||||
evohome is a multi-zone system. Each Zone is represented as a **Climate** device: it will expose the Zone's operating mode, temperature and setpoint.
|
||||
|
||||
The Controller/Location is also represented as a **Climate** device: it will expose the location's operating mode (see below for details). Note that the Controller's temperatures are calculated as an average of all the Zones.
|
||||
|
||||
The DHW controller is represented as a **WaterHeater** device: It will report its current temperature (but not target temperature), and it can be turned on or off.
|
||||
|
||||
### Round Thermostat
|
||||
|
||||
Round Thermostat is a single zone system. It is currently implemented as two **Climate** devices, as if a single zone evohome system.
|
||||
|
||||
## Configuration
|
||||
|
||||
To use this integration in your installation, add the following to your `configuration.yaml` file:
|
||||
To set up this integration, add the following to your **configuration.yaml** file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
@ -47,44 +59,40 @@ location_idx:
|
||||
type: integer
|
||||
default: 0
|
||||
scan_interval:
|
||||
description: How often updates are retreived from Honeywell's web servers. The minimum value is 180 seconds, rounded up to the nearest minute.
|
||||
description: How often updates are retrieved from Honeywell's web servers. The minimum value is 60 seconds.
|
||||
required: false
|
||||
type: integer
|
||||
default: 300
|
||||
{% endconfiguration %}
|
||||
|
||||
This is an IoT cloud-polling device, and the recommended minimum `scan_interval` is 300 seconds. Testing has indicated that this is a safe interval that - by itself - shouldn't cause you to be rate-limited by Honeywell.
|
||||
This is an IoT cloud-polling device, and the recommended `scan_interval` is 180 seconds. Testing has indicated that this is a safe interval that - by itself - shouldn't cause you to be rate-limited by Honeywell.
|
||||
|
||||
## Climate
|
||||
## Operating modes, and Inheritance
|
||||
|
||||
It is distinct from - but related to - the [`honeywell`](/components/climate.honeywell/) climate platform, which also allows (limited) integration with Honeywell Connected thermostats; these two integrations may well be usable side-by-side, but YMMV.
|
||||
Zones support only three setpoint modes: **FollowSchedule**, **TemporaryOverride**, and **PermanentOverride**.
|
||||
|
||||
The evohome evotouch Controller supports seven distict operating modes: Auto, AutoWithEco, Away, DayOff, HeatingOff, and Custom; AutoWithReset is a 7th, hidden, mode.
|
||||
Mostly, the Zone 'inherits' its functional operating mode from the controller (the actual algorithm for this is a little complicated).
|
||||
|
||||
Currently, only the standard HA operating modes are supported; the evohome modes are mapped thus: 'Eco' (AutoWithEco), 'Off' (HeatingOff), and 'Auto' (all other evohome modes). 'Away' mode is supported separately, in the HA fashion.
|
||||
The evohome Controller supports seven distinct system modes: **Auto**, **AutoWithEco**, **Away**, **DayOff**, **HeatingOff**, and **Custom**; **AutoWithReset** is a hidden mode that will revert all Zones to **FollowSchedule** mode.
|
||||
|
||||
The evohome Heating zones support only three operating modes: FollowSchedule, TemporaryOverride, and PermanentOverride. If the zone is in FollowSchedule mode, it inherits its `operating_mode` from the controller; the other modes are mapped to 'Manual' or 'Off'.
|
||||
If the zone is in **FollowSchedule** mode, its `temperature` (target temperature) is a function of its scheduled temperature and its functional mode - for example, **AutoWithEco** is scheduled temperature less 3C.
|
||||
|
||||
A device's actual operating mode can be tracked via its `device_state_attributes`, which includes a JSON data structure for current state called `status`. For example:
|
||||
```json
|
||||
{
|
||||
'zoneId': '999999',
|
||||
'temperatureStatus': {
|
||||
'temperature': 21.5,
|
||||
'isAvailable': true
|
||||
},
|
||||
'activeFaults': [],
|
||||
'setpointStatus': {
|
||||
'targetHeatTemperature': 17.5,
|
||||
'setpointMode': 'FollowSchedule'
|
||||
},
|
||||
'name': 'Main Room'
|
||||
}
|
||||
```
|
||||
If the Controller is set to **HeatingOff** (target temperature to minimum) or **Away** (target temperature to 12C), then the Zones will inherit that mode regardless of their own setpoint mode.
|
||||
|
||||
This data can be accessed in automations, etc., via a value template:
|
||||
If the Zone's temperature is changed, then it will be a **TemporaryOverride** that will revert to **FollowSchedule** at the next scheduled setpoint. Once this is done, the ZOne can be switched to **PermanentOverride** mode.
|
||||
|
||||
In Home Assistant, all this is done via `HVAC_MODE` and `PRESET_MODE`. However, the actual operating mode of these devices can be tracked via its state attributes, which includes a JSON data structure for current state called `status`.
|
||||
|
||||
For the Controller:
|
||||
{% raw %}
|
||||
```
|
||||
value_template: "{{ state_attr('climate.main_room', 'status').setpointStatus.setpointMode }}"
|
||||
value_template: "{{ state_attr('climate.main_room', 'status').systemModeStatus.mode }}"
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
For the Zones:
|
||||
{% raw %}
|
||||
```
|
||||
value_template: "{{ state_attr('climate.my_house', 'status').setpointStatus.setpointMode }}"
|
||||
```
|
||||
{% endraw %}
|
@ -72,8 +72,8 @@ keep_alive:
|
||||
description: Set a keep-alive interval. If set, the switch specified in the *heater* option will be triggered every time the interval elapses. Use with heaters and A/C units that shut off if they don't receive a signal from their remote for a while. Use also with switches that might lose state. The keep-alive call is done with the current valid climate integration state (either on or off).
|
||||
required: false
|
||||
type: [time, integer]
|
||||
initial_operation_mode:
|
||||
description: Set the initial operation mode. Valid values are `off` or `auto`. Value has to be double quoted. If this parameter is not set, it is preferable to set a *keep_alive* value. This is helpful to align any discrepancies between *generic_thermostat* and *heater* state.
|
||||
initial_hvac_mode:
|
||||
description: Set the initial HVAC mode. Valid values are `heat`, `cool` or `auto`. Value has to be double quoted. If this parameter is not set, it is preferable to set a *keep_alive* value. This is helpful to align any discrepancies between *generic_thermostat* and *heater* state.
|
||||
required: false
|
||||
type: string
|
||||
away_temp:
|
||||
@ -89,7 +89,7 @@ precision:
|
||||
|
||||
A full configuration example looks like the one below. `min_cycle_duration` and `keep_alive` must contain at least one of the following entries: `days:`, `hours:`, `minutes:`, `seconds:` or `milliseconds:`.
|
||||
|
||||
Currently the `generic_thermostat` climate platform supports 'heat', 'cool' and 'off' operation modes. You can force your `generic_thermostat` to avoid starting by setting Operation to 'off'.
|
||||
Currently the `generic_thermostat` climate platform supports 'heat', 'cool' and 'off' hvac modes. You can force your `generic_thermostat` to avoid starting by setting HVAC mode to 'off'.
|
||||
|
||||
Please note that changing Away Mode you will force a target temperature change as well that will get restored once the Away Mode is turned off.
|
||||
|
||||
@ -110,7 +110,7 @@ climate:
|
||||
seconds: 5
|
||||
keep_alive:
|
||||
minutes: 3
|
||||
initial_operation_mode: "off"
|
||||
initial_hvac_mode: "off"
|
||||
away_temp: 16
|
||||
precision: 0.1
|
||||
```
|
||||
|
@ -11,9 +11,11 @@ ha_release: 0.92
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
The `geniushub` integration links Home Assistant with your Genius Hub for controlling its Zones and Devices, and visibility of any Issues. Currently, there is no support for Zone schedules.
|
||||
The `geniushub` integration links Home Assistant with your Genius Hub CH/DHW system, including its Zones, Devices, and Issues.
|
||||
|
||||
It uses the [geniushub-client](https://pypi.org/project/geniushub-client/) library.
|
||||
Currently, there is no support for Zone schedules.
|
||||
|
||||
It uses the [geniushub](https://pypi.org/project/geniushub-client/) client library.
|
||||
|
||||
### Zones
|
||||
|
||||
@ -24,9 +26,16 @@ Each Zone controlled by your Genius hub will be exposed as either a:
|
||||
|
||||
Other Zone types, such as **On / Off** Zones, are not currently supported.
|
||||
|
||||
Each such entity will report back its mode, state, setpoint and current temperature; other properties are available via its attributes (see below).
|
||||
Each such entity will report back its mode, state, setpoint and current temperature; other properties are available via its attributes (see below). The Zone's mode can changed as below.
|
||||
|
||||
In addition, the entity's mode and setpoint can be changed. The entity's `operating_mode` can be set to one of `off`, `timer`, `on` (i.e. **Override** mode) or `eco`. The `eco` mode is a proxy for the **Footprint** mode and so is only available to **Radiator** Zones that have room sensors.
|
||||
GH mode | HA Operation | HA Preset
|
||||
:---: | :---: | :---:
|
||||
**Off** | Off | N/A
|
||||
**Timer** | Heat | None
|
||||
**Override** | Heat | Boost
|
||||
**Footprint** | Heat | Activity
|
||||
|
||||
Note that **Footprint** mode is only available to **Radiator** Zones that have room sensors.
|
||||
|
||||
### Devices
|
||||
|
||||
@ -96,7 +105,7 @@ value_template: "{{ state_attr('climate.main_room', 'status').occupied }}"
|
||||
|
||||
## Configuration
|
||||
|
||||
To add your Genius Hub into your Home Assistant installation, add one of the following to your `configuration.yaml` file.
|
||||
To set up this integration, add one of the following to your **configuration.yaml** file.
|
||||
|
||||
### Option 1: hub token only
|
||||
|
||||
@ -116,6 +125,8 @@ geniushub:
|
||||
- uses the v3 API - unofficial, but there are additional features (e.g., battery levels)
|
||||
- polls the hub directly (so is faster, say ~1s response time)
|
||||
|
||||
The hub does not have to be in the same network as HA.
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry, directly polling the Hub
|
||||
geniushub:
|
||||
@ -124,8 +135,6 @@ geniushub:
|
||||
password: GENIUS_HUB_PASSWORD
|
||||
```
|
||||
|
||||
Note that if a `host` is used instead of `token`, then the `username` and `password` are also required.
|
||||
|
||||
{% configuration %}
|
||||
token:
|
||||
description: The Hub Token of the Genius Hub.
|
||||
@ -144,3 +153,5 @@ password:
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
Note that if a `host` is used instead of `token`, then the `username` and `password` are also required.
|
||||
|
@ -196,7 +196,7 @@ Currently, the following domains are available to be used with Google Assistant,
|
||||
- lock (lock/unlock (to allow assistant to unlock, set the `allow_unlock` key in configuration))
|
||||
- cover (on/off/set position)
|
||||
- media_player (on/off/set volume (via set volume)/source (via set input source))
|
||||
- climate (temperature setting, operation_mode)
|
||||
- climate (temperature setting, hvac_mode)
|
||||
- vacuum (dock/start/stop/pause)
|
||||
- sensor (temperature setting, only for temperature sensor)
|
||||
|
||||
@ -247,7 +247,7 @@ The request_sync service may fail with a 404 if the project_id of the Homegraph
|
||||
3. Enable Homegraph API to the new project.
|
||||
4. Generate a new API key.
|
||||
5. Again, create a new project in the [Actions on Google console](https://console.actions.google.com/). Described above. But at the step 'Build under the Actions SDK box' choose your newly created project. By this, they share the same `project_id`.
|
||||
|
||||
|
||||
Syncing may also fail after a period of time, likely around 30 days, due to the fact that your Actions on Google app is techincally in testing mode and has never been published. Eventually, it seems that the test expires. Control of devices will continue to work but syncing may not. If you say "Ok Google, sync my devices" and get the response "Unable to sync Home Assistant", this can usually be resolved by going back to your test app in the [Actions on Google console](https://console.actions.google.com/) and clicking `Simulator` under `TEST`. Regenerate the draft version Test App and try asking Google to sync your devices again.
|
||||
|
||||
### Troubleshooting with NGINX
|
||||
|
@ -10,7 +10,7 @@ The `google_cloud` platform allows you to use [Google Cloud Platform](https://cl
|
||||
|
||||
## Configuration
|
||||
|
||||
To use Google Cloud Platform, you need to provide `config` directory relative path of [`API key`](#obtaining-api-key) file you are going to use. Place it under `config` folder and set `key_file` parameter in `configuration.yaml`:
|
||||
To use Google Cloud Platform, you need to provide `config` directory relative path of [`API key`](#obtaining-an-api-key) file you are going to use. Place it under `config` folder and set `key_file` parameter in `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
@ -68,11 +68,11 @@ The Cloud Text-to-Speech API is priced monthly based on the amount of characters
|
||||
|
||||
{% configuration %}
|
||||
key_file:
|
||||
description: "The [`API key`](#obtaining-api-key) file to use with Google Cloud Platform. If not specified `os.environ['GOOGLE_APPLICATION_CREDENTIALS']` path will be used."
|
||||
description: "The [`API key`](#obtaining-an-api-key) file to use with Google Cloud Platform. If not specified `os.environ['GOOGLE_APPLICATION_CREDENTIALS']` path will be used."
|
||||
required: false
|
||||
type: string
|
||||
language:
|
||||
description: "Default language of the voice, e.g. `en-US`. Supported languages, genders and voices listed [here](https://cloud.google.com/text-to-speech/docs/voices)."
|
||||
description: "Default language of the voice, e.g. `en-US`. Supported languages, genders and voices listed [here](https://cloud.google.com/text-to-speech/docs/voices). Also there are extra not documented but supported languages (see dropdown [here](https://cloud.google.com/text-to-speech/#streaming_demo_section))."
|
||||
required: false
|
||||
type: string
|
||||
default: en-US
|
||||
@ -89,7 +89,7 @@ encoding:
|
||||
description: "Default audio encoder. Supported encodings are `ogg_opus`, `mp3` and `linear16`."
|
||||
required: false
|
||||
type: string
|
||||
default: ogg_opus
|
||||
default: mp3
|
||||
speed:
|
||||
description: "Default rate/speed of the voice, in the range [0.25, 4.0]. 1.0 is the normal native speed supported by the specific voice. 2.0 is twice as fast, and 0.5 is half as fast. If unset(0.0), defaults to the native 1.0 speed."
|
||||
required: false
|
||||
|
@ -67,15 +67,14 @@ The platform supports the following Hive products:
|
||||
|
||||
## Climate
|
||||
|
||||
The `hive` climate platform integrates your Hive thermostat and hot water into Home Assistant, enabling control of setting the **mode** and setting the **target temperature**.
|
||||
The `hive` climate platform integrates your Hive thermostat into Home Assistant, enabling control of setting the **mode** and setting the **target temperature**.
|
||||
|
||||
A short boost for Hive Heating or Hive Hot water can be set by using the **Aux Heat** function, this will turn on the boost feature for Hive Heating or Hive Hot water for 30 minutes at 0.5 degrees higher than the current temperature.
|
||||
A short boost for Hive Heating can be set by using the **Boost** preset, this will turn on the boost feature for 30 minutes at 0.5 degrees higher than the current temperature.
|
||||
|
||||
The platform supports the following Hive products:
|
||||
|
||||
- Hive Active Heating
|
||||
- Hive Multizone
|
||||
- Hot water control
|
||||
|
||||
## Light
|
||||
|
||||
|
@ -10,36 +10,37 @@ redirect_from:
|
||||
- /components/climate.honeywell/
|
||||
---
|
||||
|
||||
The `honeywell` climate platform lets you control Honeywell TCC (Total Connect Comfort) climate systems from Home Assistant. It does not integrate with Honeywell TCC alarm systems.
|
||||
The `honeywell` climate platform integrates Home Assistant with _US-based_ [Honeywell Total Connect Comfort (TCC)](https://mytotalconnectcomfort.com/portal/]) climate systems.
|
||||
|
||||
It does not support the home security functionality of TCC.
|
||||
|
||||
It uses the [somecomfort](https://github.com/kk7ds/somecomfort) client library.
|
||||
|
||||
<div class='note'>
|
||||
There is some potential confusion over this integration because it was previously implemented as a combination of two _distinct_ climate systems, one being US-based, the other EU-based.
|
||||
|
||||
There is some potential confusion over this integration because it is currently implemented as a combination of two _distinct_ climate systems, one being US-based, the other is EU-based.
|
||||
These two regions are _not_ interchangeable, and the `eu` region is now deprecated. Ongoing support for such systems is available via the [evohome](/components/evohome/) integration.
|
||||
</div>
|
||||
|
||||
These two regions are _not_ interchangeable, so you must be clear which applies to your climate system.
|
||||
|
||||
</p>
|
||||
|
||||
## US-based Systems
|
||||
### US-based Systems
|
||||
|
||||
These systems are based in North America, and temperatures are usually in Fahrenheit. They would likely be HVAC systems. They always use the [somecomfort](https://github.com/kk7ds/somecomfort) client library. In this integration, this is called the `us` region.
|
||||
|
||||
If your system is US-based, then you can access your system via [https://mytotalconnectcomfort.com/portal/](https://mytotalconnectcomfort.com/portal/) (note the `/portal/`).
|
||||
|
||||
## EU-based Systems
|
||||
### EU-based Systems
|
||||
|
||||
These systems are based in Europe (including the UK & Ireland), and temperatures are usually in Celsius. They would likely be heating-only systems. They always use the [evohome-client](https://github.com/watchforstock/evohome-client) client library. In this integration, this is called the `eu` region.
|
||||
|
||||
If your system is US-based, then you can access it via [https://international.mytotalconnectcomfort.com/](https://international.mytotalconnectcomfort.com/) (note the `international`).
|
||||
|
||||
The `eu` region is soon to be deprecated, and ongoing support for such systems is available via the [evohome](/components/evohome/) integration.
|
||||
If your system is EU-based, then you can access it via [https://international.mytotalconnectcomfort.com/](https://international.mytotalconnectcomfort.com/) (note the `international`).
|
||||
|
||||
## Configuration
|
||||
|
||||
To set up this integration, first confirm your region, then add the following information to your **configuration.yaml** file (the below example is for US-based systems):
|
||||
To set up this integration, add the following to the `climate:` section of your **configuration.yaml** file:
|
||||
|
||||
```yaml
|
||||
climate:
|
||||
# Example configuration.yaml entry
|
||||
- platform: honeywell
|
||||
username: YOUR_USERNAME
|
||||
password: YOUR_PASSWORD
|
||||
@ -56,22 +57,17 @@ password:
|
||||
required: true
|
||||
type: string
|
||||
region:
|
||||
description: Region identifier, either 'eu' or 'us'.
|
||||
required: false
|
||||
default: eu
|
||||
description: Region identifier.
|
||||
required: true
|
||||
default: us
|
||||
type: string
|
||||
away_temperature:
|
||||
description: "(*only for the EU region*) Heating setpoint when away mode is on, in degrees Celsius."
|
||||
required: false
|
||||
default: 16.0
|
||||
type: float
|
||||
away_cool_temperature:
|
||||
description: "(*only for the US region*) Cooling setpoint when away mode is on, in degrees Fahrenheit."
|
||||
description: "Cooling setpoint when away mode is on, in degrees Fahrenheit."
|
||||
required: false
|
||||
default: 88
|
||||
type: integer
|
||||
away_heat_temperature:
|
||||
description: "(*only for the US region*) Heating setpoint when away mode is on, in degrees Fahrenheit."
|
||||
description: "Heating setpoint when away mode is on, in degrees Fahrenheit."
|
||||
required: false
|
||||
default: 61
|
||||
type: integer
|
||||
|
@ -11,17 +11,25 @@ ha_release: 0.93
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
The `incomfort` integration links Home Assistant with your Intergas Lan2RF gateway for integrating the boiler and any room thermostats attached to it.
|
||||
The `incomfort` integration links Home Assistant with your Intergas Lan2RF gateway, including the boiler and any room thermostats attached to it.
|
||||
|
||||
The boiler is represented as a **Water Heater** device. It will report the boiler's `state` and `temperature` (current temperature). The gateway does not expose any means to directly control the boiler or change its configuration.
|
||||
It uses the [incomfort](https://pypi.org/project/incomfort-client/) client library.
|
||||
|
||||
Note that the `temperature` will switch between the CV and Tap temperatures according to the current operating mode of the boiler. If the boiler is neither pumping nor tapping, it will be reported as the higher of the two.
|
||||
### Boiler
|
||||
|
||||
Any room thermostats (there can be 0, 1 or 2) are represented as **Climate** devices. They will report the thermostat's `target_temperature` (setpoint) and `current_temperature` and the setpoint can be changed.
|
||||
The boiler is represented as a **Water Heater** device. It will report the boiler's `state` and `current_temperature`. The gateway does not expose any means to directly control the boiler or change its configuration.
|
||||
|
||||
Note that the `current_temperature` will switch between the CV (circulating volume) and Tap temperatures according to the current operating mode of the boiler. If the boiler is neither pumping nor tapping, it will be reported as the higher of the two.
|
||||
|
||||
In addition, there is a **Sensor** for CV pressure, CV temperature, and Tap temperature, and a **Binary Sensor** that will be `on` if there is a fault with the boiler (the fault code will be a state attribute).
|
||||
|
||||
To send an alert if the CV pressure is too low or too high, consider the following automation:
|
||||
### Rooms
|
||||
|
||||
Any room thermostats (there can be 0, 1 or 2) are represented as **Climate** devices. They will report the thermostat's `temperature` (setpoint) and `current_temperature` and the setpoint can be changed.
|
||||
|
||||
## Automation
|
||||
|
||||
To send an alert if the CV pressure is too low or too high, consider the following example:
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
@ -42,9 +50,13 @@ To send an alert if the CV pressure is too low or too high, consider the followi
|
||||
|
||||
Other properties are available via each device's attributes.
|
||||
|
||||
### Configuration
|
||||
## Configuration
|
||||
|
||||
To add your Lan2RF gateway into your Home Assistant installation, add one of the following to your `configuration.yaml` file.
|
||||
To set up this integration, add the following to your **configuration.yaml** file:
|
||||
|
||||
The hub does not have to be in the same network as HA.
|
||||
|
||||
### Older gateways
|
||||
|
||||
Older gateways do not require user authentication:
|
||||
|
||||
@ -54,6 +66,8 @@ incomfort:
|
||||
host: IP_ADDRESS
|
||||
```
|
||||
|
||||
### Newer gateways
|
||||
|
||||
Alternatively, if a **username** & **password** is printed on the back of the gateway:
|
||||
|
||||
```yaml
|
||||
@ -64,8 +78,6 @@ incomfort:
|
||||
password: PASSWORD
|
||||
```
|
||||
|
||||
The hub does not have to be in the same network as HA.
|
||||
|
||||
{% configuration %}
|
||||
host:
|
||||
description: The hostname/IP address of the Lan2RF gateway.
|
||||
|
@ -76,12 +76,15 @@ Assistant stopping as long as your entity does **not** have a set value for
|
||||
|
||||
### Services
|
||||
|
||||
This integration provides a service to modify the state of the `input_datetime`.
|
||||
Available service: `input_datetime.set_datetime`.
|
||||
|
||||
| Service | Data | Description |
|
||||
| ----- | ----- | ----- |
|
||||
| `set_datetime` | `time` | This can be used to dynamically set the time.
|
||||
| `set_datetime` | `date` | This can be used to dynamically set the date.
|
||||
Service data attribute | Format String | Description
|
||||
-|-|-
|
||||
`date` | `%Y-%m-%d` | This can be used to dynamically set the date.
|
||||
`time` | `%H:%M:%S` | This can be used to dynamically set the time.
|
||||
`datetime` | `%Y-%m-%d %H:%M:%S` | This can be used to dynamically set both the date & time.
|
||||
|
||||
To set both the date and time in the same call, use `date` and `time` together, or use `datetime` by itself. Using `datetime` has the advantage that both can be set using one template.
|
||||
|
||||
## Automation Examples
|
||||
|
||||
@ -104,8 +107,8 @@ automation:
|
||||
{% endraw %}
|
||||
|
||||
To dynamically set the `input_datetime` you can call
|
||||
`input_datetime.set_datetime`. The values for `date` and `time` must be in a certain format for the call to be successful.
|
||||
You can use either `strftime("%Y-%m-%d")`/`strftime("%H:%M:%S")` or `timestamp_custom("%Y-%m-%d", true)`/`timestamp_custom("%H:%M:%S", true)` filter respectively.
|
||||
`input_datetime.set_datetime`. The values for `date` and `time` must be in a certain format for the call to be successful. (See service description above.)
|
||||
If you have a `datetime` object you can use its `strftime` method. Of if you have a timestamp you can use the `timestamp_custom` filter.
|
||||
The following example can be used in an automation rule:
|
||||
|
||||
{% raw %}
|
||||
@ -125,14 +128,20 @@ automation:
|
||||
- service: input_datetime.set_datetime
|
||||
entity_id: input_datetime.another_time
|
||||
data_template:
|
||||
time: '{{ now().strftime("%H:%M:%S") }}'
|
||||
time: "{{ now().strftime('%H:%M:%S') }}"
|
||||
- service: input_datetime.set_datetime
|
||||
entity_id: input_datetime.another_date
|
||||
data_template:
|
||||
- service: input_datetime.set_datetime
|
||||
date: "{{ as_timestamp(now())|timestamp_custom('%Y-%m-%d') }}"
|
||||
- service: input_datetime.set_datetime
|
||||
entity_id: input_datetime.date_and_time
|
||||
data_template:
|
||||
entity_id: input_datetime.date_and_time
|
||||
{{ now().timestamp() | timestamp_custom("%Y-%m-%d", true) }}
|
||||
datetime: "{{ now().strftime('%Y-%m-%d %H:%M:%S') }}"
|
||||
- service: input_datetime.set_datetime
|
||||
data_template:
|
||||
entity_id: input_datetime.date_and_time
|
||||
date: >
|
||||
{{ now().timestamp() | timestamp_custom("%Y-%m-%d", true) }}
|
||||
time: >
|
||||
{{ now().timestamp() | timestamp_custom("%H:%M:%S", true) }}
|
||||
```
|
||||
|
@ -252,6 +252,25 @@ light:
|
||||
address: 1a2b3c
|
||||
```
|
||||
|
||||
### INSTEON Scenes
|
||||
|
||||
Trigger an INSTEON scene on or off is done via automations. Two services are provided to support this feature:
|
||||
|
||||
- **insteon.scene_on**
|
||||
- **group**: (required) The INSTEON scene number to trigger.
|
||||
- **insteon.scene_off**
|
||||
- **group**: (required) The INSTEON scene to turn off
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
# Trigger an INSTEON scene 25
|
||||
- id: trigger_scene_25_on
|
||||
alias: Turn on scene 25
|
||||
action:
|
||||
- service: insteon.scene_on
|
||||
group: 25
|
||||
```
|
||||
|
||||
### Events and Mini-Remotes
|
||||
|
||||
Mini-Remote devices do not appear as Home Assistant entities, they generate events. The following events are available:
|
||||
@ -259,7 +278,7 @@ Mini-Remote devices do not appear as Home Assistant entities, they generate even
|
||||
- **insteon.button_on**
|
||||
- **address**: (required) The Insteon device address in lower case without dots (e.g., 1a2b3c)
|
||||
- **button**: (Optional) The button id in lower case. For a 4-button remote the values are `a` to `d`. For an 8 button remote the values are `a` to `g`. For a one-button remote this field is not used.
|
||||
- **insteon.button_of**
|
||||
- **insteon.button_off**
|
||||
- **address**: (required) The Insteon device address in lower case without dots (e.g., 1a2b3c)
|
||||
- **button**: (Optional) The button id in lower case. For a 4-button remote the values are a to d. For an 8 button remote the values are `a` to `g`. For a one-button remote this field is not used.
|
||||
|
||||
@ -268,33 +287,37 @@ This allows the mini-remotes to be configured as triggers for automations. Here
|
||||
```yaml
|
||||
automation:
|
||||
# 4 or 8 button remote with button c pressed
|
||||
trigger:
|
||||
platform: event
|
||||
event_type: insteon.button_on
|
||||
- id: light_on
|
||||
alias: Turn a light on
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: insteon.button_on
|
||||
event_data:
|
||||
address: 1a2b3c
|
||||
button: c
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: light.some_light
|
||||
state: 'off'
|
||||
action:
|
||||
service: light.turn_on
|
||||
entity_id: light.some_light
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: light.some_light
|
||||
state: 'off'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id: light.some_light
|
||||
|
||||
# single button remote
|
||||
trigger:
|
||||
platform: event
|
||||
event_type: insteon.button_on
|
||||
- id: light_off
|
||||
alias: Turn a light off
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: insteon.button_on
|
||||
event_data:
|
||||
address: 1a2b3c
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: light.some_light
|
||||
state: 'off'
|
||||
action:
|
||||
service: light.turn_on
|
||||
entity_id: light.some_light
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: light.some_light
|
||||
state: 'off'
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id: light.some_light
|
||||
```
|
||||
|
||||
### Known Issues with the INSTEON Hub
|
||||
|
@ -86,6 +86,8 @@ sensors:
|
||||
description: The time of havdalah for either the current Shabbat OR Yom Tov, or the immediately upcoming Shabbat OR Yom Tov. If, for example, today is Sunday, and Rosh Hashana is Monday night through Wednesday night, this reports the havdalah for Rosh Hashana on Wednesday night. To always get the Shabbat times, use the upcoming_shabbat_havdalah sensor.
|
||||
issur_melacha_in_effect:
|
||||
description: A boolean sensor indicating if melacha is currently not permitted. The value is true when it is currently Shabbat or Yom Tov and false otherwise.
|
||||
omer_count:
|
||||
description: An integer sensor indicating the day of the Omer (1-49) or 0 if it is not currently the Omer.
|
||||
|
||||
{% endconfiguration %}
|
||||
|
||||
|
@ -8,7 +8,6 @@ ha_release: 0.24
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
|
||||
The [KNX](https://www.knx.org) integration for Home Assistant allows you to connect to a KNX/IP devices.
|
||||
|
||||
The integration requires a local KNX/IP interface like the [Weinzierl 730](https://www.weinzierl.de/index.php/en/all-knx/knx-devices-en/produktarchiv-en/knx-ip-interface-730-en). Through this, it will send and receive commands to and from other devices to the KNX bus.
|
||||
|
@ -310,10 +310,10 @@ The following conditions are available by device:
|
||||
- security\_state: `ok` or `deter`. [Security State](#security-state). Only available when Nest Camera exists.
|
||||
- Nest Thermostat:
|
||||
- humidity
|
||||
- operation\_mode
|
||||
- preset\_mode
|
||||
- temperature
|
||||
- target
|
||||
- hvac\_state: The currently active state of the HVAC system, `heat`, `cool` or `off` (previously `heating`, `cooling` or `off`).
|
||||
- hvac\_mode: The currently active state of the HVAC system, `heat`, `cool` or `off` (previously `heating`, `cooling` or `off`).
|
||||
- Nest Protect:
|
||||
- co\_status: `Ok`, `Warning` or `Emergency`
|
||||
- smoke\_status: `Ok`, `Warning` or `Emergency`
|
||||
|
@ -312,14 +312,7 @@ climate:
|
||||
The `netatmo` sensor platform is consuming the information provided by a [Netatmo Weather Station](https://www.netatmo.com/en-us/weather/weatherstation), a
|
||||
[Netatmo Home Coach](https://www.netatmo.com/en-us/aircare/homecoach) [Netatmo](https://www.netatmo.com) device or the public sensors of others available via the [Netatmo API](https://weathermap.netatmo.com/) even if you don't own a Netatmo device.
|
||||
|
||||
Public sensors have to be set up manually. Currently the following conditions are supported for the public sensors:
|
||||
|
||||
* temperature
|
||||
* pressure
|
||||
* humidity
|
||||
* rain
|
||||
* windstrength
|
||||
* guststrength
|
||||
Public sensors have to be set up manually.
|
||||
|
||||
## Advanced sensor configuration
|
||||
|
||||
@ -332,11 +325,8 @@ sensor:
|
||||
- platform: netatmo
|
||||
station: STATION_NAME
|
||||
modules:
|
||||
module_name1:
|
||||
- temperature
|
||||
module_name2:
|
||||
- temperature
|
||||
- battery_vp
|
||||
- module_name1
|
||||
- module_name2
|
||||
|
||||
# Public sensor
|
||||
- platform: netatmo
|
||||
@ -345,13 +335,6 @@ sensor:
|
||||
lon_ne: -73.735
|
||||
lat_sw: 40.552
|
||||
lon_sw: -74.105
|
||||
monitored_conditions:
|
||||
- temperature
|
||||
- pressure
|
||||
- humidity
|
||||
- rain
|
||||
- windstrength
|
||||
- guststrength
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
@ -368,45 +351,6 @@ modules:
|
||||
type: list
|
||||
required: true
|
||||
description: Name of the module.
|
||||
keys:
|
||||
temperature:
|
||||
description: Current temperature.
|
||||
co2:
|
||||
description: CO2 concentration in ppm.
|
||||
pressure:
|
||||
description: Pressure in mbar.
|
||||
noise:
|
||||
description: Noise level in dB.
|
||||
humidity:
|
||||
description: "Humidity in %."
|
||||
health_idx:
|
||||
description: "Air health as one of the values Healthy, Fine, Fair, Poor, Unhealthy."
|
||||
rain:
|
||||
description: Estimated rainfall for today in mm.
|
||||
sum_rain_1:
|
||||
description: Rainfall in the last hour in mm.
|
||||
sum_rain_24:
|
||||
description: "Rainfall in mm from 00:00am - 23:59pm."
|
||||
windangle:
|
||||
description: Wind angle
|
||||
windstrength:
|
||||
description: Wind strength
|
||||
gustangle:
|
||||
description: Wind gust angle
|
||||
guststrength:
|
||||
description: Wind gust strength
|
||||
min_temp:
|
||||
description: Min temperature for today
|
||||
max_temp:
|
||||
description: Max temperature for today
|
||||
rf_status:
|
||||
description: "Current radio status per module. (90=low, 60=highest)"
|
||||
wifi_status:
|
||||
description: Wifi status per Base station
|
||||
battery_vp:
|
||||
description: Current battery status per module.
|
||||
battery_percent:
|
||||
description: Percentage of battery remaining per module.
|
||||
areas:
|
||||
description: The list contains one or more areas to add as sensors.
|
||||
required: false
|
||||
@ -428,10 +372,6 @@ areas:
|
||||
description: Longitude of south-western corner of area.
|
||||
required: true
|
||||
type: string
|
||||
monitored_conditions:
|
||||
description: List of environment conditions to monitor.
|
||||
required: true
|
||||
type: list
|
||||
name:
|
||||
description: Name of the sensor.
|
||||
required: false
|
||||
|
41
source/_components/notion.markdown
Normal file
@ -0,0 +1,41 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Notion"
|
||||
description: "How to integrate Notion kits within Home Assistant."
|
||||
date: 2019-06-19 20:52
|
||||
sidebar: true
|
||||
comments: false
|
||||
logo: notion.png
|
||||
ha_category:
|
||||
- Hub
|
||||
- Binary Sensor
|
||||
- Sensor
|
||||
ha_release: 0.96
|
||||
ha_iot_class: Cloud Polling
|
||||
---
|
||||
|
||||
The `Notion` component retrieves data from [Notion](https://getnotion.com) wireless
|
||||
home monitoring sensor kits.
|
||||
|
||||
## Configuration
|
||||
|
||||
To add your Notion kits to your Home Assistant installation, add the following to your
|
||||
`configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
notion:
|
||||
username: YOUR_EMAIL_ADDRESS
|
||||
password: YOUR_PASSWORD
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
username:
|
||||
description: An email address for an active Notion account.
|
||||
required: true
|
||||
type: string
|
||||
password:
|
||||
description: The password for the account.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
@ -57,12 +57,10 @@ The NuHeat Thermostat supports the following key concepts.
|
||||
|
||||
The `target temperature` is the temperature that the device attempts to achieve. The target temperature is either determined by the schedule programmed into the thermostat (`auto mode`) or may be overridden. When the target temperature is set by Home Assistant, the thermostat will hold this temperature until the schedule is resumed.
|
||||
|
||||
|
||||
## Attributes
|
||||
|
||||
The following attributes are provided by the NuHeat thermostat: `name`, `temperature_unit`, `current_temperature`, `target_temperature`, `current_hold_mode`, `current_operation`, `operation_list`, `min_temp` and `max_temp`.
|
||||
|
||||
|
||||
### Attribute `name`
|
||||
|
||||
Returns the name of the NuHeat Thermostat.
|
||||
@ -96,7 +94,7 @@ not in auto operation mode.
|
||||
| ---------------| ----------- |
|
||||
| Integer | Target temperature
|
||||
|
||||
### Attribute `current_hold_mode`
|
||||
### Attribute `preset_mode`
|
||||
|
||||
Returns the current temperature hold, if any.
|
||||
|
||||
@ -104,21 +102,21 @@ Returns the current temperature hold, if any.
|
||||
| ---------------| ----------- |
|
||||
| String | 'temperature', 'temporary_temperature', 'auto', etc.
|
||||
|
||||
### Attribute `current_operation`
|
||||
### Attribute `hvac_action`
|
||||
|
||||
Returns the current operation of the thermostat.
|
||||
Returns the current HVAC mode of the thermostat.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| String | 'heat', 'idle'
|
||||
|
||||
### Attribute `operation_list`
|
||||
### Attribute `preset_modes`
|
||||
|
||||
Returns the list of available operation modes.
|
||||
Returns the list of available preset modes.
|
||||
|
||||
| Attribute type | Description |
|
||||
| ---------------| ----------- |
|
||||
| List of String | Available operation modes
|
||||
| List of String | Available preset modes
|
||||
|
||||
### Attribute `min_temp`
|
||||
|
||||
@ -136,12 +134,11 @@ Returns the maximum supported temperature by the thermostat
|
||||
| ---------------| ----------- |
|
||||
| Integer | Maximum supported temperature
|
||||
|
||||
|
||||
## Services
|
||||
|
||||
The following services are provided by the NuHeat Thermostat: `set_temperature`, `set_hold_mode`, `nuheat_resume_program`.
|
||||
The following services are provided by the NuHeat Thermostat: `set_temperature`, `set_hvac_mode`, `set_preset_mode`, `resume_program`.
|
||||
|
||||
The services `fan_min_on_time`, `set_aux_heat`, `set_away_mode`, `set_humidity`, `set_fan_mode`, `set_operation_mode` and `set_swing_mode` offered by the [Climate component](/components/climate/) are not implemented for this thermostat.
|
||||
The services `fan_min_on_time`, `set_aux_heat`, `set_away_mode`, `set_humidity`, `set_fan_mode`, and `set_swing_mode` offered by the [Climate component](/components/climate/) are not implemented for this thermostat.
|
||||
|
||||
### Service `set_temperature`
|
||||
|
||||
@ -155,16 +152,16 @@ Puts the thermostat into an indefinite hold at the given temperature.
|
||||
Only the target temperatures relevant for the current operation mode need to
|
||||
be provided.
|
||||
|
||||
### Service `set_hold_mode`
|
||||
### Service `set_preset_mode`
|
||||
|
||||
Sets the thermostat's hold mode. The NuHeat thermostat supports "auto" (to run the thermostat's programmed schedule), "temperature" (to indefinitely hold the thermostat's current target temperature), or "temporary_temperature" (to hold the thermostat's current target temperature until the thermostat's next scheduled event).
|
||||
Sets the thermostat's preset mode. Without a preset mode set it run the thermostat's programmed schedule, "temperature" (to indefinitely hold the thermostat's current target temperature), or "temporary_temperature" (to hold the thermostat's current target temperature until the thermostat's next scheduled event).
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | String or list of strings that point at `entity_id`'s of climate devices to control. Else targets all.
|
||||
| `hold_mode` | no | New value of hold mode.
|
||||
|
||||
### Service `nuheat_resume_program`
|
||||
### Service `resume_program`
|
||||
|
||||
Resumes the currently active schedule.
|
||||
|
||||
|
@ -12,7 +12,7 @@ redirect_from:
|
||||
|
||||
This platform supports the ESP8266 based "WiFi MQTT Relay / Thermostat" sold by [OpenEnergyMonitor](https://shop.openenergymonitor.com/wifi-mqtt-relay-thermostat/). The underlying [library](http://oemthermostat.readthedocs.io/) only supports this single relay variant of the [original device](https://harizanov.com/2014/12/wifi-iot-3-channel-relay-board-with-mqtt-and-http-api-using-esp8266/).
|
||||
|
||||
This platform controls the setpoint of the thermostat in its "manual" mode, therefore there is a configuration option the away setpoint.
|
||||
This platform controls the setpoint of the thermostat in its "manual" mode.
|
||||
|
||||
To set it up, add the following information to your `configuration.yaml` file:
|
||||
|
||||
@ -46,9 +46,4 @@ password:
|
||||
description: Password for the web interface if set.
|
||||
required: inclusive
|
||||
type: string
|
||||
away_temp:
|
||||
description: Setpoint for the thermostat in away mode.
|
||||
required: false
|
||||
default: 14.0
|
||||
type: float
|
||||
{% endconfiguration %}
|
||||
|
@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "OpenTherm Gateway Hub"
|
||||
title: "OpenTherm Gateway"
|
||||
description: "Control your OpenTherm Gateway from Home Assistant."
|
||||
logo: opentherm.png
|
||||
ha_category:
|
||||
@ -17,13 +17,13 @@ redirect_from:
|
||||
|
||||
The `opentherm_gw` integration is used to control the [OpenTherm Gateway](http://otgw.tclcode.com/) from Home Assistant.
|
||||
|
||||
There is currently support for the following device types within Home Assistant:
|
||||
The following device types are currently supported within Home Assistant:
|
||||
|
||||
- Binary Sensor
|
||||
- Climate
|
||||
- Sensor
|
||||
|
||||
When enabled, this integration will automatically add its [`climate` entity](/components/climate.opentherm_gw) to Home Assistant.
|
||||
This integration will add a single `climate` entity and multiple `sensor` and `binary_sensor` entities to Home Assistant for each configured gateway.
|
||||
|
||||
<div class='note'>
|
||||
The OpenTherm protocol is based on polling. The thermostat sends requests to the boiler at specific intervals. As a result, it may take some time for changes to propagate between Home Assistant and the thermostat.
|
||||
@ -31,251 +31,51 @@ The OpenTherm protocol is based on polling. The thermostat sends requests to the
|
||||
|
||||
# Configuration
|
||||
|
||||
In this example, one gateway is configured with `gateway_id` `living_room`.
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
opentherm_gw:
|
||||
device: /dev/ttyUSB0
|
||||
living_room:
|
||||
device: /dev/ttyUSB0
|
||||
```
|
||||
|
||||
Each configured gateway accepts the following configuration options.
|
||||
{% configuration %}
|
||||
device:
|
||||
description: "Path to OpenTherm Gateway device as supported by [PySerial](https://pythonhosted.org/pyserial/url_handlers.html)."
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: "The friendly name used for the entities added for the gateway."
|
||||
required: false
|
||||
type: string
|
||||
default: "The `gateway_id` of the gateway."
|
||||
climate:
|
||||
description: "Settings for the `opentherm_gw` climate entity."
|
||||
required: false
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: "The name for the device within Home Assistant."
|
||||
required: false
|
||||
type: string
|
||||
default: "OpenTherm Gateway"
|
||||
precision:
|
||||
description: "The desired precision for this device. Can be used to match your actual thermostat's precision. Supported values are `0.1`, `0.5` and `1.0`."
|
||||
required: false
|
||||
type: float
|
||||
default: "`0.5` for Celsius and `1.0` for Fahrenheit."
|
||||
floor_temperature:
|
||||
description: "Some thermostats round all temperatures down to the lower value according to their precision. Default behavior for Home Assistant is to round temperatures to the nearest value. Set this to `true` to override Home Assistant and round to the lower value according to the configured `precision`."
|
||||
description: "Some thermostats round all temperatures down to the lower value according to their precision. Default behavior for Home Assistant is to round temperatures to the nearest value. Set this to `true` to override this behavior and round to the lower value according to the configured `precision`."
|
||||
required: false
|
||||
type: boolean
|
||||
default: false
|
||||
monitored_variables:
|
||||
description: "A list of variables to expose as sensors."
|
||||
required: false
|
||||
type: list
|
||||
keys:
|
||||
burner_hours:
|
||||
description: Boiler flame on time.
|
||||
burner_starts:
|
||||
description: Number of burner starts.
|
||||
ch_pump_hours:
|
||||
description: Central heating pump running time.
|
||||
ch_pump_starts:
|
||||
description: Number of central heating pump starts.
|
||||
ch_water_pressure:
|
||||
description: Central heating water pressure.
|
||||
ch_water_temp:
|
||||
description: Central heating water temperature.
|
||||
ch_water_temp_2:
|
||||
description: Central heating 2 water temperature.
|
||||
control_setpoint:
|
||||
description: Central heating water target temperature.
|
||||
control_setpoint_2:
|
||||
description: Central heating 2 water target temperature.
|
||||
cooling_control:
|
||||
description: Cooling control signal value.
|
||||
dhw_burner_hours:
|
||||
description: Hot water flame on time.
|
||||
dhw_burner_starts:
|
||||
description: Number of hot water burner starts.
|
||||
dhw_flow_rate:
|
||||
description: Hot water flow rate.
|
||||
dhw_pump_hours:
|
||||
description: Hot water pump running time.
|
||||
dhw_pump_starts:
|
||||
description: Number of hot water pump starts.
|
||||
dhw_setpoint:
|
||||
description: Hot water target temperature.
|
||||
dhw_temp:
|
||||
description: Hot water temperature.
|
||||
dhw_temp_2:
|
||||
description: Hot water 2 temperature.
|
||||
exhaust_temp:
|
||||
description: Boiler exhaust temperature.
|
||||
master_ch2_enabled:
|
||||
description: Thermostat requests central heating 2 on.
|
||||
master_ch_enabled:
|
||||
description: Thermostat requests central heating on.
|
||||
master_cooling_enabled:
|
||||
description: Thermostat requests cooling.
|
||||
master_dhw_enabled:
|
||||
description: Thermostat requests hot water to be heated.
|
||||
master_memberid:
|
||||
description: Thermostat member ID.
|
||||
master_ot_version:
|
||||
description: Thermostat OpenTherm protocol version.
|
||||
master_otc_enabled:
|
||||
description: Thermostat is using outside temperature correction.
|
||||
master_product_type:
|
||||
description: Thermostat product type.
|
||||
master_product_version:
|
||||
description: Thermostat product version.
|
||||
max_ch_setpoint:
|
||||
description: Boiler maximum central heating water temperature.
|
||||
oem_diag:
|
||||
description: OEM diagnostic information.
|
||||
otgw_about:
|
||||
description: OpenTherm Gateway firmware version.
|
||||
otgw_build:
|
||||
description: OpenTherm Gateway firmware build date and time.
|
||||
otgw_clockmhz:
|
||||
description: OpenTherm Gateway firmware design clock speed.
|
||||
otgw_dhw_ovrd:
|
||||
description: OpenTherm Gateway hot water override status.
|
||||
otgw_gpio_a:
|
||||
description: OpenTherm Gateway GPIO port A operating mode.
|
||||
otgw_gpio_a_state:
|
||||
description: OpenTherm Gateway GPIO A state.
|
||||
otgw_gpio_b:
|
||||
description: OpenTherm Gateway GPIO port B operating mode.
|
||||
otgw_gpio_b_state:
|
||||
description: OpenTherm Gateway GPIO B state.
|
||||
otgw_ignore_transitions:
|
||||
description: OpenTherm Gateway ignores ripples in the signal during high/low transitions.
|
||||
otgw_led_a:
|
||||
description: OpenTherm Gateway LED A operating mode.
|
||||
otgw_led_b:
|
||||
description: OpenTherm Gateway LED B operating mode.
|
||||
otgw_led_c:
|
||||
description: OpenTherm Gateway LED C operating mode.
|
||||
otgw_led_d:
|
||||
description: OpenTherm Gateway LED D operating mode.
|
||||
otgw_led_e:
|
||||
description: OpenTherm Gateway LED E operating mode.
|
||||
otgw_led_f:
|
||||
description: OpenTherm Gateway LED F operating mode.
|
||||
otgw_mode:
|
||||
description: OpenTherm Gateway operating mode.
|
||||
otgw_ovrd_high_byte:
|
||||
description: OpenTherm Gateway overrides high byte with message ID 100.
|
||||
otgw_setback_temp:
|
||||
description: OpenTherm Gateway setback temperature for `away mode`.
|
||||
otgw_setpoint_ovrd_mode:
|
||||
description: OpenTherm Gateway central heating setpoint override mode.
|
||||
otgw_smart_pwr:
|
||||
description: OpenTherm Gateway smart power operating mode.
|
||||
otgw_thermostat_detect:
|
||||
description: OpenTherm Gateway automatic thermostat detection status.
|
||||
otgw_vref:
|
||||
description: OpenTherm Gateway voltage reference setting.
|
||||
outside_temp:
|
||||
description: Outside temperature as reported in the OpenTherm protocol.
|
||||
relative_mod_level:
|
||||
description: Relative modulation level.
|
||||
remote_rw_dhw:
|
||||
description: Boiler supports writing hot water setpoint.
|
||||
remote_rw_max_ch:
|
||||
description: Boiler supports writing maximum central heating setpoint.
|
||||
remote_transfer_dhw:
|
||||
description: Boiler supports reading hot water setpoint.
|
||||
remote_transfer_max_ch:
|
||||
description: Boiler supports reading maximum central heating setpoint.
|
||||
return_water_temp:
|
||||
description: Boiler return water temperature.
|
||||
room_setpoint:
|
||||
description: Room target temperature.
|
||||
room_setpoint_2:
|
||||
description: Room 2 target temperature.
|
||||
room_setpoint_ovrd:
|
||||
description: Room target temperature override value.
|
||||
room_temp:
|
||||
description: Current room temperature.
|
||||
rovrd_auto_prio:
|
||||
description: Programmed room setpoint change takes priority over remote override setting.
|
||||
rovrd_man_prio:
|
||||
description: Manual room setpoint change takes priority over remote override setting.
|
||||
slave_air_pressure_fault:
|
||||
description: Boiler reports air pressure fault.
|
||||
slave_ch2_active:
|
||||
description: Boiler reports central heating 2 active.
|
||||
slave_ch2_present:
|
||||
description: Boiler has a central heating 2 circuit.
|
||||
slave_ch_active:
|
||||
description: Boiler reports central heating active.
|
||||
slave_ch_max_setp:
|
||||
description: Maximum boiler supported central heating water target temperature.
|
||||
slave_ch_min_setp:
|
||||
description: Minimum boiler supported central heating water target temperature.
|
||||
slave_control_type:
|
||||
description: Boiler control type ('off' is modulating, 'on' is on/off).
|
||||
slave_cooling_active:
|
||||
description: Boiler reports cooling active.
|
||||
slave_cooling_supported:
|
||||
description: Boiler supports cooling.
|
||||
slave_dhw_active:
|
||||
description: Boiler reports hot water active.
|
||||
slave_dhw_config:
|
||||
description: Boiler hot water mode ('off' is instantaneous or unspecified, 'on' is storage tank).
|
||||
slave_dhw_max_setp:
|
||||
description: Maximum boiler supported hot water target temperature.
|
||||
slave_dhw_min_setp:
|
||||
description: Minimum boiler supported hot water target temperature.
|
||||
slave_dhw_present:
|
||||
description: Boiler reports hot water present.
|
||||
slave_diagnostic_indication:
|
||||
description: Boiler diagnostic indication.
|
||||
slave_fault_indication:
|
||||
description: Boiler fault indication.
|
||||
slave_flame_on:
|
||||
description: Boiler reports flame on.
|
||||
slave_gas_fault:
|
||||
description: Boiler reports gas fault.
|
||||
slave_low_water_pressure:
|
||||
description: Boiler reports low water pressure.
|
||||
slave_master_low_off_pump:
|
||||
description: Boiler supports low-off and pump control commands (this sensor is inverted, 'on' is not supported, 'off' is supported)
|
||||
slave_max_capacity:
|
||||
description: Maximum boiler capacity.
|
||||
slave_max_relative_modulation:
|
||||
description: Maximum boiler supported relative modulation.
|
||||
slave_memberid:
|
||||
description: Boiler member ID.
|
||||
slave_min_mod_level:
|
||||
description: Minimum boiler supported modulation level.
|
||||
slave_oem_fault:
|
||||
description: Boiler OEM fault indication.
|
||||
slave_ot_version:
|
||||
description: Boiler OpenTherm protocol version.
|
||||
slave_product_type:
|
||||
description: Boiler product type.
|
||||
slave_product_version:
|
||||
description: Boiler product version.
|
||||
slave_remote_reset:
|
||||
description: Boiler reports 'lockout-reset' supported.
|
||||
slave_service_required:
|
||||
description: Boiler reports service required.
|
||||
slave_water_overtemp:
|
||||
description: Boiler reports water overtemperature.
|
||||
solar_coll_temp:
|
||||
description: Solar collector temperature.
|
||||
solar_storage_temp:
|
||||
description: Solar storage unit temperature.
|
||||
{% endconfiguration %}
|
||||
|
||||
## Supported Variables
|
||||
|
||||
The list above contains all supported variables. Note that not all boilers and thermostats properly support all variables, so the fact that a variable is listed here and published by your system does not necessarily mean that you will get useful data out of it. To see which variables are published in your situation, enable debug logging for the `opentherm_gw` integration and look for the status updates.
|
||||
|
||||
# Services
|
||||
## Services
|
||||
|
||||
### Service `opentherm_gw.reset_gateway`
|
||||
|
||||
Reset the OpenTherm Gateway.
|
||||
|
||||
This service takes no parameters.
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `gateway_id` | no | The `gateway_id` as specified in `configuration.yaml`.
|
||||
|
||||
### Service `opentherm_gw.set_clock`
|
||||
|
||||
@ -283,6 +83,7 @@ Provide the time and day of week to the OpenTherm Gateway. The value provided he
|
||||
|
||||
| Service data attribute | Optional | Default | Description |
|
||||
| ---------------------- | -------- | ------- | ----------- |
|
||||
| `gateway_id` | no | N/A | The `gateway_id` as specified in `configuration.yaml`.
|
||||
| `date` | yes | Today's date | Date from which the day of week will be extracted. Format: `YYYY-MM-DD`.
|
||||
| `time` | yes | Current time | Time in 24h format.
|
||||
|
||||
@ -298,6 +99,7 @@ In a normal situation, the thermostat will calculate and control the central hea
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `gateway_id` | no | The `gateway_id` as specified in `configuration.yaml`.
|
||||
| `temperature` | no | The central heating setpoint. Values between `0.0` and `90.0` are accepted, but your boiler may not support the full range. Set to `0` to disable the override.
|
||||
|
||||
<div class='note'>
|
||||
@ -313,6 +115,7 @@ For an explanation of the possible modes, see [GPIO modes](#gpio-modes)
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `gateway_id` | no | The `gateway_id` as specified in `configuration.yaml`.
|
||||
| `id` | no | The GPIO ID, `A` or `B`.
|
||||
| `mode` | no | The GPIO mode to be set.
|
||||
|
||||
@ -323,6 +126,7 @@ For a list of possible modes with explanation, see [LED modes](#led-modes)
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `gateway_id` | no | The `gateway_id` as specified in `configuration.yaml`.
|
||||
| `id` | no | The LED ID, accepted values are `A` through `F`.
|
||||
| `mode` | no | The LED mode to be set.
|
||||
|
||||
@ -338,6 +142,7 @@ In a normal situation, the thermostat will control the maximum modulation level
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `gateway_id` | no | The `gateway_id` as specified in `configuration.yaml`.
|
||||
| `level` | no | The maximum modulation level. Accepted values are `-1` through `100`. Set to `-1` to disable the override.
|
||||
|
||||
<div class='note'>
|
||||
@ -353,6 +158,7 @@ If your thermostat is unable to display an outside temperature and does not supp
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `gateway_id` | no | The `gateway_id` as specified in `configuration.yaml`.
|
||||
| `temperature` | no | The outside temperature to provide to the thermostat. Accepted values are `-40.0` through `64.0`. Any value above `64.0` will clear a previously configured value (suggestion: `99`).
|
||||
|
||||
### Service `opentherm_gw.set_setback_temperature`
|
||||
@ -362,8 +168,318 @@ The value you provide here will be used with the GPIO `home` (5) and `away` (6)
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `gateway_id` | no | The `gateway_id` as specified in `configuration.yaml`.
|
||||
| `temperature` | no | The setback temperature. Accepted values are `0.0` through `30.0`.
|
||||
|
||||
## Sensors
|
||||
|
||||
The following `sensor` entities will be created for each configured gateway. The `entity_id` of every sensor will have a suffix containing the `gateway_id` of the gateway to which it belongs.
|
||||
<p class='note'>
|
||||
Not all boilers and thermostats properly support all OpenTherm features, so not all of the sensors will have useful values.
|
||||
</p>
|
||||
|
||||
- **burner_hours**
|
||||
Boiler flame on time.
|
||||
|
||||
- **burner_starts**
|
||||
Number of burner starts.
|
||||
|
||||
- **ch_pump_hours**
|
||||
Central heating pump running time.
|
||||
|
||||
- **ch_pump_starts**
|
||||
Number of central heating pump starts.
|
||||
|
||||
- **ch_water_pressure**
|
||||
Central heating water pressure.
|
||||
|
||||
- **ch_water_temp**
|
||||
Central heating water temperature.
|
||||
|
||||
- **ch_water_temp_2**
|
||||
Central heating 2 water temperature.
|
||||
|
||||
- **control_setpoint**
|
||||
Central heating water target temperature.
|
||||
|
||||
- **control_setpoint_2**
|
||||
Central heating 2 water target temperature.
|
||||
|
||||
- **cooling_control**
|
||||
Cooling control signal value.
|
||||
|
||||
- **dhw_burner_hours**
|
||||
Hot water flame on time.
|
||||
|
||||
- **dhw_burner_starts**
|
||||
Number of hot water burner starts.
|
||||
|
||||
- **dhw_flow_rate**
|
||||
Hot water flow rate.
|
||||
|
||||
- **dhw_pump_hours**
|
||||
Hot water pump running time.
|
||||
|
||||
- **dhw_pump_starts**
|
||||
Number of hot water pump starts.
|
||||
|
||||
- **dhw_setpoint**
|
||||
Hot water target temperature.
|
||||
|
||||
- **dhw_temp**
|
||||
Hot water temperature.
|
||||
|
||||
- **dhw_temp_2**
|
||||
Hot water 2 temperature.
|
||||
|
||||
- **exhaust_temp**
|
||||
Boiler exhaust temperature.
|
||||
|
||||
- **master_memberid**
|
||||
Thermostat member ID.
|
||||
|
||||
- **master_ot_version**
|
||||
Thermostat OpenTherm protocol version.
|
||||
|
||||
- **master_product_type**
|
||||
Thermostat product type.
|
||||
|
||||
- **master_product_version**
|
||||
Thermostat product version.
|
||||
|
||||
- **max_ch_setpoint**
|
||||
Boiler maximum central heating water temperature.
|
||||
|
||||
- **oem_diag**
|
||||
OEM diagnostic information.
|
||||
|
||||
- **otgw_about**
|
||||
OpenTherm Gateway firmware version.
|
||||
|
||||
- **otgw_build**
|
||||
OpenTherm Gateway firmware build date and time.
|
||||
|
||||
- **otgw_clockmhz**
|
||||
OpenTherm Gateway firmware design clock speed.
|
||||
|
||||
- **otgw_dhw_ovrd**
|
||||
OpenTherm Gateway hot water override status.
|
||||
|
||||
- **otgw_gpio_a**
|
||||
OpenTherm Gateway GPIO port A operating mode.
|
||||
|
||||
- **otgw_gpio_b**
|
||||
OpenTherm Gateway GPIO port B operating mode.
|
||||
|
||||
- **otgw_led_a**
|
||||
OpenTherm Gateway LED A operating mode.
|
||||
|
||||
- **otgw_led_b**
|
||||
OpenTherm Gateway LED B operating mode.
|
||||
|
||||
- **otgw_led_c**
|
||||
OpenTherm Gateway LED C operating mode.
|
||||
|
||||
- **otgw_led_d**
|
||||
OpenTherm Gateway LED D operating mode.
|
||||
|
||||
- **otgw_led_e**
|
||||
OpenTherm Gateway LED E operating mode.
|
||||
|
||||
- **otgw_led_f**
|
||||
OpenTherm Gateway LED F operating mode.
|
||||
|
||||
- **otgw_mode**
|
||||
OpenTherm Gateway operating mode.
|
||||
|
||||
- **otgw_setback_temp**
|
||||
OpenTherm Gateway setback temperature for `away mode`.
|
||||
|
||||
- **otgw_setpoint_ovrd_mode**
|
||||
OpenTherm Gateway central heating setpoint override mode.
|
||||
|
||||
- **otgw_smart_pwr**
|
||||
OpenTherm Gateway smart power operating mode.
|
||||
|
||||
- **otgw_thermostat_detect**
|
||||
OpenTherm Gateway automatic thermostat detection status.
|
||||
|
||||
- **otgw_vref**
|
||||
OpenTherm Gateway voltage reference setting.
|
||||
|
||||
- **outside_temp**
|
||||
Outside temperature as reported in the OpenTherm protocol.
|
||||
|
||||
- **relative_mod_level**
|
||||
Relative modulation level.
|
||||
|
||||
- **return_water_temp**
|
||||
Boiler return water temperature.
|
||||
|
||||
- **room_setpoint**
|
||||
Room target temperature.
|
||||
|
||||
- **room_setpoint_2**
|
||||
Room 2 target temperature.
|
||||
|
||||
- **room_setpoint_ovrd**
|
||||
Room target temperature override value.
|
||||
|
||||
- **room_temp**
|
||||
Current room temperature.
|
||||
|
||||
- **slave_ch_max_setp**
|
||||
Maximum boiler supported central heating water target temperature.
|
||||
|
||||
- **slave_ch_min_setp**
|
||||
Minimum boiler supported central heating water target temperature.
|
||||
|
||||
- **slave_dhw_max_setp**
|
||||
Maximum boiler supported hot water target temperature.
|
||||
|
||||
- **slave_dhw_min_setp**
|
||||
Minimum boiler supported hot water target temperature.
|
||||
|
||||
- **slave_max_capacity**
|
||||
Maximum boiler capacity.
|
||||
|
||||
- **slave_max_relative_modulation**
|
||||
Maximum boiler supported relative modulation.
|
||||
|
||||
- **slave_memberid**
|
||||
Boiler member ID.
|
||||
|
||||
- **slave_min_mod_level**
|
||||
Minimum boiler supported modulation level.
|
||||
|
||||
- **slave_oem_fault**
|
||||
Boiler OEM fault indication.
|
||||
|
||||
- **slave_ot_version**
|
||||
Boiler OpenTherm protocol version.
|
||||
|
||||
- **slave_product_type**
|
||||
Boiler product type.
|
||||
|
||||
- **slave_product_version**
|
||||
Boiler product version.
|
||||
|
||||
- **solar_coll_temp**
|
||||
Solar collector temperature.
|
||||
|
||||
- **solar_storage_temp**
|
||||
Solar storage unit temperature.
|
||||
|
||||
|
||||
## Binary Sensors
|
||||
|
||||
The following `binary_sensor` entities will be created for each configured gateway. The `entity_id` of every sensor will have a suffix containing the `gateway_id` of the gateway to which it belongs.
|
||||
<p class='note'>
|
||||
Not all boilers and thermostats properly support all OpenTherm features, so not all of the sensors will have useful values.
|
||||
</p>
|
||||
|
||||
- **master_ch2_enabled**
|
||||
Thermostat requests central heating 2 on.
|
||||
|
||||
- **master_ch_enabled**
|
||||
Thermostat requests central heating on.
|
||||
|
||||
- **master_cooling_enabled**
|
||||
Thermostat requests cooling.
|
||||
|
||||
- **master_dhw_enabled**
|
||||
Thermostat requests hot water to be heated.
|
||||
|
||||
- **master_otc_enabled**
|
||||
Thermostat is using outside temperature correction.
|
||||
|
||||
- **otgw_gpio_a_state**
|
||||
OpenTherm Gateway GPIO A state.
|
||||
|
||||
- **otgw_gpio_b_state**
|
||||
OpenTherm Gateway GPIO B state.
|
||||
|
||||
- **otgw_ignore_transitions**
|
||||
OpenTherm Gateway ignores ripples in the signal during high/low transitions.
|
||||
|
||||
- **otgw_ovrd_high_byte**
|
||||
OpenTherm Gateway overrides high byte with message ID 100.
|
||||
|
||||
- **remote_rw_dhw**
|
||||
Boiler supports writing hot water setpoint.
|
||||
|
||||
- **remote_rw_max_ch**
|
||||
Boiler supports writing maximum central heating setpoint.
|
||||
|
||||
- **remote_transfer_dhw**
|
||||
Boiler supports reading hot water setpoint.
|
||||
|
||||
- **remote_transfer_max_ch**
|
||||
Boiler supports reading maximum central heating setpoint.
|
||||
|
||||
- **rovrd_auto_prio**
|
||||
Programmed room setpoint change takes priority over remote override setting.
|
||||
|
||||
- **rovrd_man_prio**
|
||||
Manual room setpoint change takes priority over remote override setting.
|
||||
|
||||
- **slave_air_pressure_fault**
|
||||
Boiler reports air pressure fault.
|
||||
|
||||
- **slave_ch2_active**
|
||||
Boiler reports central heating 2 active.
|
||||
|
||||
- **slave_ch2_present**
|
||||
Boiler has a central heating 2 circuit.
|
||||
|
||||
- **slave_ch_active**
|
||||
Boiler reports central heating active.
|
||||
|
||||
- **slave_control_type**
|
||||
Boiler control type ('off' is modulating, 'on' is on/off).
|
||||
|
||||
- **slave_cooling_active**
|
||||
Boiler reports cooling active.
|
||||
|
||||
- **slave_cooling_supported**
|
||||
Boiler supports cooling.
|
||||
|
||||
- **slave_dhw_active**
|
||||
Boiler reports hot water active.
|
||||
|
||||
- **slave_dhw_config**
|
||||
Boiler hot water mode ('off' is instantaneous or unspecified, 'on' is storage tank).
|
||||
|
||||
- **slave_dhw_present**
|
||||
Boiler reports hot water present.
|
||||
|
||||
- **slave_diagnostic_indication**
|
||||
Boiler diagnostic indication.
|
||||
|
||||
- **slave_fault_indication**
|
||||
Boiler fault indication.
|
||||
|
||||
- **slave_flame_on**
|
||||
Boiler reports flame on.
|
||||
|
||||
- **slave_gas_fault**
|
||||
Boiler reports gas fault.
|
||||
|
||||
- **slave_low_water_pressure**
|
||||
Boiler reports low water pressure.
|
||||
|
||||
- **slave_master_low_off_pump**
|
||||
Boiler supports low-off and pump control commands (this sensor is inverted, 'on' is not supported, 'off' is supported)
|
||||
|
||||
- **slave_remote_reset**
|
||||
Boiler reports 'lockout-reset' supported.
|
||||
|
||||
- **slave_service_required**
|
||||
Boiler reports service required.
|
||||
|
||||
- **slave_water_overtemp**
|
||||
Boiler reports water overtemperature.
|
||||
|
||||
## GPIO modes
|
||||
|
||||
Possible modes and their meaning for the GPIO pins are listed here:
|
||||
@ -403,18 +519,18 @@ The OpenTherm protocol is based on polling. The thermostat sends requests to the
|
||||
|
||||
# Example
|
||||
|
||||
A full configuration example with the OpenTherm Gateway connected to a remote host running `ser2net` looks like the one below.
|
||||
A full configuration example with two configured OpenTherm Gateways - one connected via USB, the other over the network - looks like the one below.
|
||||
|
||||
```yaml
|
||||
# Full example configuration.yaml entry
|
||||
opentherm_gw:
|
||||
device: socket://otgw.example.org:2345
|
||||
climate:
|
||||
name: Thermostat
|
||||
precision: 0.5
|
||||
floor_temperature: true
|
||||
monitored_variables:
|
||||
- room_setpoint
|
||||
- room_temp
|
||||
- otgw_about
|
||||
living_room:
|
||||
device: /dev/ttyUSB0
|
||||
name: "Living"
|
||||
holiday_home:
|
||||
device: socket://otgw.example.org:2345
|
||||
name: "Holiday Home"
|
||||
climate:
|
||||
precision: 0.5
|
||||
floor_temperature: true
|
||||
```
|
||||
|
@ -10,8 +10,7 @@ redirect_from:
|
||||
- /components/climate.radiotherm/
|
||||
---
|
||||
|
||||
|
||||
The `radiotherm` climate platform let you control a thermostat from [Radio Thermostat](http://www.radiothermostat.com/) or [3M Filtrete](https://my.radiothermostat.com/filtrete/). Your thermostat must have the Wi-Fi module installed and connected to your network.
|
||||
The `radiotherm` climate platform let you control a thermostat from [Radio Thermostat](http://www.radiothermostat.com/) or [3M Filtrete](http://www.radiothermostat.com/filtrete/products/). Your thermostat must have the Wi-Fi module installed and connected to your network.
|
||||
|
||||
The underlying library supports:
|
||||
|
||||
@ -43,16 +42,6 @@ host:
|
||||
description: List of your Radiotherm thermostats. If not provided the thermostats will be auto-detected.
|
||||
required: false
|
||||
type: list
|
||||
away_temperature_heat:
|
||||
description: Target heating temperature in Fahrenheit for away mode. This is separate from away mode in the app.
|
||||
required: false
|
||||
default: 60
|
||||
type: float
|
||||
away_temperature_cool:
|
||||
description: Target cooling temperature in Fahrenheit for away mode. This is separate from away mode in the app.
|
||||
required: false
|
||||
default: 85
|
||||
type: float
|
||||
hold_temp:
|
||||
description: Boolean to control if Home Assistant temperature adjustments hold (`true`) or are temporary (`false`).
|
||||
required: false
|
||||
@ -62,8 +51,6 @@ hold_temp:
|
||||
|
||||
Set `hold_temp: true` if you want temperature settings from Home Assistant to override a thermostat schedule on the thermostat itself. Otherwise Home Assistant will perform temporary temperature changes.
|
||||
|
||||
The away mode functions similarly to the away mode feature of the website and apps, but cannot detect if you set away mode outside of Home Assistant.
|
||||
|
||||
Multiple thermostats can be assigned by using `host:` if auto-detection is not used.
|
||||
|
||||
```yaml
|
||||
|
@ -61,12 +61,14 @@ switch:
|
||||
friendly_name: "AC"
|
||||
value_template: "{{ is_state('climate.ac', 'cool') or is_state('climate.ac', 'heat') or is_state('climate.ac', 'dry') or is_state('climate.ac', 'heat')}}"
|
||||
turn_on:
|
||||
service: climate.turn_on
|
||||
service: climate.set_havc_mode
|
||||
data:
|
||||
entity_id: climate.ac
|
||||
hvac_mode: off
|
||||
turn_off:
|
||||
service: climate.turn_off
|
||||
service: climate.set_havc_mode
|
||||
data:
|
||||
entity_id: climate.ac
|
||||
hvac_mode:
|
||||
```
|
||||
{% endraw %}
|
||||
|
@ -175,9 +175,8 @@ For a SmartThings Air Conditioner to be represented by the climate platform, it
|
||||
|
||||
| Capability |Climate Features
|
||||
|-------------------------------------|--------------------------------------------|
|
||||
| [`airConditionerMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Air-Conditioner-Mode) (required) | `operation mode`
|
||||
| [`airConditionerMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Air-Conditioner-Mode) (required) | `hvac mode`, `hvac action`
|
||||
| `airConditionerFanMode` (required) | `fan mode`
|
||||
| [`switch`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Switch) (required) | `on/off`
|
||||
| [`temperatureMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Temperature-Measurement) (required) | `temperature`
|
||||
| [`thermostatCoolingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Cooling-Setpoint) (required) | `target temp`
|
||||
| [`demandResponseLoadControl`](https://docs.smartthings.com/en/latest/capabilities-reference.html#demand-response-load-control) | `drlc_status_duration` (state attribute), `drlc_status_level` (state attribute), `drlc_status_override` (state attribute), `drlc_status_start` (state attribute)
|
||||
@ -189,12 +188,12 @@ For a SmartThings thermostat to be represented by the climate platform, it must
|
||||
|
||||
| Capability |Climate Features
|
||||
|-------------------------------------|--------------------------------------------|
|
||||
| [`thermostat`](https://docs.smartthings.com/en/latest/capabilities-reference.html#thermostat) (set a) | `operation mode`, `operating state` (state attribute), `target temp high`, `target temp low` and `fan mode`
|
||||
| [`thermostatMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Mode) (set b) | `operation mode`
|
||||
| [`thermostat`](https://docs.smartthings.com/en/latest/capabilities-reference.html#thermostat) (set a) | `hvac mode`, `hvac action`, `target temp high`, `target temp low` and `fan mode`
|
||||
| [`thermostatMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Mode) (set b) | `hvac mode`
|
||||
| [`thermostatCoolingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Cooling-Setpoint) (seb b) | `target temp low`
|
||||
| [`thermostatHeatingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Heating-Setpoint) (set b) | `target temp high`
|
||||
| [`temperatureMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Temperature-Measurement) (set b) |
|
||||
| [`thermostatOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Operating-State) | `operating state` (state attribute)
|
||||
| [`thermostatOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Operating-State) | `hvac action`
|
||||
| [`thermostatFanMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Fan-Mode) | `fan mode`
|
||||
| [`relativeHumidityMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Relative-Humidity-Measurement) | `humidity` (state attribute)
|
||||
|
||||
|
@ -111,6 +111,17 @@ Night Sound and Speech Enhancement modes are only supported when playing from th
|
||||
| `night_sound` | yes | Boolean to control Night Sound mode.
|
||||
| `speech_enhance` | yes | Boolean to control Speech Enhancement mode.
|
||||
|
||||
### Service `sonos.play_queue`
|
||||
|
||||
Starts playing the Sonos queue.
|
||||
|
||||
Force start playing the queue, allows switching from another stream (such as radio) to playing the queue.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | no | String or list of `entity_id`s that will start playing. It must be the coordinator if targeting a group.
|
||||
| `queue_position` | yes | Position of the song in the queue to start playing from, starts at 0.
|
||||
|
||||
## Advanced use
|
||||
|
||||
For advanced uses, there are some manual configuration options available.
|
||||
|
@ -23,18 +23,22 @@ By now, the following units are tested:
|
||||
- LWZ504e
|
||||
- LWZ304
|
||||
|
||||
## Operation modes
|
||||
## HVAC modes
|
||||
|
||||
Only the standard HA operation modes are supported. The STIEBEL ELTRON modes are mapped and configurable as follows:
|
||||
The following HVAC modes are supported. The STIEBEL ELTRON modes are mapped and configurable as follows:
|
||||
|
||||
- Auto (STATE_AUTO): Automatic mode
|
||||
- Eco (STATE_ECO): Standby mode
|
||||
- Manual (STATE_MANUAL): Manual mode
|
||||
- Off (STATE_OFF): DHW mode (domestic hot water mode, heating is switched off)
|
||||
- Auto (HVAC_MODE_AUTO): Automatic mode
|
||||
- Manual (HVAC_MODE_HEAT): Manual mode
|
||||
- Off (HVAC_MODE_OFF): DHW mode (domestic hot water mode, heating is switched off)
|
||||
|
||||
The HA operation mode 'On' is displayed, if the following STIEBEL ELTRON modes are configured directly on the unit:
|
||||
## Preset modes
|
||||
|
||||
- On (STATE_ON): Day mode, Setback mode or Emergency operation
|
||||
The following preset modes are supported. The STIEBEL ELTRON modes are mapped and configurable as follows:
|
||||
|
||||
- Eco mode (PRESET_ECO)
|
||||
- Day mode (PRESET_DAY)
|
||||
- Setback mode (PRESET_SETBACK)
|
||||
- Emergency mode (PRESET_EMERGENCY)
|
||||
|
||||
## Configuration
|
||||
|
||||
|
@ -59,19 +59,26 @@ client_secret:
|
||||
description: Toon API Consumer Secret.
|
||||
required: true
|
||||
type: string
|
||||
scan_interval:
|
||||
description: The rate in seconds at which Toon should be polled for new data.
|
||||
required: false
|
||||
type: integer
|
||||
default: 300
|
||||
{% endconfiguration %}
|
||||
|
||||
## Climate
|
||||
|
||||
The `toon` climate platform allows you to interact with your Toon thermostat. For compatibility reasons, the states in Home Assistant are different from the states displayed on your Toon device and are mapped as follows:
|
||||
|
||||
| Home Assistant | Toon |
|
||||
|:---------------|:--------|
|
||||
| Auto | Comfort |
|
||||
| Heat | Thuis |
|
||||
| Eco | Weg |
|
||||
| Cool | Slapen |
|
||||
The `toon` climate platform allows you to interact with your Toon thermostat.
|
||||
|
||||
Home Assistant support the four Toon presets: `Comfort`, `Home`, `Away` and `Sleep`.
|
||||
It also supports setting the temperature manually.
|
||||
|
||||
The Toon API is polled at a 300-second interval, so the status is relatively fresh without overloading the API.
|
||||
## Services
|
||||
|
||||
### Service `update`
|
||||
|
||||
Updates ententies from Toon with fresh queried data.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ------------------------------------------- |
|
||||
| `display` | Yes | The display you wish to fetch updates from. |
|
||||
|
125
source/_components/trafikverket_train.markdown
Normal file
@ -0,0 +1,125 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Trafikverket Train"
|
||||
description: "Instructions how to integrate Trafikverket Train within Home Assistant."
|
||||
date: 2019-04-27 16:32
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: trafikverket.png
|
||||
ha_category:
|
||||
- Transport
|
||||
- Sensor
|
||||
ha_release: 0.96
|
||||
ha_iot_class: Cloud Polling
|
||||
---
|
||||
|
||||
Retrieve train departure information from [Trafikverket](https://www.trafikverket.se/).
|
||||
|
||||
Use cases:
|
||||
|
||||
- Retrieve the next departure and information connected to it for a specific train line.
|
||||
- Retrieve information for specific departure time on a specific train line.
|
||||
- Set up an alert or perform actions if your train is delayed or canceled.
|
||||
|
||||
Data that is retrieved:
|
||||
|
||||
- Next departure for the specific train line.
|
||||
- Canceled status.
|
||||
- The number of minutes delayed.
|
||||
- Planned time if no delays occur.
|
||||
- Estimated time of arrival if delays occur.
|
||||
- Actual time - when it did arrive.
|
||||
- Other information / additional texts.
|
||||
- Deviations.
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To enable this sensor, use the following format in your `configuration.yaml`.
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: trafikverket_train
|
||||
api_key: TRAFIKVERKET_API
|
||||
trains:
|
||||
- name: "Morning train to Malmö"
|
||||
from: "Stockholm Central"
|
||||
to: "Malmö C"
|
||||
time: "9:25"
|
||||
|
||||
- name: "Next train to Uppsala"
|
||||
from: "Stockholm Central"
|
||||
to: "Uppsala C"
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
api_key:
|
||||
description: Your personal API key from Trafikverket.
|
||||
required: true
|
||||
type: string
|
||||
trains:
|
||||
description: Specify details on the departures to monitor.
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
name:
|
||||
description: The name of the departure, will be the sensor name.
|
||||
required: true
|
||||
type: string
|
||||
from:
|
||||
description: The station from where the train departs.
|
||||
required: true
|
||||
type: string
|
||||
to:
|
||||
description: The destination station.
|
||||
required: true
|
||||
type: string
|
||||
time:
|
||||
description: Departure time to monitor, if not entered it will retrieve the next departure.
|
||||
required: false
|
||||
type: string
|
||||
weekday:
|
||||
description: Specify which days in the week to monitor the specific departure.
|
||||
required: false
|
||||
type: list
|
||||
default: "[mon, tue, wed, thu, fri, sat, sun]"
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Obtaining API key %}
|
||||
|
||||
Please click [here](https://api.trafikinfo.trafikverket.se/) and register to obtain the API key.
|
||||
|
||||
## {% linkable_title Train station names %}
|
||||
|
||||
Click [here](https://www.trafikverket.se/trafikinformation/tag/?ArrDep=departure&) to see an example of train station names.
|
||||
|
||||
## {% linkable_title Examples %}
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: trafikverket
|
||||
api_key: !secret trafikverket_api_key
|
||||
trains:
|
||||
- name: "Train to work"
|
||||
from: Sölvesborg
|
||||
to: Kristianstad C
|
||||
time: "07:28"
|
||||
weekday: [mon, tue, wed, thu, fri]
|
||||
|
||||
- name: "Train from work early"
|
||||
from: Kristianstad C
|
||||
to: Sölvesborg
|
||||
time: "16:38"
|
||||
|
||||
- name: "Train from work late"
|
||||
from: Kristianstad C
|
||||
to: Sölvesborg
|
||||
time: "17:02"
|
||||
weekday: [sat, sun]
|
||||
|
||||
- name: "Next train to Uppsala"
|
||||
from: "Stockholm Central"
|
||||
to: "Uppsala C"
|
||||
|
||||
```
|
@ -39,6 +39,10 @@ name:
|
||||
|
||||
Twilio is a notify platform and thus can be controlled by calling the notify service [as described here](/components/notify/). It will send a notification to all E.164 phone numbers in the notification **target**. See the notes above regarding the `from_number` configuration variable for information about formatting phone numbers.
|
||||
|
||||
Media can be included with messages by setting the optional `media_url` variable. Only `.gif`, `.png`, or `.jpeg` content are supported, according to the Twilio documentation and this feature is [only supported in the US and Canada.][mms]
|
||||
|
||||
[mms]: https://www.twilio.com/docs/sms/send-messages#include-media-in-your-messages
|
||||
|
||||
```yaml
|
||||
# Example automation notification entry
|
||||
automation:
|
||||
@ -53,4 +57,6 @@ automation:
|
||||
target:
|
||||
- '+14151234567'
|
||||
- '+15105555555'
|
||||
data:
|
||||
- media_url: 'https://www.home-assistant.io/images/supported_brands/home-assistant.png'
|
||||
```
|
||||
|
153
source/_components/vacuum.template.markdown
Normal file
@ -0,0 +1,153 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Template Vacuum"
|
||||
description: "Instructions how to setup Template vacuums within Home Assistant."
|
||||
date: 2019-05-20 16:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
ha_category: Vacuum
|
||||
ha_release: 0.96
|
||||
ha_iot_class: Local Push
|
||||
logo: home-assistant.png
|
||||
ha_qa_scale: internal
|
||||
---
|
||||
|
||||
The `template` platform creates vacuums that combine integrations and provides the
|
||||
ability to run scripts or invoke services for each of the start, pause, stop,
|
||||
return_to_base, clean_spot, locate and set_fan_speed commands of a vacuum.
|
||||
|
||||
To enable Template Vacuums in your installation, add the following to your
|
||||
`configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
vacuum:
|
||||
- platform: template
|
||||
vacuums:
|
||||
living_room_vacuum:
|
||||
start:
|
||||
service: script.vacuum_start
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
vacuums:
|
||||
description: List of your vacuums.
|
||||
required: true
|
||||
type: map
|
||||
keys:
|
||||
friendly_name:
|
||||
description: Name to use in the frontend.
|
||||
required: false
|
||||
type: string
|
||||
value_template:
|
||||
description: "Defines a template to get the state of the vacuum. Valid value: `docked`/`cleaning`/`idle`/`paused`/`returning`/`error`"
|
||||
required: false
|
||||
type: template
|
||||
battery_level_template:
|
||||
description: "Defines a template to get the battery level of the vacuum. Legal values are numbers between `0` and `100`."
|
||||
required: false
|
||||
type: template
|
||||
fan_speed_template:
|
||||
description: Defines a template to get the fan speed of the vacuum.
|
||||
required: false
|
||||
type: template
|
||||
start:
|
||||
description: Defines an action to run when the vacuum is started.
|
||||
required: true
|
||||
type: action
|
||||
pause:
|
||||
description: Defines an action to run when the vacuum is paused.
|
||||
required: false
|
||||
type: action
|
||||
stop:
|
||||
description: Defines an action to run when the vacuum is stopped.
|
||||
required: false
|
||||
type: action
|
||||
return_to_base:
|
||||
description: Defines an action to run when the vacuum is given a return to base command.
|
||||
required: false
|
||||
type: action
|
||||
clean_spot:
|
||||
description: Defines an action to run when the vacuum is given a clean spot command.
|
||||
required: false
|
||||
type: action
|
||||
locate:
|
||||
description: Defines an action to run when the vacuum is given a locate command.
|
||||
required: false
|
||||
type: action
|
||||
set_fan_speed:
|
||||
description: Defines an action to run when the vacuum is given a command to set the fan speed.
|
||||
required: false
|
||||
type: action
|
||||
fan_speeds:
|
||||
description: List of fan speeds supported by the vacuum.
|
||||
required: false
|
||||
type: string list
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Examples %}
|
||||
|
||||
### {% linkable_title Control vacuum with Harmony Hub %}
|
||||
|
||||
This example shows how you can use a Template Vacuum to control an IR vacuum cleaner using the [Harmony Hub Remote component](/components/remote.harmony/).
|
||||
|
||||
```yaml
|
||||
vacuum:
|
||||
- platform: template
|
||||
vacuums:
|
||||
living_room_vacuum:
|
||||
start:
|
||||
- service: remote.send_command
|
||||
data:
|
||||
entity_id: remote.harmony_hub
|
||||
command: Clean
|
||||
device: 52840686
|
||||
return_to_base:
|
||||
- service: remote.send_command
|
||||
data:
|
||||
entity_id: remote.harmony_hub
|
||||
command: Home
|
||||
device: 52840686
|
||||
clean_spot:
|
||||
- service: remote.send_command
|
||||
data:
|
||||
entity_id: remote.harmony_hub
|
||||
command: SpotCleaning
|
||||
device: 52840686
|
||||
```
|
||||
|
||||
### {% linkable_title Vacuum with state %}
|
||||
|
||||
This example shows how to use templates to specify the state of the vacuum.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
vacuum:
|
||||
- platform: template
|
||||
vacuums:
|
||||
living_room_vacuum:
|
||||
value_template: "{{ states('sensor.vacuum_state') }}"
|
||||
battery_level_template: "{{ states('sensor.vacuum_battery_level')|int }}"
|
||||
fan_speed_template: "{{ states('sensor.vacuum_fan_speed') }}"
|
||||
start:
|
||||
service: script.vacuum_start
|
||||
pause:
|
||||
service: script.vacuum_pause
|
||||
stop:
|
||||
service: script.vacuum_stop
|
||||
return_to_base:
|
||||
service: script.vacuum_return_to_base
|
||||
clean_spot:
|
||||
service: script.vacuum_clean_spot
|
||||
locate:
|
||||
service: script.vacuum_locate_vacuum
|
||||
set_fan_speed:
|
||||
service: script.vacuum_set_fan_speed
|
||||
fan_speeds:
|
||||
- Low
|
||||
- Medium
|
||||
- High
|
||||
```
|
||||
{% endraw %}
|
109
source/_components/vallox.markdown
Normal file
@ -0,0 +1,109 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Vallox Ventilation Units"
|
||||
description: "Instructions on how to integrate Vallox ventilation units into Home Assistant."
|
||||
date: 2019-06-19 20:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: vallox.png
|
||||
ha_category:
|
||||
- Fan
|
||||
- Sensor
|
||||
ha_release: 0.96
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
The `vallox` integration lets you control any Vallox ventilation unit that is supported by the [vallox_websocket_api](https://github.com/yozik04/vallox_websocket_api) (follow the link for a list of supported units).
|
||||
|
||||
The **fan** platform of this integration allows you to either turn on/off the complete unit via the toggle switch or select a ventilation profile through the service `vallox/set_profile`. The four standard Vallox profiles are provided:
|
||||
|
||||
- `At Home`
|
||||
- `Away`
|
||||
- `Boost`
|
||||
- `Fireplace`
|
||||
|
||||
Also, there is a **sensor** platform that exposes a number of relevant metrics like fan speed, various air temperatures and humidity.
|
||||
|
||||
### {% linkable_title Configuration %}
|
||||
|
||||
```yaml
|
||||
vallox:
|
||||
host: IP_ADDRESS
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
host:
|
||||
description: The IP or hostname of the ventilation unit in your home network.
|
||||
required: true
|
||||
type: string
|
||||
name:
|
||||
description: The name of this device as you want to see it in Home Assistant.
|
||||
required: false
|
||||
default: Vallox
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Profile Switching %}
|
||||
|
||||
For convenient switching of ventilation profiles in the GUI, consider using an [input_select](../input_select) hooked to an automation, for example:
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
input_select:
|
||||
ventilation_profile:
|
||||
name: Ventilation profile select
|
||||
options:
|
||||
- "Home"
|
||||
- "Away"
|
||||
- "Boost"
|
||||
- "Fireplace"
|
||||
icon: mdi:fan
|
||||
|
||||
automation:
|
||||
- alias: Set Ventilation Profile
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_select.ventilation_profile
|
||||
action:
|
||||
service: vallox.set_profile
|
||||
data_template:
|
||||
profile: "{{ states('input_select.ventilation_profile') }}"
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
## {% linkable_title Fan Services %}
|
||||
|
||||
### {% linkable_title Service `vallox.set_profile` %}
|
||||
|
||||
Set the ventilation profile.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
|------------------------|----------|------------------------------------------------------|
|
||||
| `profile` | no | Allowed values: `Home`, `Away`, `Boost`, `Fireplace` |
|
||||
|
||||
### {% linkable_title Service `vallox.set_profile_fan_speed_home` %}
|
||||
|
||||
Set the fan speed of the `Home` profile.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
|------------------------|----------|-------------------------------------------------|
|
||||
| `fan_speed` | no | Fan speed in %. `Integer`, between 0 and 100. |
|
||||
|
||||
|
||||
### {% linkable_title Service `vallox.set_profile_fan_speed_away` %}
|
||||
|
||||
Set the fan speed of the `Away` profile.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
|------------------------|----------|-------------------------------------------------|
|
||||
| `fan_speed` | no | Fan speed in %. `Integer`, between 0 and 100. |
|
||||
|
||||
### {% linkable_title Service `vallox.set_profile_fan_speed_boost` %}
|
||||
|
||||
Set the fan speed of the `Boost` profile.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
|------------------------|----------|-------------------------------------------------|
|
||||
| `fan_speed` | no | Fan speed in %. `Integer`, between 0 and 100. |
|
@ -25,6 +25,7 @@ There is currently support for the following device types within Home Assistant:
|
||||
- Climate
|
||||
- Sensor
|
||||
- Switch
|
||||
- Cover
|
||||
|
||||
## Configuration
|
||||
|
||||
|
@ -23,8 +23,8 @@ Currently supported functionality:
|
||||
- Changing the operation mode of the thermostat (heat/cool/off/auto)
|
||||
- Turning the fan on/off
|
||||
- Reading and setting the humidity level and limits
|
||||
- Turning away mode on/off
|
||||
- Turning hold mode on/off
|
||||
- Turning on away preset
|
||||
- Turning on hold mode preset
|
||||
|
||||
The following values are supported for the hold_mode state attribute:
|
||||
- `off`: *Enables* the scheduling functionality.
|
||||
|
82
source/_components/wwlln.markdown
Normal file
@ -0,0 +1,82 @@
|
||||
---
|
||||
layout: page
|
||||
title: "World Wide Lightning Location Network (WWLLN)"
|
||||
description: "Instructions on how to integrate WWLLN within Home Assistant."
|
||||
date: 2019-07-06 23:17
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: wwlln.jpg
|
||||
ha_category: Geolocation
|
||||
ha_release: 0.96
|
||||
ha_iot_class: Cloud Polling
|
||||
ha_config_flow: true
|
||||
---
|
||||
|
||||
The `wwlln` integration displays lightning strike information from the
|
||||
[World Wide Lightning Location Network (WWLLN)](http://wwlln.net).
|
||||
|
||||
Entities are generated, updated and removed automatically with each update
|
||||
from the feed. Each entity defines latitude and longitude and will be shown
|
||||
on the default map automatically, or on a map card by defining the source
|
||||
`wwlln`. The distance (in kilometers or miles, depending on your unit system)
|
||||
is available as the state of each entity.
|
||||
|
||||
<p class='img'>
|
||||
<img src='{{site_root}}/images/screenshots/wwlln-feed-map.png' />
|
||||
</p>
|
||||
|
||||
New data is returned every 5 minutes.
|
||||
|
||||
## Configuration
|
||||
|
||||
To retrieve data from the WWLLN, add the following to your `configuration.yaml`
|
||||
file:
|
||||
|
||||
```yaml
|
||||
wwlln:
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
latitude:
|
||||
description: The latitude you want to monitor; defaults to the value defined in `configuration.yaml`.
|
||||
required: false
|
||||
type: float
|
||||
longitude:
|
||||
description: The longitude you want to monitor; defaults to the value defined in `configuration.yaml`.
|
||||
required: false
|
||||
type: float
|
||||
radius:
|
||||
description: The radius around your location to monitor; defaults to 25 km or mi (depending on the unit system defined in your `configuration.yaml`).
|
||||
required: false
|
||||
type: int
|
||||
window:
|
||||
description: The amount of time before now for which strikes should be considered "active" and shown in the UI.
|
||||
required: false
|
||||
type: time
|
||||
{% endconfiguration %}
|
||||
|
||||
## State Attributes
|
||||
|
||||
The following state attributes are available for each entity in addition to
|
||||
the standard ones:
|
||||
|
||||
| Attribute | Description |
|
||||
|--------------------|-------------|
|
||||
| latitude | Latitude of the lightning strike. |
|
||||
| longitude | Longitude of the lightning strike. |
|
||||
| source | `wwlln` to be used in conjunction with the `geo_location` automation trigger. |
|
||||
| external_id | The external ID used in the feed to identify the earthquake in the feed. |
|
||||
| publication_date | Date and time when this event occurred. |
|
||||
|
||||
|
||||
## Full Configuration
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
wwlln:
|
||||
radius: 100
|
||||
latitude: 37.39
|
||||
longitude: -5.99
|
||||
```
|
@ -112,6 +112,7 @@ The following tables show the available trigger data per platform.
|
||||
| `trigger.above` | The above threshold, if any.
|
||||
| `trigger.from_state` | The previous [state object] of the entity.
|
||||
| `trigger.to_state` | The new [state object] that triggered trigger.
|
||||
| `trigger.for` | Timedelta object how long state has met above/below criteria, if any.
|
||||
|
||||
### state
|
||||
|
||||
@ -139,6 +140,7 @@ The following tables show the available trigger data per platform.
|
||||
| `trigger.entity_id` | Entity ID that caused change.
|
||||
| `trigger.from_state` | Previous [state object] of entity that caused change.
|
||||
| `trigger.to_state` | New [state object] of entity that caused template to change.
|
||||
| `trigger.for` | Timedelta object how long state has been to state, if any.
|
||||
|
||||
### time
|
||||
|
||||
|
@ -102,6 +102,30 @@ automation:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
You can also use templates in the `for` option.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
automation:
|
||||
trigger:
|
||||
platform: numeric_state
|
||||
entity_id:
|
||||
- sensor.temperature_1
|
||||
- sensor.temperature_2
|
||||
above: 80
|
||||
for:
|
||||
minutes: "{{ states('input_number.high_temp_min')|int }}"
|
||||
seconds: "{{ states('input_number.high_temp_sec')|int }}"
|
||||
action:
|
||||
service: persistent_notification.create
|
||||
data_template:
|
||||
message: >
|
||||
{{ trigger.to_state.name }} too high for {{ trigger.for }}!
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
The `for` template(s) will be evaluated when an entity changes as specified.
|
||||
|
||||
### State trigger
|
||||
|
||||
Triggers when the state of any of given entities changes. If only `entity_id` is given trigger will activate for all state changes, even if only state attributes change.
|
||||
@ -120,8 +144,28 @@ automation:
|
||||
for: '01:10:05'
|
||||
```
|
||||
|
||||
<div class='note warning'>
|
||||
You can also use templates in the `for` option.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
automation:
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: device_tracker.paulus, device_tracker.anne_therese
|
||||
to: 'home'
|
||||
for:
|
||||
minutes: "{{ states('input_number.lock_min')|int }}"
|
||||
seconds: "{{ states('input_number.lock_sec')|int }}"
|
||||
action:
|
||||
service: lock.lock
|
||||
entity_id: lock.my_place
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
The `for` template(s) will be evaluated when an entity changes as specified.
|
||||
|
||||
|
||||
<div class='note warning'>
|
||||
Use quotes around your values for `from` and `to` to avoid the YAML parser interpreting values as booleans.
|
||||
|
||||
</div>
|
||||
@ -181,7 +225,7 @@ Although the actual amount of light depends on weather, topography and land cove
|
||||
This is what is meant by twilight for the average person: Under clear weather conditions, civil twilight approximates the limit at which solar illumination suffices for the human eye to clearly distinguish terrestrial objects. Enough illumination renders artificial sources unnecessary for most outdoor activities.
|
||||
- Nautical twilight: 6° > Solar angle > -12°
|
||||
- Astronomical twilight: 12° > Solar angle > -18°
|
||||
|
||||
|
||||
A very thorough explanation of this is available in the Wikipedia article about the [Twilight](https://en.wikipedia.org/wiki/Twilight).
|
||||
|
||||
### Template trigger
|
||||
@ -201,8 +245,22 @@ automation:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
<div class='note warning'>
|
||||
You can also use templates in the `for` option.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
automation:
|
||||
trigger:
|
||||
platform: template
|
||||
value_template: "{{ is_state('device_tracker.paulus', 'home') }}"
|
||||
for:
|
||||
minutes: "{{ states('input_number.minutes')|int(0) }}"
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
The `for` template(s) will be evaluated when the `value_template` becomes `true`.
|
||||
|
||||
<div class='note warning'>
|
||||
Rendering templates with time (`now()`) is dangerous as trigger templates only update based on entity state changes.
|
||||
|
||||
</div>
|
||||
|
@ -27,7 +27,6 @@ We will not go over the basics of the syntax, as Jinja2 does a great job of this
|
||||
|
||||
The frontend has a template editor tool to help develop and debug templates. Click on the <img src='/images/screenshots/developer-tool-templates-icon.png' alt='template developer tool icon' class="no-shadow" height="38" /> icon, create your template in the _Template editor_ and check the results on the right.
|
||||
|
||||
|
||||
Templates can get big pretty fast. To keep a clear overview, consider using YAML multiline strings to define your templates:
|
||||
|
||||
{% raw %}
|
||||
@ -48,7 +47,7 @@ script:
|
||||
|
||||
## Home Assistant template extensions
|
||||
|
||||
Extensions allow templates to access all of the Home Assistant specific states and adds other convenience functions and filters.
|
||||
Extensions allow templates to access all of the Home Assistant specific states and adds other convenience functions and filters.
|
||||
|
||||
### States
|
||||
|
||||
@ -68,7 +67,6 @@ script:
|
||||
|
||||
Besides the normal [state object methods and properties](/topics/state_object/), `states.sensor.temperature.state_with_unit` will print the state of the entity and, if available, the unit.
|
||||
|
||||
|
||||
#### States examples
|
||||
|
||||
The next two statements result in the same value if the state exists. The second one will result in an error if the state does not exist.
|
||||
@ -114,10 +112,9 @@ Other state examples:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
|
||||
### Attributes
|
||||
|
||||
You can print an attribute with `state_attr` if state is defined.
|
||||
You can print an attribute with `state_attr` if state is defined.
|
||||
|
||||
#### Attributes examples
|
||||
|
||||
@ -145,8 +142,33 @@ With strings:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Working with Groups %}
|
||||
|
||||
The `expand` function and filter can be used to sort entities and expand groups. It outputs a sorted array of entities with no duplicates.
|
||||
|
||||
#### {% linkable_title Expand examples %}
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
{% for tracker in expand('device_tracker.paulus', 'group.child_trackers') %}
|
||||
{{ state_attr(tracker, 'battery') }}
|
||||
{%- if not loop.last %}, {% endif -%}
|
||||
{% endfor %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
The same thing can also be expressed as a filter:
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
{{ ['device_tracker.paulus', 'group.child_trackers'] | expand
|
||||
| selectattr("attributes.battery", 'defined')
|
||||
| join(', ', attribute="attributes.battery") }}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### Time
|
||||
|
||||
- `now()` will be rendered as the current time in your time zone.
|
||||
- For specific values: `now().second`, `now().minute`, `now().hour`, `now().day`, `now().month`, `now().year`, `now().weekday()` and `now().isoweekday()`
|
||||
- `utcnow()` will be rendered as UTC time.
|
||||
@ -158,10 +180,12 @@ With strings:
|
||||
- Filter `timestamp_custom(format_string, local_boolean)` will convert a UNIX timestamp to a custom format, the use of a local timestamp is default. Supports the standard [Python time formatting options](https://docs.python.org/3/library/time.html#time.strftime).
|
||||
|
||||
### Distance
|
||||
|
||||
- `distance()` will measure the distance in kilometers between home, entity, coordinates.
|
||||
- `closest()` will find the closest entity.
|
||||
|
||||
#### Distance examples
|
||||
|
||||
If only one location is passed in, Home Assistant will measure the distance from home.
|
||||
|
||||
{% raw %}
|
||||
@ -176,12 +200,14 @@ These can also be combined in any combination:
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
Find entities closest to the Home Assistant location:
|
||||
#### {% linkable_title Closest examples %}
|
||||
|
||||
The closest function and filter will find the closest entity to the Home Assisant location:
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
Query all entities: {{ closest(states) }}
|
||||
Query all entities of a specific domain: {{ closest('states.device_tracker') }}
|
||||
Query all entities of a specific domain: {{ closest(states.device_tracker) }}
|
||||
Query all entities in group.children: {{ closest('group.children') }}
|
||||
Query all entities in group.children: {{ closest(states.group.children) }}
|
||||
```
|
||||
@ -205,11 +231,37 @@ Since closest returns a state, we can combine it with distance too.
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
The last argument of the closest function has an implicit `expand`, and can take any iterable sequence of states or entity IDs, and will expand groups:
|
||||
|
||||
{% raw %}
|
||||
```text
|
||||
Closest out of given entities:
|
||||
{{ closest(['group.children', states.device_tracker]) }}
|
||||
Closest to a coordinate:
|
||||
{{ closest(23.456, 23.456, ['group.children', states.device_tracker]) }}
|
||||
Closest to some entity:
|
||||
{{ closest(states.zone.school, ['group.children', states.device_tracker]) }}
|
||||
```
|
||||
|
||||
It will also work as a filter over a iterable group of entities or groups:
|
||||
|
||||
```text
|
||||
Closest out of given entities:
|
||||
{{ ['group.children', states.device_tracker] | closest }}
|
||||
Closest to a coordinate:
|
||||
{{ ['group.children', states.device_tracker] | closest(23.456, 23.456) }}
|
||||
Closest to some entity:
|
||||
{{ ['group.children', states.device_tracker] | closest(states.zone.school) }}
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
||||
### Formatting
|
||||
|
||||
- `float` will format the output as float.
|
||||
|
||||
### Numeric functions and filters
|
||||
|
||||
Some of these functions can also be used in a [filter](http://jinja.pocoo.org/docs/dev/templates/#id11). This means they can act as a normal function like this `sqrt(2)`, or as part of a filter like this `2|sqrt`.
|
||||
|
||||
- `log(value, base)` will take the logarithm of the input. When the base is omitted, it defaults to `e` - the natural logarithm. Can also be used as a filter.
|
||||
@ -227,6 +279,7 @@ Some of these functions can also be used in a [filter](http://jinja.pocoo.org/do
|
||||
- Filter `value_one|bitwise_or(value_two)` perform a bitwise or(\|) operation with two values.
|
||||
|
||||
### Regular expressions
|
||||
|
||||
- Filter `string|regex_match(find, ignorecase=FALSE)` will match the find expression at the beginning of the string using regex.
|
||||
- Filter `string|regex_search(find, ignorecase=FALSE)` will match the find expression anywhere in the string using regex.
|
||||
- Filter `string|regex_replace(find='', replace='', ignorecase=False)` will replace the find expression with the replace string using regex.
|
||||
@ -330,13 +383,13 @@ To evaluate a response, go to the <img src='/images/screenshots/developer-tool-t
|
||||
## Some more things to keep in mind
|
||||
|
||||
### `entity_id` that begins with a number
|
||||
|
||||
If your template uses an `entity_id` that begins with a number (example: `states.device_tracker.2008_gmc`) you must use a bracket syntax to avoid errors caused by rendering the `entity_id` improperly. In the example given, the correct syntax for the device tracker would be: `states.device_tracker['2008_gmc']`
|
||||
|
||||
### Templates without entities using `now()`
|
||||
|
||||
Note that templates that depend on time (`now()`) and do not use any entities will not be updated as it only happens on entity state changes. For more information and examples refer to [`template` sensor documentation](/components/sensor.template/#working-without-entities)
|
||||
|
||||
|
||||
### Priority of operators
|
||||
|
||||
The default priority of operators is that the filter (`|`) has priority over everything except brackets. This means that:
|
||||
@ -348,4 +401,3 @@ The default priority of operators is that the filter (`|`) has priority over eve
|
||||
{% endraw %}
|
||||
|
||||
Would round `10` to 2 decimal places, then divide `states('sensor.temperature')` by that.
|
||||
|
||||
|
742
source/_posts/2019-07-17-release-96.markdown
Normal file
@ -0,0 +1,742 @@
|
||||
---
|
||||
layout: post
|
||||
title: "0.96: Notion, updated sidebar, advanced mode"
|
||||
description: "We have cleaned up the climate integration and the UI."
|
||||
date: 2019-07-17 00:11:03
|
||||
date_formatted: "July 17, 2019"
|
||||
author: Paulus Schoutsen
|
||||
author_twitter: balloob
|
||||
comments: true
|
||||
categories: Release-Notes
|
||||
og_image: /images/blog/2019-07-release-96/demo-sidebar.png
|
||||
---
|
||||
|
||||
<a href='/components/#version/0.96'><img src='/images/blog/2019-07-release-96/components.png' style='border: 0;box-shadow: none;'></a>
|
||||
|
||||
It's time for Home Assistant 0.96. It's a great release, but we also made some changes, so please pay attention.
|
||||
|
||||
## Last release that supports Python 3.5
|
||||
|
||||
This will be the last release that supports Python 3.5. Home Assistant 0.97 will require at least Python 3.6. If you are using Hass.io or Docker, you will not have to do anything. If you are running Hassbian, [upgrade instructions are here](https://github.com/home-assistant/hassbian-scripts/blob/dev/docs/suites/python.md). If you run Home Assistant inside a virtual environment, please follow the instructions for your OS to update.
|
||||
|
||||
Home Assistant has adopted a new [Python support strategy](https://github.com/home-assistant/architecture/blob/master/adr/0002-minimum-supported-python-version.md). Starting August 1, we will now support the last two minor stable releases of Python. This is currently Python 3.6 and Python 3.7. Python 3.8 is expected to be released near the end of the year. Once that is released, Python 3.6 support is deprecated and removed 2 months later.
|
||||
|
||||
## Pimp my Sidebar
|
||||
|
||||
The sidebar has gotten an improved look! Idea started with [a mockup by @JuanMTech on Twitter](https://twitter.com/JuanMTech/status/1143757213971943424) and grew into a full blown implementation. The sidebar will now always be visible in a minimized mode. Hovering it will expand it. The developer tool buttons have been collapsed into a single menu item. The dev tools will now store it's exact state when you navigate away, included the dev tool that is open. We've also taken the opportunity to make notifications accessible from the sidebar, instead of only via the Lovelace UI.
|
||||
|
||||
On mobile devices the sidebar will behave like it previously did. Check [the demo](https://demo.home-assistant.io) for a preview.
|
||||
|
||||
<p class='img'>
|
||||
<a href='https://demo.home-assistant.io'>
|
||||
<img src='/images/blog/2019-07-release-96/demo-sidebar.png' alt='Screenshot of the demo with the new sidebar.'>
|
||||
Screenshot of the demo with the new sidebar. Click to open.
|
||||
</a>
|
||||
</p>
|
||||
|
||||
## Climate
|
||||
|
||||
This release includes a major clean up of our climate integration, correcting some architectural flaws from the past. The goal of this clean up was to a better job at providing an abstraction layer that fits many devices. This will improve compatibility with services that interact with Home Assistant (like Alexa/Google) and will allow us to make sure the UI works for everyone. We've done a lot of testing during the beta, but there might still be things that don't work as expected. If you notice anything, please report by [**opening a bug report**](https://github.com/home-assistant/home-assistant/issues).
|
||||
|
||||
For a breakdown of what was driving the change, [check our blog post on the dev blog](https://developers.home-assistant.io/blog/2019/07/03/climate-cleanup.html).
|
||||
|
||||
The following things have been changed:
|
||||
|
||||
- `operation_mode` has been renamed to `hvac_mode` to emphasize what the mode is for.
|
||||
- We split HVAC mode `auto` into `auto` and `heat_cool`. If it's `heat_cool`, the user has set a temperature range the device has to use heating and cooling to stay within. Auto mode is now limited to devices that are running on a schedule or AI.
|
||||
- The state of a climate entity is now always equal to the HVAC mode.
|
||||
- `hvac_action` is introduced for integrations that know the current action: heating, cooling, idle.
|
||||
- `set_away_mode` and `set_hold_mode` have been merged into `set_preset_mode`. So instead of `turn_away_mode_on()`, we will now call `set_preset_mode("away")`.
|
||||
- The `is_on` property has been removed. If a device is able to turn off, it should include the HVAC mode `HVAC_MODE_OFF`.
|
||||
- Property names have been aligned, anything ending with "_list" is now named "_modes".
|
||||
- Integrations are only allowed to represent functionality that is present in the API. It is not allowed to add your own fake away mode.
|
||||
|
||||
Huge thanks to [@pvizeli] who drove the core implementation and to the following people for helping getting it past the finish line:
|
||||
|
||||
- [@andrewsayre]
|
||||
- [@balloob]
|
||||
- [@cgtobi]
|
||||
- [@Danielhiversen]
|
||||
- [@frenck]
|
||||
- [@Jc2k]
|
||||
- [@marvin-w]
|
||||
- [@OnFreund]
|
||||
- [@SukramJ]
|
||||
- [@zxdavb]
|
||||
|
||||
[@JuanMTech]: https://github.com/JuanMTech
|
||||
[@Jc2k]: https://github.com/Jc2k
|
||||
[@marvin-w]: https://github.com/marvin-w
|
||||
[@OnFreund]: https://github.com/OnFreund
|
||||
[@SukramJ]: https://github.com/SukramJ
|
||||
[@teachingbirds]: https://github.com/teachingbirds
|
||||
|
||||
## Advanced mode
|
||||
|
||||
As part of Home Assistant 1.0 effort, we're simplifying the default user interface. We're doing this by hiding certain configuration options like the customize panel behind a new "advanced mode" toggle. You can find this toggle on your profile page.
|
||||
|
||||
Advanced mode is only available to admin users and is a per-user setting. Enabling it for yourself won't enable it for other admins.
|
||||
|
||||
## In other news…
|
||||
|
||||
Raspberry Pi 4 support has arrived in beta. [@pvizeli] has been hard at work and the first beta release [is available](https://github.com/home-assistant/hassos/releases/tag/3.3). If you flash this image, you will be able to update to a stable release later from within the UI.
|
||||
|
||||
Big shout out to [@frenck] who has been doing a lot of clean up on the website. Like, a lot lot. He has removed over 20.000 unused lines of code, and has simplified how we render code blocks, pages and headers. It takes Jekyll now a mere 14 seconds to generate the whole website! It used to be 6 minutes! 😲
|
||||
|
||||
Last week [@balloob] showed a preview of the upcoming [Home Assistant Cast](/blog/2019/07/09/home-assistant-cast-preview/), a new interface for Home Assistant that runs on Chromecasts and Google Assistant devices with screens.
|
||||
|
||||
[@teachingbirds] has redone her Lovelace UI and it is looking fabulous!
|
||||
|
||||
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Redid my whole layout for the <a href="https://twitter.com/home_assistant?ref_src=twsrc%5Etfw">@home_assistant</a> dashboard yesterday on a whim. "Nest hub inspired", I call it. 😄 I like it a lot! Feels put together and less messy. <a href="https://t.co/8pmA5CWKev">pic.twitter.com/8pmA5CWKev</a></p>— Isa (@teachingbirds) <a href="https://twitter.com/teachingbirds/status/1151113630391427072?ref_src=twsrc%5Etfw">July 16, 2019</a>
|
||||
</blockquote>
|
||||
|
||||
## New Integrations
|
||||
|
||||
- Add Trafikverket train component ([@endor-force] - [#23470]) ([trafikverket_train docs]) (new-integration)
|
||||
- Add integration for Vallox Ventilation Units ([@andre-richter] - [#24660]) ([vallox docs]) (new-integration)
|
||||
- Add support for aurora ABB Powerone solar photovoltaic inverter ([@davet2001] - [#24809]) ([aurora_abb_powerone docs]) (new-integration)
|
||||
- Add support for arcam fmj receivers ([@elupus] - [#24621]) ([arcam_fmj docs]) (new-integration)
|
||||
- Add support for Notion Home Monitoring ([@bachya] - [#24634]) ([notion docs]) (new-integration)
|
||||
- Add support for World Wide Lightning Location Network ([@bachya] - [#25001]) ([wwlln docs]) (new-integration)
|
||||
|
||||
## New Platforms
|
||||
|
||||
- Add template vacuum support ([@luukd] - [#22904]) ([template docs]) (new-platform)
|
||||
- Fronius (solar energy and inverter) component ([@nielstron] - [#22316]) ([sensor docs]) (new-platform)
|
||||
- New scanner device tracker and ZHA device tracker support ([@dmulcahey] - [#24584]) ([device_tracker docs]) ([zha docs]) (new-platform)
|
||||
- [climate] Bugfix honeywell misleading error message ([@zxdavb] - [#25048]) ([evohome docs]) ([honeywell docs]) (new-platform)
|
||||
- [climate] Add water_heater to evohome ([@zxdavb] - [#25035]) ([evohome docs]) (beta fix) (new-platform)
|
||||
- [Climate] Hive Add water heater Component post the refresh of the climate component. ([@KJonline] - [#25148]) ([hive docs]) (beta fix) (new-platform)
|
||||
|
||||
## If you need help...
|
||||
|
||||
...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e).
|
||||
|
||||
## Reporting Issues
|
||||
|
||||
Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/home-assistant/issues). Make sure to fill in all fields of the issue template.
|
||||
|
||||
<!--more-->
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
- __OpenTherm__ - Adds support for more than one OpenTherm Gateway device which changes the configuration structure. ([@mvn23] - [#22932]) ([opentherm_gw docs])
|
||||
|
||||
Example configuration:
|
||||
|
||||
```yaml
|
||||
opentherm_gw:
|
||||
living_room:
|
||||
device: /dev/ttyUSB0
|
||||
```
|
||||
|
||||
- __Ambient Weather Station__ - By default, the Ambient solar radiation (i.e., brightness) sensor is measured in W/m². Since this unit of measurement is not used anywhere else, this change updates the sensor to use the more prevalent lx unit. Any automations that use this sensor should be updated accordingly. ([@bachya] - [#24690]) ([ambient_station docs])
|
||||
|
||||
|
||||
- __Google Cloud__ - Changed the default encoding to mp3 from opus ogg, allowing it to support many more media players. ([@GrandNewbien] - [#24808]) ([google_cloud docs])
|
||||
|
||||
Example configuration:
|
||||
|
||||
```yaml
|
||||
tts:
|
||||
- platform: google_cloud
|
||||
key_file: googlecloud.json
|
||||
encoding: mp3 # The new default, which can still be changed to opus ogg or linear16
|
||||
```
|
||||
|
||||
|
||||
- __SimpliSafe__ - The SimpliSafe alarm control panel no longer shows a temperature attribute. ([@bachya] - [#24833]) ([simplisafe docs])
|
||||
- __Luftdaten__ - The under-laying Python module is now limited to the P1 (particles 10 microns and below) and P2 (particles 2.5 microns and below), which means you have to recreate your sensors. ([@fabaff] - [#24842]) ([luftdaten docs])
|
||||
|
||||
- __Velbus__ - Added autodicovery for covers in velbus and bumped the python velbus version ([@Cereal2nd] - [#24877]) ([velbus docs])
|
||||
- __ZHA__ - ZHA entities are being removed and battery sensors are being added. We have been asked several times to remove the ZHA domain entities because they do not follow the HA standards. They were originally used to show device online / offline status, rssi, lqi and last seen. They were eventually expanded to hold battery information as well because many Zigbee devices have several power configuration clusters. Online and offline handling, rssi, lqi last seen and the handling of device availability have all been moved to the device object and battery information has been split back out into its own sensor. Any users that created template sensors that leveraged the data in the ZHA entities will be affected by this change. ([@dmulcahey] - [#24909]) ([zha docs])
|
||||
- __Netatmo__ - If the module type can not be determined the climate device will default to the type "valve" as it implements a subset of "thermostat". Consequently those devices wont be able to be turned off. This should not be a major issue and should only happen when there are issues with the data retrieved form the Netatmo API. ([@cgtobi] - [#25029]) ([netatmo docs])
|
||||
- __GeoJSON Events__ - Update geojson_client library to version 0.4.This changes the access to the external feed from HTTP to HTTPS for the nsw_rural_fire_service_feed platform. This should normally not make any difference to anyone consuming this feed. Only if for example you have set up a template sensor or automation that reads the external_id attribute of a geo_location entity and compare it against a pattern, would you need to change this. ([@exxamalte] - [#25039]) ([geo_json_events docs]) ([nsw_rural_fire_service_feed docs]) ([usgs_earthquakes_feed docs])
|
||||
|
||||
## Beta Fixes
|
||||
|
||||
- Add websocket API command for Z-Wave network status ([@cgarwood] - [#25066]) ([zwave docs]) (beta fix)
|
||||
- Do not reverse open/close calls ([@balloob] - [#24879]) ([tahoma docs]) (breaking change) (beta fix)
|
||||
- Add support for on/off climate ([@pvizeli] - [#25026]) ([climate docs]) (beta fix)
|
||||
- Change unique_id formula for Notion entities ([@bachya] - [#25076]) ([notion docs]) (beta fix)
|
||||
- Fix powercontrol media player alexa ([@pvizeli] - [#25080]) ([alexa docs]) (beta fix)
|
||||
- Support podcast episodes as Sonos favorites ([@amelchio] - [#25087]) ([sonos docs]) (beta fix)
|
||||
- Guard module being None ([@balloob] - [#25077]) (beta fix)
|
||||
- [climate] Add water_heater to evohome ([@zxdavb] - [#25035]) ([evohome docs]) (beta fix) (new-platform)
|
||||
- Fix Netatmo climate issue when device out of reach ([@cgtobi] - [#25096]) ([netatmo docs]) (beta fix)
|
||||
- Add turn on/off to coolmaster ([@OnFreund] - [#25097]) ([coolmaster docs]) (beta fix)
|
||||
- Fix window exception in WWLLN ([@bachya] - [#25100]) ([wwlln docs]) (beta fix)
|
||||
- Fix missing sensor unit in RainMachine ([@bachya] - [#25101]) ([rainmachine docs]) (beta fix)
|
||||
- Add climate related services to Homematic IP Cloud ([@SukramJ] - [#25079]) ([homematicip_cloud docs]) (beta fix)
|
||||
- Simplify Alexa/Google for new climate turn_on/off ([@balloob] - [#25115]) ([alexa docs]) ([google_assistant docs]) (beta fix)
|
||||
- Verify cloud user exists during boot ([@balloob] - [#25119]) ([cloud docs]) (beta fix)
|
||||
- Allow area ID in service call schemas ([@balloob] - [#25121]) ([light docs]) ([switch docs]) (beta fix)
|
||||
- Load requirements for platforms ([@elupus] - [#25133]) (beta fix)
|
||||
- Handle Sonos connection errors during setup ([@amelchio] - [#25135]) ([sonos docs]) (beta fix)
|
||||
- [climate-1.0] Bugfix evohome showstopper ([@zxdavb] - [#25139]) ([evohome docs]) (beta fix)
|
||||
- remove comfort mode ([@SukramJ] - [#25140]) ([homematicip_cloud docs]) (beta fix)
|
||||
- [climate-1.0] Add RoundThermostat to evohome ([@zxdavb] - [#25141]) ([evohome docs]) (beta fix)
|
||||
- [Climate] Hive Add water heater Component post the refresh of the climate component. ([@KJonline] - [#25148]) ([hive docs]) (beta fix) (new-platform)
|
||||
- Remove check and restore temp/mode changes ([@andersonshatch] - [#25149]) ([tado docs]) (beta fix)
|
||||
- Update pyhomematic to 0.1.60 ([@danielperna84] - [#25152]) ([homematic docs]) (beta fix)
|
||||
- Version sensor update ([@ludeeus] - [#25162]) ([version docs]) (beta fix)
|
||||
- Make dev tools titlte translatable ([@balloob] - [#25166]) ([frontend docs]) (beta fix)
|
||||
- Fix device types for some HomeMatic IP sensors ([@danielperna84] - [#25167]) ([homematic docs]) (beta fix)
|
||||
- Update pysonos to 0.0.21 ([@amelchio] - [#25168]) (beta fix)
|
||||
- Fix climate is_aux_heat type hint. ([@Adminiuga] - [#25170]) ([climate docs]) (beta fix)
|
||||
- Upgrade luftdaten to 0.6.2 ([@fabaff] - [#25177]) ([luftdaten docs]) (beta fix)
|
||||
- Correctly set property decorator on preset modes ([@balloob] - [#25151]) ([fritzbox docs]) (beta fix)
|
||||
- Fix device name customization on ZHA add devices page ([@dmulcahey] - [#25180]) ([zha docs]) (beta fix)
|
||||
- [climate] Tweak evohome migration ([@zxdavb] - [#25187]) ([evohome docs]) (beta fix)
|
||||
- Only include target temp if has right support flag ([@balloob] - [#25193]) ([climate docs]) (beta fix)
|
||||
|
||||
## All changes
|
||||
|
||||
- Fix AttributeError: 'NoneType' object has no attribute 'group' with sytadin component ([@foreign-sub] - [#24652]) ([sytadin docs])
|
||||
- braviatv, nmap_tracker: use getmac for getting MAC addresses ([@scop] - [#24628]) ([braviatv docs]) ([braviatv docs]) ([braviatv docs]) ([nmap_tracker docs])
|
||||
- Fix downloader_download_failed event not firing for HTTP response errors ([@sfjes] - [#24640]) ([downloader docs])
|
||||
- Multiple devices support for opentherm_gw ([@mvn23] - [#22932]) ([opentherm_gw docs]) (breaking change)
|
||||
- Add device class support for Ambient PWS sensors ([@bachya] - [#24677]) ([ambient_station docs])
|
||||
- Add RainMachine device classes where appropriate ([@bachya] - [#24682]) ([rainmachine docs])
|
||||
- Change Ambient solar radiation units to lx ([@bachya] - [#24690]) ([ambient_station docs]) (breaking change)
|
||||
- Upgrade to async_upnp_client==0.14.10 and increase search timeout ([@StevenLooman] - [#24685]) ([dlna_dmr docs]) ([upnp docs])
|
||||
- Upgrade mypy to 0.710 ([@scop] - [#24666])
|
||||
- Template: Expand method to expand groups, and closest as filter ([@Swamp-Ig] - [#23691])
|
||||
- Add aml_thermal label ([@jmw6773] - [#24665]) ([glances docs])
|
||||
- Corrected number of default LCN segment coupler scan tryouts ([@alengwenus] - [#24678]) ([lcn docs])
|
||||
- Upgrade discord.py to 1.2.2 ([@fabaff] - [#24695]) ([discord docs])
|
||||
- Upgrade youtube_dl to 2019.06.08 ([@fabaff] - [#24692]) ([media_extractor docs])
|
||||
- Upgrade Sphinx to 2.1.2 ([@fabaff] - [#24693])
|
||||
- Solax update 0.1.0 ([@squishykid] - [#24708]) ([solax docs])
|
||||
- Fix PS4 entities with shared host not updating and latency with multiple connections ([@ktnrg45] - [#24642]) ([ps4 docs])
|
||||
- Add initial support for remote dev container ([@pvizeli] - [#24681])
|
||||
- Expose ports 8123, 8300 and 51827 in Dockerfile ([@johnluetke] - [#24389])
|
||||
- Add Trafikverket train component ([@endor-force] - [#23470]) ([trafikverket_train docs]) (new-integration)
|
||||
- Add 'unique_id' Property to Inverter Sensors ([@squishykid] - [#24707]) ([solax docs])
|
||||
- Remove device and entity registry entries when removing a ZHA device ([@dmulcahey] - [#24369]) ([zha docs])
|
||||
- Add support for sensor state STATE_UNAVAILABLE ([@cnrd] - [#24641]) ([plant docs])
|
||||
- Add integration for Vallox Ventilation Units ([@andre-richter] - [#24660]) ([vallox docs]) (new-integration)
|
||||
- Vallox: Fix missing hass member ([@andre-richter] - [#24753]) ([vallox docs])
|
||||
- Remove obsolete comments in Dockerfile ([@Emilv2] - [#24748])
|
||||
- fix an error in the description ([@alain57] - [#24735])
|
||||
- Add support for IPP Printers to the CUPS integration ([@Matte23] - [#24756]) ([cups docs])
|
||||
- Enhancement/zha model manuf ([@Adminiuga] - [#24771]) ([zha docs])
|
||||
- Entity to handle updates via events ([@balloob] - [#24733])
|
||||
- Upgrade vallox to async client API ([@andre-richter] - [#24774]) ([vallox docs])
|
||||
- Upgrade pytest to 4.6.3 ([@scop] - [#24782])
|
||||
- Add time delta option when searching for deutsche_bahn connections ([@h3ndrik] - [#24600]) ([deutsche_bahn docs])
|
||||
- Zestimate fix for issue #23837 ([@dreed47] - [#23838]) ([zestimate docs])
|
||||
- Use climate device's target temp step value ([@andersonshatch] - [#24804]) ([homekit docs])
|
||||
- Use step from tado rather than assuming 0.1 ([@andersonshatch] - [#24807]) ([tado docs])
|
||||
- Changed default encoding to mp3 ([@GrandNewbien] - [#24808]) ([google_cloud docs]) (breaking change)
|
||||
- Add developer tools panel ([@balloob] - [#24812]) ([frontend docs])
|
||||
- Add template vacuum support ([@luukd] - [#22904]) ([template docs]) (new-platform)
|
||||
- Make sure alert is set up after notify ([@balloob] - [#24829]) ([alert docs])
|
||||
- Remove temperature attribute from SimpliSafe alarm control panel ([@bachya] - [#24833]) ([simplisafe docs]) (breaking change)
|
||||
- Fronius (solar energy and inverter) component ([@nielstron] - [#22316]) ([sensor docs]) (new-platform)
|
||||
- Add template support to template trigger's for option ([@pnbruckner] - [#24810]) ([automation docs])
|
||||
- Upgrade sisyphus-control to 2.2 ([@jkeljo] - [#24837]) ([sisyphus docs])
|
||||
- Fix yeelight color temp getter ([@zewelor] - [#24830]) ([yeelight docs])
|
||||
- Upgrade luftdaten to 0.6.1 ([@fabaff] - [#24842]) ([luftdaten docs]) (breaking change)
|
||||
- Upgrade sqlalchemy to 1.3.5 ([@fabaff] - [#24844]) ([recorder docs]) ([sql docs])
|
||||
- Upgrade numpy to 1.16.4 ([@fabaff] - [#24845]) ([iqvia docs]) ([opencv docs]) ([tensorflow docs]) ([trend docs])
|
||||
- Upgrade certifi to >= 2019.6.16 ([@fabaff] - [#24846])
|
||||
- Upgrade pyyaml to 5.1.1 ([@fabaff] - [#24847])
|
||||
- Upgrade jinja2 to >=2.10.1 ([@fabaff] - [#24851])
|
||||
- Upgrade psutil to 5.6.3 ([@fabaff] - [#24854]) ([systemmonitor docs])
|
||||
- Upgrade cryptography to 2.7 ([@fabaff] - [#24852])
|
||||
- Fix mysensors icon name ([@zewelor] - [#24871]) ([mysensors docs])
|
||||
- Update praw to 6.3.1 ([@fabaff] - [#23737]) ([reddit docs])
|
||||
- Hungarian is also supported in Google Cloud TTS ([@realthk] - [#24861]) ([google_cloud docs])
|
||||
- Upgrade youtube_dl to 2019.06.27 ([@fabaff] - [#24875]) ([media_extractor docs])
|
||||
- Velbus: autodiscover covers ([@Cereal2nd] - [#24877]) ([velbus docs]) (breaking change)
|
||||
- Upgrade importlib-metadata to 0.18 ([@fabaff] - [#24848])
|
||||
- Upgrade bcrypt to 3.1.7 ([@fabaff] - [#24850])
|
||||
- Fix traceback during ZHA device removal ([@dmulcahey] - [#24882]) ([zha docs])
|
||||
- Move SmartThings imports to top ([@andrewsayre] - [#24878]) ([smartthings docs])
|
||||
- Bump androidtv to 0.0.17 ([@JeffLIrion] - [#24886])
|
||||
- Upgrade pytest to 5.0.0 ([@Danielhiversen] - [#24885])
|
||||
- Tweak geniushub battery icons according to device state ([@zxdavb] - [#24798]) ([geniushub docs])
|
||||
- Support mqtt discovery topic prefix with slashes ([@cybe] - [#24840]) ([mqtt docs])
|
||||
- Update tts.py ([@kevank] - [#24892]) ([watson_tts docs])
|
||||
- go back to signals and no hard entity references ([@dmulcahey] - [#24894]) ([zha docs])
|
||||
- Update IDs for rename node/value ([@Swamp-Ig] - [#24646]) ([zwave docs])
|
||||
- Bump life360 package to 4.0.1 ([@pnbruckner] - [#24905]) ([life360 docs])
|
||||
- Stability improvements for Sonos availability ([@amelchio] - [#24880]) ([sonos docs])
|
||||
- Fix 'same state' monitoring in numeric_state trigger ([@pnbruckner] - [#24910]) ([automation docs])
|
||||
- Fix 'same state' monitoring in state trigger ([@pnbruckner] - [#24904]) ([automation docs])
|
||||
- Add missing trigger.for variable to template trigger ([@pnbruckner] - [#24893]) ([automation docs])
|
||||
- Add ability to send attachments in pushover notifications ([@kreegahbundolo] - [#24806]) ([pushover docs])
|
||||
- Fix home coach discovery ([@cgtobi] - [#24902]) ([netatmo docs])
|
||||
- New languages that looks like supported by Google but not documented: ([@lufton] - [#24881]) ([google_cloud docs])
|
||||
- Remove ZHA device entity ([@dmulcahey] - [#24909]) ([zha docs]) (breaking change)
|
||||
- Bump androidtv to 0.0.18 ([@JeffLIrion] - [#24927]) ([androidtv docs])
|
||||
- Update pysonos to 0.0.19 ([@amelchio] - [#24930]) ([sonos docs])
|
||||
- Add support for Yale YRL256 lock ([@ctso] - [#24932]) ([zwave docs])
|
||||
- Fix exclusion of routes with excl_filter ([@gadgetchnnel] - [#24928]) ([waze_travel_time docs])
|
||||
- New scanner device tracker and ZHA device tracker support ([@dmulcahey] - [#24584]) ([device_tracker docs]) ([zha docs]) (new-platform)
|
||||
- Allow updating of via_device in device registry ([@bachya] - [#24921])
|
||||
- Update pyHik library to 0.2.3 ([@mezz64] - [#24957]) ([hikvision docs])
|
||||
- Implement ADR0003 for Netatmo sensor ([@cgtobi] - [#24944]) ([netatmo docs]) (breaking change)
|
||||
- Fix monitoring of trays in syncthru component ([@nielstron] - [#24961]) ([syncthru docs])
|
||||
- Batch of Component(s) -> Integration(s) ([@frenck] - [#24972])
|
||||
- Add sonos.play_queue service ([@apeeters] - [#24974]) ([sonos docs])
|
||||
- Fix errors if rest source becomes unavailable ([@slackr31337] - [#24986]) ([scrape docs])
|
||||
- Switched from tuyapy to tuyaha as 1st one is not maintained ([@PaulAnnekov] - [#24821]) ([tuya docs])
|
||||
- Adds Lock Threads Probot ([@frenck] - [#24984])
|
||||
- Adds Stale Probot for issues ([@frenck] - [#24985])
|
||||
- Upgrade mypy to 0.711, drop no longer needed workarounds ([@scop] - [#24998])
|
||||
- Changes as per code review of #24646 ([@Swamp-Ig] - [#24917]) ([zwave docs])
|
||||
- Sleepiq single sleeper crash ([@qypea] - [#24941]) ([sleepiq docs])
|
||||
- Add support for aurora ABB Powerone solar photovoltaic inverter ([@davet2001] - [#24809]) ([aurora_abb_powerone docs]) (new-integration)
|
||||
- Test dependency updates ([@scop] - [#25004])
|
||||
- upgrade switchmate to latest lib ([@Danielhiversen] - [#25006]) ([switchmate docs])
|
||||
- Upgrade hdate==0.8.8 ([@tsvi] - [#25008]) ([jewish_calendar docs])
|
||||
- Upgrade insteonplm to 0.16.0 and add INSTEON scene triggering ([@teharris1] - [#24765]) ([insteon docs])
|
||||
- Install requirements for integrations in packages before importing them. ([@ludeeus] - [#25005])
|
||||
- Added missing yeelight models mapping ([@cadavre] - [#24963]) ([yeelight docs])
|
||||
- Correct socket use in cert_expiry platform ([@elupus] - [#25011]) ([cert_expiry docs])
|
||||
- Climate 1.0 ([@pvizeli] - [#23899]) ([climate docs])
|
||||
- Implement Twilio SMS notify MediaUrl support ([@Chris-Johnston] - [#24971]) ([twilio_sms docs])
|
||||
- Enphase envoy individual inverter production ([@jesserizzo] - [#24445]) ([enphase_envoy docs])
|
||||
- Add support for arcam fmj receivers ([@elupus] - [#24621]) ([arcam_fmj docs]) (new-integration)
|
||||
- Sensibo, add HVAC_MODE_OFF ([@Danielhiversen] - [#25016]) ([sensibo docs])
|
||||
- Fix ecobee flaky test ([@balloob] - [#25019]) ([ecobee docs])
|
||||
- Fix mimetypes on borked Windows machines ([@balloob] - [#25018]) ([frontend docs])
|
||||
- Add datetime option to input_datetime.set_datetime service ([@pnbruckner] - [#24975]) ([input_datetime docs])
|
||||
- Add template support to numeric_state trigger's for option ([@pnbruckner] - [#24955]) ([automation docs])
|
||||
- Add template support to state trigger's for option ([@pnbruckner] - [#24912]) ([automation docs])
|
||||
- Fix Nest sensor ([@balloob] - [#25023]) ([climate docs]) ([nest docs])
|
||||
- ambiclimate hvac_modes ([@Danielhiversen] - [#25015]) ([ambiclimate docs])
|
||||
- homematic add off support for climate ([@pvizeli] - [#25017]) ([homematic docs])
|
||||
- Support config flow on custom components ([@elupus] - [#24946]) ([config docs])
|
||||
- Improve SmartThings test mocking ([@andrewsayre] - [#25028])
|
||||
- Toon fixes for Climate 1.0 ([@frenck] - [#25027]) ([toon docs])
|
||||
- Add hvac fan state ([@andrewsayre] - [#25030]) ([climate docs]) ([smartthings docs])
|
||||
- Add support for Notion Home Monitoring ([@bachya] - [#24634]) ([notion docs]) (new-integration)
|
||||
- Fix Netatmo climate presets ([@cgtobi] - [#25029]) ([netatmo docs]) (breaking change)
|
||||
- Add missing support for jewish_calendar.omer_count sensor ([@arigilder] - [#24958]) ([jewish_calendar docs])
|
||||
- Centralizes Toon data, reducing API calls ([@frenck] - [#23988]) ([toon docs])
|
||||
- Upgrade youtube_dl to 2019.07.02 ([@fabaff] - [#24990]) ([media_extractor docs])
|
||||
- updated geojson_client library to version 0.4 ([@exxamalte] - [#25039]) ([geo_json_events docs]) ([nsw_rural_fire_service_feed docs]) ([usgs_earthquakes_feed docs]) (breaking change)
|
||||
- Improve toon climate ([@frenck] - [#25040]) ([toon docs])
|
||||
- Fix Netatmo rain gauge precision ([@cgtobi] - [#25036]) ([netatmo docs])
|
||||
- Bump pyvera to 0.3.2, null/missing value protection ([@jlrgraham] - [#25041]) ([vera docs])
|
||||
- Add radiotherm CT80 current humidity support ([@zombielinux] - [#25024]) ([radiotherm docs])
|
||||
- Add config flow support to Geolocation ([@bachya] - [#25046]) ([geo_location docs])
|
||||
- Update tuyaha to 0.0.2 to catch API exceptions ([@PaulAnnekov] - [#25050]) ([tuya docs])
|
||||
- Added marker sensor to CUPS integration ([@Matte23] - [#25037]) ([cups docs])
|
||||
- Remove myself as codeowner ([@cdce8p] - [#25043]) ([homekit docs])
|
||||
- [climate] Bugfix honeywell misleading error message ([@zxdavb] - [#25048]) ([evohome docs]) ([honeywell docs]) (new-platform)
|
||||
- Add Sonos debug logging ([@amelchio] - [#25063]) ([sonos docs])
|
||||
- Avoid flooding steam API ([@Swamp-Ig] - [#23941]) ([steam_online docs])
|
||||
- Add check_config helper ([@kellerza] - [#24557])
|
||||
- bump zha-quirks version ([@dmulcahey] - [#25059]) ([zha docs])
|
||||
- Fix broken test in Python 3.7 ([@balloob] - [#25067])
|
||||
- Fix for Sonos debug logging ([@amelchio] - [#25064]) ([sonos docs])
|
||||
- Bump up ZHA dependencies. ([@Adminiuga] - [#25062]) ([zha docs])
|
||||
- Add support for World Wide Lightning Location Network ([@bachya] - [#25001]) ([wwlln docs]) (new-integration)
|
||||
- SMA catch error ([@kellerza] - [#25045]) ([sma docs])
|
||||
- Change phrases in the logbook component for persons and binary_sensors ([@Martijn02] - [#25053]) ([logbook docs])
|
||||
- Make sure volume level is valid when incrementing/decrementing ([@JeffLIrion] - [#25061]) ([vizio docs])
|
||||
- Complete OPERATION_MODES ([@monte-monte] - [#25069]) ([knx docs])
|
||||
- Add websocket API command for Z-Wave network status ([@cgarwood] - [#25066]) ([zwave docs]) (beta fix)
|
||||
- Correctly store removed entities for restore state ([@balloob] - [#25073])
|
||||
- Restore automation last_triggered as datetime & fix test ([@pnbruckner] - [#24951]) ([automation docs])
|
||||
- Support hass-release inside devcontainer ([@pvizeli] - [#25090])
|
||||
- Do not reverse open/close calls ([@balloob] - [#24879]) ([tahoma docs]) (breaking change) (beta fix)
|
||||
- Add support for on/off climate ([@pvizeli] - [#25026]) ([climate docs]) (beta fix)
|
||||
- Change unique_id formula for Notion entities ([@bachya] - [#25076]) ([notion docs]) (beta fix)
|
||||
- Fix powercontrol media player alexa ([@pvizeli] - [#25080]) ([alexa docs]) (beta fix)
|
||||
- Support podcast episodes as Sonos favorites ([@amelchio] - [#25087]) ([sonos docs]) (beta fix)
|
||||
- Guard module being None ([@balloob] - [#25077]) (beta fix)
|
||||
- [climate] Add water_heater to evohome ([@zxdavb] - [#25035]) ([evohome docs]) (beta fix) (new-platform)
|
||||
- Fix Netatmo climate issue when device out of reach ([@cgtobi] - [#25096]) ([netatmo docs]) (beta fix)
|
||||
- Add turn on/off to coolmaster ([@OnFreund] - [#25097]) ([coolmaster docs]) (beta fix)
|
||||
- Fix window exception in WWLLN ([@bachya] - [#25100]) ([wwlln docs]) (beta fix)
|
||||
- Fix missing sensor unit in RainMachine ([@bachya] - [#25101]) ([rainmachine docs]) (beta fix)
|
||||
- Add climate related services to Homematic IP Cloud ([@SukramJ] - [#25079]) ([homematicip_cloud docs]) (beta fix)
|
||||
- Simplify Alexa/Google for new climate turn_on/off ([@balloob] - [#25115]) ([alexa docs]) ([google_assistant docs]) (beta fix)
|
||||
- Verify cloud user exists during boot ([@balloob] - [#25119]) ([cloud docs]) (beta fix)
|
||||
- Allow area ID in service call schemas ([@balloob] - [#25121]) ([light docs]) ([switch docs]) (beta fix)
|
||||
- Load requirements for platforms ([@elupus] - [#25133]) (beta fix)
|
||||
- Handle Sonos connection errors during setup ([@amelchio] - [#25135]) ([sonos docs]) (beta fix)
|
||||
- [climate-1.0] Bugfix evohome showstopper ([@zxdavb] - [#25139]) ([evohome docs]) (beta fix)
|
||||
- remove comfort mode ([@SukramJ] - [#25140]) ([homematicip_cloud docs]) (beta fix)
|
||||
- [climate-1.0] Add RoundThermostat to evohome ([@zxdavb] - [#25141]) ([evohome docs]) (beta fix)
|
||||
- [Climate] Hive Add water heater Component post the refresh of the climate component. ([@KJonline] - [#25148]) ([hive docs]) (beta fix) (new-platform)
|
||||
- Remove check and restore temp/mode changes ([@andersonshatch] - [#25149]) ([tado docs]) (beta fix)
|
||||
- Update pyhomematic to 0.1.60 ([@danielperna84] - [#25152]) ([homematic docs]) (beta fix)
|
||||
- Version sensor update ([@ludeeus] - [#25162]) ([version docs]) (beta fix)
|
||||
- Make dev tools titlte translatable ([@balloob] - [#25166]) ([frontend docs]) (beta fix)
|
||||
- Fix device types for some HomeMatic IP sensors ([@danielperna84] - [#25167]) ([homematic docs]) (beta fix)
|
||||
- Update pysonos to 0.0.21 ([@amelchio] - [#25168]) (beta fix)
|
||||
- Fix climate is_aux_heat type hint. ([@Adminiuga] - [#25170]) ([climate docs]) (beta fix)
|
||||
- Upgrade luftdaten to 0.6.2 ([@fabaff] - [#25177]) ([luftdaten docs]) (beta fix)
|
||||
- Correctly set property decorator on preset modes ([@balloob] - [#25151]) ([fritzbox docs]) (beta fix)
|
||||
- Fix device name customization on ZHA add devices page ([@dmulcahey] - [#25180]) ([zha docs]) (beta fix)
|
||||
- [climate] Tweak evohome migration ([@zxdavb] - [#25187]) ([evohome docs]) (beta fix)
|
||||
- Only include target temp if has right support flag ([@balloob] - [#25193]) ([climate docs]) (beta fix)
|
||||
|
||||
[#22316]: https://github.com/home-assistant/home-assistant/pull/22316
|
||||
[#22904]: https://github.com/home-assistant/home-assistant/pull/22904
|
||||
[#22932]: https://github.com/home-assistant/home-assistant/pull/22932
|
||||
[#23470]: https://github.com/home-assistant/home-assistant/pull/23470
|
||||
[#23691]: https://github.com/home-assistant/home-assistant/pull/23691
|
||||
[#23737]: https://github.com/home-assistant/home-assistant/pull/23737
|
||||
[#23838]: https://github.com/home-assistant/home-assistant/pull/23838
|
||||
[#23899]: https://github.com/home-assistant/home-assistant/pull/23899
|
||||
[#23941]: https://github.com/home-assistant/home-assistant/pull/23941
|
||||
[#23988]: https://github.com/home-assistant/home-assistant/pull/23988
|
||||
[#24369]: https://github.com/home-assistant/home-assistant/pull/24369
|
||||
[#24389]: https://github.com/home-assistant/home-assistant/pull/24389
|
||||
[#24445]: https://github.com/home-assistant/home-assistant/pull/24445
|
||||
[#24557]: https://github.com/home-assistant/home-assistant/pull/24557
|
||||
[#24584]: https://github.com/home-assistant/home-assistant/pull/24584
|
||||
[#24600]: https://github.com/home-assistant/home-assistant/pull/24600
|
||||
[#24621]: https://github.com/home-assistant/home-assistant/pull/24621
|
||||
[#24628]: https://github.com/home-assistant/home-assistant/pull/24628
|
||||
[#24634]: https://github.com/home-assistant/home-assistant/pull/24634
|
||||
[#24640]: https://github.com/home-assistant/home-assistant/pull/24640
|
||||
[#24641]: https://github.com/home-assistant/home-assistant/pull/24641
|
||||
[#24642]: https://github.com/home-assistant/home-assistant/pull/24642
|
||||
[#24646]: https://github.com/home-assistant/home-assistant/pull/24646
|
||||
[#24652]: https://github.com/home-assistant/home-assistant/pull/24652
|
||||
[#24660]: https://github.com/home-assistant/home-assistant/pull/24660
|
||||
[#24665]: https://github.com/home-assistant/home-assistant/pull/24665
|
||||
[#24666]: https://github.com/home-assistant/home-assistant/pull/24666
|
||||
[#24677]: https://github.com/home-assistant/home-assistant/pull/24677
|
||||
[#24678]: https://github.com/home-assistant/home-assistant/pull/24678
|
||||
[#24681]: https://github.com/home-assistant/home-assistant/pull/24681
|
||||
[#24682]: https://github.com/home-assistant/home-assistant/pull/24682
|
||||
[#24685]: https://github.com/home-assistant/home-assistant/pull/24685
|
||||
[#24690]: https://github.com/home-assistant/home-assistant/pull/24690
|
||||
[#24692]: https://github.com/home-assistant/home-assistant/pull/24692
|
||||
[#24693]: https://github.com/home-assistant/home-assistant/pull/24693
|
||||
[#24695]: https://github.com/home-assistant/home-assistant/pull/24695
|
||||
[#24707]: https://github.com/home-assistant/home-assistant/pull/24707
|
||||
[#24708]: https://github.com/home-assistant/home-assistant/pull/24708
|
||||
[#24733]: https://github.com/home-assistant/home-assistant/pull/24733
|
||||
[#24735]: https://github.com/home-assistant/home-assistant/pull/24735
|
||||
[#24748]: https://github.com/home-assistant/home-assistant/pull/24748
|
||||
[#24753]: https://github.com/home-assistant/home-assistant/pull/24753
|
||||
[#24756]: https://github.com/home-assistant/home-assistant/pull/24756
|
||||
[#24765]: https://github.com/home-assistant/home-assistant/pull/24765
|
||||
[#24771]: https://github.com/home-assistant/home-assistant/pull/24771
|
||||
[#24774]: https://github.com/home-assistant/home-assistant/pull/24774
|
||||
[#24782]: https://github.com/home-assistant/home-assistant/pull/24782
|
||||
[#24798]: https://github.com/home-assistant/home-assistant/pull/24798
|
||||
[#24804]: https://github.com/home-assistant/home-assistant/pull/24804
|
||||
[#24806]: https://github.com/home-assistant/home-assistant/pull/24806
|
||||
[#24807]: https://github.com/home-assistant/home-assistant/pull/24807
|
||||
[#24808]: https://github.com/home-assistant/home-assistant/pull/24808
|
||||
[#24809]: https://github.com/home-assistant/home-assistant/pull/24809
|
||||
[#24810]: https://github.com/home-assistant/home-assistant/pull/24810
|
||||
[#24812]: https://github.com/home-assistant/home-assistant/pull/24812
|
||||
[#24821]: https://github.com/home-assistant/home-assistant/pull/24821
|
||||
[#24829]: https://github.com/home-assistant/home-assistant/pull/24829
|
||||
[#24830]: https://github.com/home-assistant/home-assistant/pull/24830
|
||||
[#24833]: https://github.com/home-assistant/home-assistant/pull/24833
|
||||
[#24837]: https://github.com/home-assistant/home-assistant/pull/24837
|
||||
[#24840]: https://github.com/home-assistant/home-assistant/pull/24840
|
||||
[#24842]: https://github.com/home-assistant/home-assistant/pull/24842
|
||||
[#24844]: https://github.com/home-assistant/home-assistant/pull/24844
|
||||
[#24845]: https://github.com/home-assistant/home-assistant/pull/24845
|
||||
[#24846]: https://github.com/home-assistant/home-assistant/pull/24846
|
||||
[#24847]: https://github.com/home-assistant/home-assistant/pull/24847
|
||||
[#24848]: https://github.com/home-assistant/home-assistant/pull/24848
|
||||
[#24850]: https://github.com/home-assistant/home-assistant/pull/24850
|
||||
[#24851]: https://github.com/home-assistant/home-assistant/pull/24851
|
||||
[#24852]: https://github.com/home-assistant/home-assistant/pull/24852
|
||||
[#24854]: https://github.com/home-assistant/home-assistant/pull/24854
|
||||
[#24861]: https://github.com/home-assistant/home-assistant/pull/24861
|
||||
[#24871]: https://github.com/home-assistant/home-assistant/pull/24871
|
||||
[#24875]: https://github.com/home-assistant/home-assistant/pull/24875
|
||||
[#24877]: https://github.com/home-assistant/home-assistant/pull/24877
|
||||
[#24878]: https://github.com/home-assistant/home-assistant/pull/24878
|
||||
[#24879]: https://github.com/home-assistant/home-assistant/pull/24879
|
||||
[#24880]: https://github.com/home-assistant/home-assistant/pull/24880
|
||||
[#24881]: https://github.com/home-assistant/home-assistant/pull/24881
|
||||
[#24882]: https://github.com/home-assistant/home-assistant/pull/24882
|
||||
[#24885]: https://github.com/home-assistant/home-assistant/pull/24885
|
||||
[#24886]: https://github.com/home-assistant/home-assistant/pull/24886
|
||||
[#24892]: https://github.com/home-assistant/home-assistant/pull/24892
|
||||
[#24893]: https://github.com/home-assistant/home-assistant/pull/24893
|
||||
[#24894]: https://github.com/home-assistant/home-assistant/pull/24894
|
||||
[#24902]: https://github.com/home-assistant/home-assistant/pull/24902
|
||||
[#24904]: https://github.com/home-assistant/home-assistant/pull/24904
|
||||
[#24905]: https://github.com/home-assistant/home-assistant/pull/24905
|
||||
[#24909]: https://github.com/home-assistant/home-assistant/pull/24909
|
||||
[#24910]: https://github.com/home-assistant/home-assistant/pull/24910
|
||||
[#24912]: https://github.com/home-assistant/home-assistant/pull/24912
|
||||
[#24917]: https://github.com/home-assistant/home-assistant/pull/24917
|
||||
[#24921]: https://github.com/home-assistant/home-assistant/pull/24921
|
||||
[#24927]: https://github.com/home-assistant/home-assistant/pull/24927
|
||||
[#24928]: https://github.com/home-assistant/home-assistant/pull/24928
|
||||
[#24930]: https://github.com/home-assistant/home-assistant/pull/24930
|
||||
[#24932]: https://github.com/home-assistant/home-assistant/pull/24932
|
||||
[#24941]: https://github.com/home-assistant/home-assistant/pull/24941
|
||||
[#24944]: https://github.com/home-assistant/home-assistant/pull/24944
|
||||
[#24946]: https://github.com/home-assistant/home-assistant/pull/24946
|
||||
[#24951]: https://github.com/home-assistant/home-assistant/pull/24951
|
||||
[#24955]: https://github.com/home-assistant/home-assistant/pull/24955
|
||||
[#24957]: https://github.com/home-assistant/home-assistant/pull/24957
|
||||
[#24958]: https://github.com/home-assistant/home-assistant/pull/24958
|
||||
[#24961]: https://github.com/home-assistant/home-assistant/pull/24961
|
||||
[#24963]: https://github.com/home-assistant/home-assistant/pull/24963
|
||||
[#24971]: https://github.com/home-assistant/home-assistant/pull/24971
|
||||
[#24972]: https://github.com/home-assistant/home-assistant/pull/24972
|
||||
[#24974]: https://github.com/home-assistant/home-assistant/pull/24974
|
||||
[#24975]: https://github.com/home-assistant/home-assistant/pull/24975
|
||||
[#24984]: https://github.com/home-assistant/home-assistant/pull/24984
|
||||
[#24985]: https://github.com/home-assistant/home-assistant/pull/24985
|
||||
[#24986]: https://github.com/home-assistant/home-assistant/pull/24986
|
||||
[#24990]: https://github.com/home-assistant/home-assistant/pull/24990
|
||||
[#24998]: https://github.com/home-assistant/home-assistant/pull/24998
|
||||
[#25001]: https://github.com/home-assistant/home-assistant/pull/25001
|
||||
[#25004]: https://github.com/home-assistant/home-assistant/pull/25004
|
||||
[#25005]: https://github.com/home-assistant/home-assistant/pull/25005
|
||||
[#25006]: https://github.com/home-assistant/home-assistant/pull/25006
|
||||
[#25008]: https://github.com/home-assistant/home-assistant/pull/25008
|
||||
[#25011]: https://github.com/home-assistant/home-assistant/pull/25011
|
||||
[#25015]: https://github.com/home-assistant/home-assistant/pull/25015
|
||||
[#25016]: https://github.com/home-assistant/home-assistant/pull/25016
|
||||
[#25017]: https://github.com/home-assistant/home-assistant/pull/25017
|
||||
[#25018]: https://github.com/home-assistant/home-assistant/pull/25018
|
||||
[#25019]: https://github.com/home-assistant/home-assistant/pull/25019
|
||||
[#25023]: https://github.com/home-assistant/home-assistant/pull/25023
|
||||
[#25024]: https://github.com/home-assistant/home-assistant/pull/25024
|
||||
[#25026]: https://github.com/home-assistant/home-assistant/pull/25026
|
||||
[#25027]: https://github.com/home-assistant/home-assistant/pull/25027
|
||||
[#25028]: https://github.com/home-assistant/home-assistant/pull/25028
|
||||
[#25029]: https://github.com/home-assistant/home-assistant/pull/25029
|
||||
[#25030]: https://github.com/home-assistant/home-assistant/pull/25030
|
||||
[#25035]: https://github.com/home-assistant/home-assistant/pull/25035
|
||||
[#25036]: https://github.com/home-assistant/home-assistant/pull/25036
|
||||
[#25037]: https://github.com/home-assistant/home-assistant/pull/25037
|
||||
[#25039]: https://github.com/home-assistant/home-assistant/pull/25039
|
||||
[#25040]: https://github.com/home-assistant/home-assistant/pull/25040
|
||||
[#25041]: https://github.com/home-assistant/home-assistant/pull/25041
|
||||
[#25043]: https://github.com/home-assistant/home-assistant/pull/25043
|
||||
[#25045]: https://github.com/home-assistant/home-assistant/pull/25045
|
||||
[#25046]: https://github.com/home-assistant/home-assistant/pull/25046
|
||||
[#25048]: https://github.com/home-assistant/home-assistant/pull/25048
|
||||
[#25050]: https://github.com/home-assistant/home-assistant/pull/25050
|
||||
[#25053]: https://github.com/home-assistant/home-assistant/pull/25053
|
||||
[#25059]: https://github.com/home-assistant/home-assistant/pull/25059
|
||||
[#25061]: https://github.com/home-assistant/home-assistant/pull/25061
|
||||
[#25062]: https://github.com/home-assistant/home-assistant/pull/25062
|
||||
[#25063]: https://github.com/home-assistant/home-assistant/pull/25063
|
||||
[#25064]: https://github.com/home-assistant/home-assistant/pull/25064
|
||||
[#25066]: https://github.com/home-assistant/home-assistant/pull/25066
|
||||
[#25067]: https://github.com/home-assistant/home-assistant/pull/25067
|
||||
[#25069]: https://github.com/home-assistant/home-assistant/pull/25069
|
||||
[#25073]: https://github.com/home-assistant/home-assistant/pull/25073
|
||||
[#25076]: https://github.com/home-assistant/home-assistant/pull/25076
|
||||
[#25077]: https://github.com/home-assistant/home-assistant/pull/25077
|
||||
[#25079]: https://github.com/home-assistant/home-assistant/pull/25079
|
||||
[#25080]: https://github.com/home-assistant/home-assistant/pull/25080
|
||||
[#25087]: https://github.com/home-assistant/home-assistant/pull/25087
|
||||
[#25090]: https://github.com/home-assistant/home-assistant/pull/25090
|
||||
[#25096]: https://github.com/home-assistant/home-assistant/pull/25096
|
||||
[#25097]: https://github.com/home-assistant/home-assistant/pull/25097
|
||||
[#25100]: https://github.com/home-assistant/home-assistant/pull/25100
|
||||
[#25101]: https://github.com/home-assistant/home-assistant/pull/25101
|
||||
[#25115]: https://github.com/home-assistant/home-assistant/pull/25115
|
||||
[#25119]: https://github.com/home-assistant/home-assistant/pull/25119
|
||||
[#25121]: https://github.com/home-assistant/home-assistant/pull/25121
|
||||
[#25133]: https://github.com/home-assistant/home-assistant/pull/25133
|
||||
[#25135]: https://github.com/home-assistant/home-assistant/pull/25135
|
||||
[#25139]: https://github.com/home-assistant/home-assistant/pull/25139
|
||||
[#25140]: https://github.com/home-assistant/home-assistant/pull/25140
|
||||
[#25141]: https://github.com/home-assistant/home-assistant/pull/25141
|
||||
[#25148]: https://github.com/home-assistant/home-assistant/pull/25148
|
||||
[#25149]: https://github.com/home-assistant/home-assistant/pull/25149
|
||||
[#25151]: https://github.com/home-assistant/home-assistant/pull/25151
|
||||
[#25152]: https://github.com/home-assistant/home-assistant/pull/25152
|
||||
[#25162]: https://github.com/home-assistant/home-assistant/pull/25162
|
||||
[#25166]: https://github.com/home-assistant/home-assistant/pull/25166
|
||||
[#25167]: https://github.com/home-assistant/home-assistant/pull/25167
|
||||
[#25168]: https://github.com/home-assistant/home-assistant/pull/25168
|
||||
[#25170]: https://github.com/home-assistant/home-assistant/pull/25170
|
||||
[#25177]: https://github.com/home-assistant/home-assistant/pull/25177
|
||||
[#25180]: https://github.com/home-assistant/home-assistant/pull/25180
|
||||
[#25187]: https://github.com/home-assistant/home-assistant/pull/25187
|
||||
[#25193]: https://github.com/home-assistant/home-assistant/pull/25193
|
||||
[@Adminiuga]: https://github.com/Adminiuga
|
||||
[@Cereal2nd]: https://github.com/Cereal2nd
|
||||
[@Chris-Johnston]: https://github.com/Chris-Johnston
|
||||
[@Danielhiversen]: https://github.com/Danielhiversen
|
||||
[@Emilv2]: https://github.com/Emilv2
|
||||
[@GrandNewbien]: https://github.com/GrandNewbien
|
||||
[@JeffLIrion]: https://github.com/JeffLIrion
|
||||
[@KJonline]: https://github.com/KJonline
|
||||
[@Martijn02]: https://github.com/Martijn02
|
||||
[@Matte23]: https://github.com/Matte23
|
||||
[@OnFreund]: https://github.com/OnFreund
|
||||
[@PaulAnnekov]: https://github.com/PaulAnnekov
|
||||
[@StevenLooman]: https://github.com/StevenLooman
|
||||
[@SukramJ]: https://github.com/SukramJ
|
||||
[@Swamp-Ig]: https://github.com/Swamp-Ig
|
||||
[@alain57]: https://github.com/alain57
|
||||
[@alengwenus]: https://github.com/alengwenus
|
||||
[@amelchio]: https://github.com/amelchio
|
||||
[@andersonshatch]: https://github.com/andersonshatch
|
||||
[@andre-richter]: https://github.com/andre-richter
|
||||
[@andrewsayre]: https://github.com/andrewsayre
|
||||
[@apeeters]: https://github.com/apeeters
|
||||
[@arigilder]: https://github.com/arigilder
|
||||
[@bachya]: https://github.com/bachya
|
||||
[@balloob]: https://github.com/balloob
|
||||
[@cadavre]: https://github.com/cadavre
|
||||
[@cdce8p]: https://github.com/cdce8p
|
||||
[@cgarwood]: https://github.com/cgarwood
|
||||
[@cgtobi]: https://github.com/cgtobi
|
||||
[@cnrd]: https://github.com/cnrd
|
||||
[@ctso]: https://github.com/ctso
|
||||
[@cybe]: https://github.com/cybe
|
||||
[@danielperna84]: https://github.com/danielperna84
|
||||
[@davet2001]: https://github.com/davet2001
|
||||
[@dmulcahey]: https://github.com/dmulcahey
|
||||
[@dreed47]: https://github.com/dreed47
|
||||
[@elupus]: https://github.com/elupus
|
||||
[@endor-force]: https://github.com/endor-force
|
||||
[@exxamalte]: https://github.com/exxamalte
|
||||
[@fabaff]: https://github.com/fabaff
|
||||
[@foreign-sub]: https://github.com/foreign-sub
|
||||
[@frenck]: https://github.com/frenck
|
||||
[@gadgetchnnel]: https://github.com/gadgetchnnel
|
||||
[@h3ndrik]: https://github.com/h3ndrik
|
||||
[@jesserizzo]: https://github.com/jesserizzo
|
||||
[@jkeljo]: https://github.com/jkeljo
|
||||
[@jlrgraham]: https://github.com/jlrgraham
|
||||
[@jmw6773]: https://github.com/jmw6773
|
||||
[@johnluetke]: https://github.com/johnluetke
|
||||
[@kellerza]: https://github.com/kellerza
|
||||
[@kevank]: https://github.com/kevank
|
||||
[@kreegahbundolo]: https://github.com/kreegahbundolo
|
||||
[@ktnrg45]: https://github.com/ktnrg45
|
||||
[@ludeeus]: https://github.com/ludeeus
|
||||
[@lufton]: https://github.com/lufton
|
||||
[@luukd]: https://github.com/luukd
|
||||
[@mezz64]: https://github.com/mezz64
|
||||
[@monte-monte]: https://github.com/monte-monte
|
||||
[@mvn23]: https://github.com/mvn23
|
||||
[@nielstron]: https://github.com/nielstron
|
||||
[@pnbruckner]: https://github.com/pnbruckner
|
||||
[@pvizeli]: https://github.com/pvizeli
|
||||
[@qypea]: https://github.com/qypea
|
||||
[@realthk]: https://github.com/realthk
|
||||
[@scop]: https://github.com/scop
|
||||
[@sfjes]: https://github.com/sfjes
|
||||
[@slackr31337]: https://github.com/slackr31337
|
||||
[@squishykid]: https://github.com/squishykid
|
||||
[@teharris1]: https://github.com/teharris1
|
||||
[@tsvi]: https://github.com/tsvi
|
||||
[@zewelor]: https://github.com/zewelor
|
||||
[@zombielinux]: https://github.com/zombielinux
|
||||
[@zxdavb]: https://github.com/zxdavb
|
||||
[alert docs]: /components/alert/
|
||||
[alexa docs]: /components/alexa/
|
||||
[ambiclimate docs]: /components/ambiclimate/
|
||||
[ambient_station docs]: /components/ambient_station/
|
||||
[androidtv docs]: /components/androidtv/
|
||||
[arcam_fmj docs]: /components/arcam_fmj/
|
||||
[aurora_abb_powerone docs]: /components/aurora_abb_powerone/
|
||||
[automation docs]: /components/automation/
|
||||
[braviatv docs]: /components/braviatv/
|
||||
[cert_expiry docs]: /components/cert_expiry/
|
||||
[climate docs]: /components/climate/
|
||||
[cloud docs]: /components/cloud/
|
||||
[config docs]: /components/config/
|
||||
[coolmaster docs]: /components/coolmaster/
|
||||
[cups docs]: /components/cups/
|
||||
[deutsche_bahn docs]: /components/deutsche_bahn/
|
||||
[device_tracker docs]: /components/device_tracker/
|
||||
[discord docs]: /components/discord/
|
||||
[dlna_dmr docs]: /components/dlna_dmr/
|
||||
[downloader docs]: /components/downloader/
|
||||
[ecobee docs]: /components/ecobee/
|
||||
[enphase_envoy docs]: /components/enphase_envoy/
|
||||
[evohome docs]: /components/evohome/
|
||||
[fritzbox docs]: /components/fritzbox/
|
||||
[frontend docs]: /components/frontend/
|
||||
[geniushub docs]: /components/geniushub/
|
||||
[geo_json_events docs]: /components/geo_json_events/
|
||||
[geo_location docs]: /components/geo_location/
|
||||
[glances docs]: /components/glances/
|
||||
[google_assistant docs]: /components/google_assistant/
|
||||
[google_cloud docs]: /components/google_cloud/
|
||||
[hikvision docs]: /components/hikvision/
|
||||
[hive docs]: /components/hive/
|
||||
[homekit docs]: /components/homekit/
|
||||
[homematic docs]: /components/homematic/
|
||||
[homematicip_cloud docs]: /components/homematicip_cloud/
|
||||
[honeywell docs]: /components/honeywell/
|
||||
[input_datetime docs]: /components/input_datetime/
|
||||
[insteon docs]: /components/insteon/
|
||||
[iqvia docs]: /components/iqvia/
|
||||
[jewish_calendar docs]: /components/jewish_calendar/
|
||||
[knx docs]: /components/knx/
|
||||
[lcn docs]: /components/lcn/
|
||||
[life360 docs]: /components/life360/
|
||||
[light docs]: /components/light/
|
||||
[logbook docs]: /components/logbook/
|
||||
[luftdaten docs]: /components/luftdaten/
|
||||
[media_extractor docs]: /components/media_extractor/
|
||||
[mqtt docs]: /components/mqtt/
|
||||
[mysensors docs]: /components/mysensors/
|
||||
[nest docs]: /components/nest/
|
||||
[netatmo docs]: /components/netatmo/
|
||||
[nmap_tracker docs]: /components/nmap_tracker/
|
||||
[notion docs]: /components/notion/
|
||||
[nsw_rural_fire_service_feed docs]: /components/nsw_rural_fire_service_feed/
|
||||
[opencv docs]: /components/opencv/
|
||||
[opentherm_gw docs]: /components/opentherm_gw/
|
||||
[plant docs]: /components/plant/
|
||||
[ps4 docs]: /components/ps4/
|
||||
[pushover docs]: /components/pushover/
|
||||
[radiotherm docs]: /components/radiotherm/
|
||||
[rainmachine docs]: /components/rainmachine/
|
||||
[recorder docs]: /components/recorder/
|
||||
[reddit docs]: /components/reddit/
|
||||
[scrape docs]: /components/scrape/
|
||||
[sensibo docs]: /components/sensibo/
|
||||
[sensor docs]: /components/sensor/
|
||||
[simplisafe docs]: /components/simplisafe/
|
||||
[sisyphus docs]: /components/sisyphus/
|
||||
[sleepiq docs]: /components/sleepiq/
|
||||
[sma docs]: /components/sma/
|
||||
[smartthings docs]: /components/smartthings/
|
||||
[solax docs]: /components/solax/
|
||||
[sonos docs]: /components/sonos/
|
||||
[sql docs]: /components/sql/
|
||||
[steam_online docs]: /components/steam_online/
|
||||
[switch docs]: /components/switch/
|
||||
[switchmate docs]: /components/switchmate/
|
||||
[syncthru docs]: /components/syncthru/
|
||||
[systemmonitor docs]: /components/systemmonitor/
|
||||
[sytadin docs]: /components/sytadin/
|
||||
[tado docs]: /components/tado/
|
||||
[tahoma docs]: /components/tahoma/
|
||||
[template docs]: /components/template/
|
||||
[tensorflow docs]: /components/tensorflow/
|
||||
[toon docs]: /components/toon/
|
||||
[trafikverket_train docs]: /components/trafikverket_train/
|
||||
[trend docs]: /components/trend/
|
||||
[tuya docs]: /components/tuya/
|
||||
[twilio_sms docs]: /components/twilio_sms/
|
||||
[upnp docs]: /components/upnp/
|
||||
[usgs_earthquakes_feed docs]: /components/usgs_earthquakes_feed/
|
||||
[vallox docs]: /components/vallox/
|
||||
[velbus docs]: /components/velbus/
|
||||
[vera docs]: /components/vera/
|
||||
[version docs]: /components/version/
|
||||
[vizio docs]: /components/vizio/
|
||||
[watson_tts docs]: /components/watson_tts/
|
||||
[waze_travel_time docs]: /components/waze_travel_time/
|
||||
[wwlln docs]: /components/wwlln/
|
||||
[yeelight docs]: /components/yeelight/
|
||||
[zestimate docs]: /components/zestimate/
|
||||
[zha docs]: /components/zha/
|
||||
[zwave docs]: /components/zwave/
|
BIN
source/images/blog/2019-07-release-96/components.png
Normal file
After Width: | Height: | Size: 83 KiB |
BIN
source/images/blog/2019-07-release-96/demo-sidebar.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
source/images/screenshots/wwlln-feed-map.png
Normal file
After Width: | Height: | Size: 105 KiB |
6
source/images/supported_brands/arcam.svg
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="2001pt" height="418pt" viewBox="0 0 2001 418" version="1.1">
|
||||
<g id="surface1">
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(6.666667%,6.666667%,6.666667%);fill-opacity:1;" d="M 507.015625 66.371094 L 507.015625 180.976562 C 516.714844 180.976562 525.527344 180.976562 532.203125 180.976562 C 563.808594 180.976562 602.085938 171.660156 602.085938 125.3125 C 602.230469 108.890625 595.519531 93.152344 583.566406 81.894531 C 571.613281 70.632812 555.507812 64.871094 539.128906 65.992188 L 507.015625 65.992188 M 1768.617188 270.269531 C 1819.738281 184.882812 1869.351562 92.691406 1919.71875 1.257812 L 1995.273438 412.332031 L 1919.71875 412.332031 L 1887.359375 228.082031 L 1772.015625 414.726562 C 1770.761719 414.925781 1769.632812 415.601562 1768.867188 416.613281 L 1649.621094 230.472656 C 1635.894531 289.160156 1625.445312 351 1613.355469 412.332031 L 1541.957031 412.332031 L 1617.511719 3.652344 Z M 1072.148438 30.226562 L 1072.148438 110.074219 C 1038.277344 86.019531 1000.5 67.757812 957.308594 68.765625 C 743.246094 73.925781 809.226562 479.332031 1071.519531 302.257812 L 1071.519531 382.234375 C 1035.003906 405.910156 961.96875 424.421875 919.15625 415.859375 C 654.722656 363.46875 720.832031 -4.28125 952.019531 0.25 C 993.574219 1.007812 1037.015625 5.917969 1072.148438 30.476562 M 572.371094 0 C 642.757812 0 682.675781 54.027344 682.675781 116.117188 C 682.675781 159.820312 657.492188 218.003906 599.316406 227.199219 L 707.230469 412.332031 L 614.175781 412.332031 L 507.773438 228.960938 C 507.503906 229.429688 507.503906 230.003906 507.773438 230.472656 L 507.773438 412.332031 L 425.925781 412.332031 L 425.925781 0 Z M 370.898438 412.332031 L 289.550781 412.332031 C 276.960938 382.234375 252.910156 324.171875 252.910156 324.171875 L 127.617188 324.171875 L 92.109375 412.332031 L 5.726562 412.332031 C 38.214844 335.257812 62.894531 278.707031 90.472656 215.234375 C 120.566406 146.21875 148.144531 84.757812 186.046875 1.890625 Z M 153.179688 261.203125 L 226.464844 261.203125 L 188.691406 179.71875 Z M 1486.554688 412.332031 L 1405.710938 412.332031 C 1393.121094 382.234375 1369.070312 324.171875 1369.070312 324.171875 L 1243.90625 324.171875 L 1208.269531 412.332031 L 1122.011719 412.332031 C 1154.5 335.257812 1179.179688 278.707031 1206.757812 215.234375 C 1236.726562 146.21875 1264.933594 84.757812 1302.710938 1.890625 Z M 1268.710938 261.203125 L 1342.121094 261.203125 L 1304.347656 179.71875 Z M 1268.710938 261.203125 "/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 2.6 KiB |
BIN
source/images/supported_brands/notion.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
source/images/supported_brands/powerone.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
source/images/supported_brands/vallox.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
source/images/supported_brands/wwlln.jpg
Normal file
After Width: | Height: | Size: 82 KiB |