mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-19 07:17:14 +00:00
Merge branch 'current' into next
This commit is contained in:
commit
19ee7bdceb
@ -142,13 +142,13 @@ social:
|
|||||||
# Home Assistant release details
|
# Home Assistant release details
|
||||||
current_major_version: 0
|
current_major_version: 0
|
||||||
current_minor_version: 81
|
current_minor_version: 81
|
||||||
current_patch_version: 0
|
current_patch_version: 1
|
||||||
date_released: 2018-10-29
|
date_released: 2018-10-28
|
||||||
|
|
||||||
# Either # or the anchor link to latest release notes in the blog post.
|
# Either # or the anchor link to latest release notes in the blog post.
|
||||||
# Must be prefixed with a # and have double quotes around it.
|
# Must be prefixed with a # and have double quotes around it.
|
||||||
# Major release:
|
# Major release:
|
||||||
patch_version_notes: "#"
|
patch_version_notes: "#release-0811---october-28"
|
||||||
# Minor release (Example #release-0431---april-25):
|
# Minor release (Example #release-0431---april-25):
|
||||||
|
|
||||||
# Date we moved to Discourse for comments
|
# Date we moved to Discourse for comments
|
||||||
|
@ -52,7 +52,7 @@ sensors:
|
|||||||
type: string
|
type: string
|
||||||
device_class:
|
device_class:
|
||||||
description: >
|
description: >
|
||||||
The [type/class](/components/binary_sensor/) of
|
The [type/class](/components/binary_sensor/#device-class) of
|
||||||
the sensor to set the icon in the frontend.
|
the sensor to set the icon in the frontend.
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
|
@ -45,13 +45,13 @@ name:
|
|||||||
country:
|
country:
|
||||||
description: >
|
description: >
|
||||||
Country code according to
|
Country code according to
|
||||||
[holidays](https://pypi.python.org/pypi/holidays/0.9.4) notation.
|
[holidays](https://pypi.org/project/holidays/) notation.
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
province:
|
province:
|
||||||
description: >
|
description: >
|
||||||
Province code according to
|
Province code according to
|
||||||
[holidays](https://pypi.python.org/pypi/holidays/0.9.4) notation.
|
[holidays](https://pypi.org/project/holidays/) notation.
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
workdays:
|
workdays:
|
||||||
@ -100,3 +100,9 @@ automation:
|
|||||||
service: switch.turn_on
|
service: switch.turn_on
|
||||||
entity_id: switch.heater
|
entity_id: switch.heater
|
||||||
```
|
```
|
||||||
|
|
||||||
|
<p class='note'>
|
||||||
|
Please remember that [as explained here][devices] you can only have a single `automation:` entry. Add the automation to your existing automations.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
[devices]: https://www.home-assistant.io/docs/configuration/devices/
|
||||||
|
@ -8,7 +8,7 @@ comments: false
|
|||||||
sharing: true
|
sharing: true
|
||||||
footer: true
|
footer: true
|
||||||
ha_category: Camera
|
ha_category: Camera
|
||||||
logo: camcorder.png
|
logo: home-assistant.png
|
||||||
ha_release: pre 0.7
|
ha_release: pre 0.7
|
||||||
ha_iot_class: "depends"
|
ha_iot_class: "depends"
|
||||||
---
|
---
|
||||||
|
@ -7,7 +7,7 @@ sidebar: true
|
|||||||
comments: false
|
comments: false
|
||||||
sharing: true
|
sharing: true
|
||||||
footer: true
|
footer: true
|
||||||
logo: camcorder.png
|
logo: home-assistant.png
|
||||||
ha_category: Camera
|
ha_category: Camera
|
||||||
ha_release: pre 0.7
|
ha_release: pre 0.7
|
||||||
ha_iot_class: "depends"
|
ha_iot_class: "depends"
|
||||||
|
@ -7,7 +7,7 @@ sidebar: true
|
|||||||
comments: false
|
comments: false
|
||||||
sharing: true
|
sharing: true
|
||||||
footer: true
|
footer: true
|
||||||
logo: heat-control.png
|
logo: home-assistant.png
|
||||||
ha_category: Climate
|
ha_category: Climate
|
||||||
ha_release: pre 0.7
|
ha_release: pre 0.7
|
||||||
ha_iot_class: "Local Polling"
|
ha_iot_class: "Local Polling"
|
||||||
|
@ -24,8 +24,8 @@ It uses a sensor under the hood to obtain the current temperature.
|
|||||||
climate:
|
climate:
|
||||||
- platform: mqtt
|
- platform: mqtt
|
||||||
name: Study
|
name: Study
|
||||||
current_temperature_topic: /sensors/hvac_study/current_temp
|
current_temperature_topic: sensors/hvac_study/current_temp
|
||||||
temperature_command_topic: /sensors/hvac_study/target_temp
|
temperature_command_topic: sensors/hvac_study/target_temp
|
||||||
```
|
```
|
||||||
|
|
||||||
{% configuration %}
|
{% configuration %}
|
||||||
@ -58,12 +58,12 @@ payload_on:
|
|||||||
description: The payload that represents enabled state.
|
description: The payload that represents enabled state.
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
default: ON
|
default: "ON"
|
||||||
payload_off:
|
payload_off:
|
||||||
description: The payload that represents disabled state.
|
description: The payload that represents disabled state.
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
default: OFF
|
default: "OFF"
|
||||||
availability_topic:
|
availability_topic:
|
||||||
description: The MQTT topic subscribed to receive availability (online/offline) updates.
|
description: The MQTT topic subscribed to receive availability (online/offline) updates.
|
||||||
required: false
|
required: false
|
||||||
@ -224,9 +224,9 @@ climate:
|
|||||||
- platform: mqtt
|
- platform: mqtt
|
||||||
name: Study
|
name: Study
|
||||||
modes:
|
modes:
|
||||||
- off
|
- "off"
|
||||||
- on
|
- "on"
|
||||||
- auto
|
- "auto"
|
||||||
mode_command_topic: "study/ac/mode/set"
|
mode_command_topic: "study/ac/mode/set"
|
||||||
mode_state_topic: "study/ac/mode/state"
|
mode_state_topic: "study/ac/mode/state"
|
||||||
mode_state_template: "{{ value_json }}"
|
mode_state_template: "{{ value_json }}"
|
||||||
@ -246,16 +246,16 @@ climate:
|
|||||||
- platform: mqtt
|
- platform: mqtt
|
||||||
name: Study
|
name: Study
|
||||||
modes:
|
modes:
|
||||||
- off
|
- "off"
|
||||||
- cool
|
- "cool"
|
||||||
- fan_only
|
- "fan_only"
|
||||||
swing_modes:
|
swing_modes:
|
||||||
- on
|
- "on"
|
||||||
- off
|
- "off"
|
||||||
fan_modes:
|
fan_modes:
|
||||||
- high
|
- "high"
|
||||||
- medium
|
- "medium"
|
||||||
- low
|
- "low"
|
||||||
power_command_topic: "study/ac/power/set"
|
power_command_topic: "study/ac/power/set"
|
||||||
mode_command_topic: "study/ac/mode/set"
|
mode_command_topic: "study/ac/mode/set"
|
||||||
temperature_command_topic: "study/ac/temperature/set"
|
temperature_command_topic: "study/ac/temperature/set"
|
||||||
|
@ -54,11 +54,12 @@ Some BTLE devices (e.g., fitness trackers) are only visible to the devices that
|
|||||||
|
|
||||||
## {% linkable_title Rootless Setup %}
|
## {% linkable_title Rootless Setup %}
|
||||||
|
|
||||||
Normally accessing the Bluetooth stack is reserved for root, but running programs that are networked as root is a bad security wise. To allow non-root access to the Bluetooth stack we can give Python 3 the missing capabilities to access the Bluetooth stack. Quite like setting the setuid bit (see [Stack Exchange](http://unix.stackexchange.com/questions/96106/bluetooth-le-scan-as-non-root) for more information).
|
Normally accessing the Bluetooth stack is reserved for root, but running programs that are networked as root is a bad security wise. To allow non-root access to the Bluetooth stack we can give Python 3 and hcitool the missing capabilities to access the Bluetooth stack. Quite like setting the setuid bit (see [Stack Exchange](http://unix.stackexchange.com/questions/96106/bluetooth-le-scan-as-non-root) for more information).
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
$ sudo apt-get install libcap2-bin
|
$ sudo apt-get install libcap2-bin
|
||||||
$ sudo setcap 'cap_net_raw,cap_net_admin+eip' `readlink -f \`which python3\``
|
$ sudo setcap 'cap_net_raw,cap_net_admin+eip' `readlink -f \`which python3\``
|
||||||
|
$ sudo setcap 'cap_net_raw+ep' `readlink -f \`which hcitool\``
|
||||||
```
|
```
|
||||||
|
|
||||||
A restart of Home Assistant is required.
|
A restart of Home Assistant is required.
|
||||||
|
@ -101,7 +101,11 @@ Home Assistant will use the enter and leave messages to set your zone location.
|
|||||||
|
|
||||||
When you exit a zone, Home Assistant will start using location updates to track you again. To make sure that Home Assistant correctly exits a zone (which it calculates based on your GPS coordinates), you may want to set your Zone radius in HA to be slightly smaller that the Owntracks region radius.
|
When you exit a zone, Home Assistant will start using location updates to track you again. To make sure that Home Assistant correctly exits a zone (which it calculates based on your GPS coordinates), you may want to set your Zone radius in HA to be slightly smaller that the Owntracks region radius.
|
||||||
|
|
||||||
### {% linkable_title Using Owntracks regions - forcing Owntracks to update using %}iBeacons
|
### {% linkable_title Using Owntracks regions - forcing Owntracks to update using iBeacons %}
|
||||||
|
|
||||||
|
<p class='note'>
|
||||||
|
Owntracks v2.0.0 removes support for iBecons on Android.
|
||||||
|
</p>
|
||||||
|
|
||||||
When run in the usual *significant changes mode* (which is kind to your phone battery), Owntracks sometimes doesn't update your location as quickly as you'd like when you arrive at a zone. This can be annoying if you want to trigger an automation when you get home. You can improve the situation using iBeacons.
|
When run in the usual *significant changes mode* (which is kind to your phone battery), Owntracks sometimes doesn't update your location as quickly as you'd like when you arrive at a zone. This can be annoying if you want to trigger an automation when you get home. You can improve the situation using iBeacons.
|
||||||
|
|
||||||
|
@ -50,12 +50,12 @@ payload_on:
|
|||||||
description: The payload that represents the running state.
|
description: The payload that represents the running state.
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
default: ON
|
default: "ON"
|
||||||
payload_off:
|
payload_off:
|
||||||
description: The payload that represents the stop state.
|
description: The payload that represents the stop state.
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
default: OFF
|
default: "OFF"
|
||||||
state_value_template:
|
state_value_template:
|
||||||
description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the state."
|
description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the state."
|
||||||
required: false
|
required: false
|
||||||
|
@ -172,7 +172,11 @@ A common situation might be if you decide to disable parts of the configuration
|
|||||||
|
|
||||||
Depending on your individual setup, it might be necessary to disable `Auto Start` for all accessories to be available for `HomeKit`. Only those entities that are fully setup when the `HomeKit` component is started, can be added. To start `HomeKit` when `auto_start: False`, you can call the service `homekit.start`.
|
Depending on your individual setup, it might be necessary to disable `Auto Start` for all accessories to be available for `HomeKit`. Only those entities that are fully setup when the `HomeKit` component is started, can be added. To start `HomeKit` when `auto_start: False`, you can call the service `homekit.start`.
|
||||||
|
|
||||||
If you have Z-Wave entities you want exposed to HomeKit then you'll need to disable auto start and then start it after the Z-Wave mesh is ready. This is because the Z-Wave entities won't be fully set up until then. This can be automated using an automation:
|
If you have Z-Wave entities you want exposed to HomeKit then you'll need to disable auto start and then start it after the Z-Wave mesh is ready. This is because the Z-Wave entities won't be fully set up until then. This can be automated using an automation.
|
||||||
|
|
||||||
|
<p class='note'
|
||||||
|
Please remember that [as explained here][devices] you can only have a single `automation:` entry. Add the automation to your existing automations, or use `automation homekit:`
|
||||||
|
</p>
|
||||||
|
|
||||||
{% raw %}
|
{% raw %}
|
||||||
```yaml
|
```yaml
|
||||||
@ -352,3 +356,5 @@ Unfortunately that sometimes happens at the moment. It might help to close the `
|
|||||||
|
|
||||||
#### {% linkable_title Accessories not responding / behaving unusual - Upgrade from `0.65.x` %}
|
#### {% linkable_title Accessories not responding / behaving unusual - Upgrade from `0.65.x` %}
|
||||||
To fix this, you need to unpair the `Home Assistant Bridge`, delete the `.homekit.state` file ([guide](#deleting-the-homekitstate-file)) and pair it again. This should only be an issue if you're upgrading from `0.65.x` or below.
|
To fix this, you need to unpair the `Home Assistant Bridge`, delete the `.homekit.state` file ([guide](#deleting-the-homekitstate-file)) and pair it again. This should only be an issue if you're upgrading from `0.65.x` or below.
|
||||||
|
|
||||||
|
[devices]: https://www.home-assistant.io/docs/configuration/devices/
|
||||||
|
@ -28,9 +28,23 @@ light:
|
|||||||
password: 36478643
|
password: 36478643
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
devices:
|
||||||
|
description: A list of devices with their bluetooth address.
|
||||||
|
required: false
|
||||||
|
type: list
|
||||||
|
keys:
|
||||||
|
name:
|
||||||
|
description: A custom name to use in the frontend.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
password:
|
||||||
|
description: The bulb-specific password.
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
- **devices**: A list of devices with their bluetooth address, a custom name to use in the frontend and the bulb-specific password. The password can be obtained from an Android device using an app like [aLogcat](https://play.google.com/store/apps/details?id=org.jtb.alogcat&hl=en) or the `adb logcat` command for phones in developer mode. Look for a line like:
|
The password can be obtained from an Android device using an app like [aLogcat](https://play.google.com/store/apps/details?id=org.jtb.alogcat&hl=en) or the `adb logcat` command for phones in developer mode. Look for a line like:
|
||||||
|
|
||||||
```
|
```
|
||||||
E LedoBleSDK: login =skName=======[Smart Light]=======skPw==[password]
|
E LedoBleSDK: login =skName=======[Smart Light]=======skPw==[password]
|
||||||
|
@ -93,10 +93,11 @@ This component is tested to work with the following models. If you have a differ
|
|||||||
| `strip1` | YLDD02YL | Lightstrip (Color) |
|
| `strip1` | YLDD02YL | Lightstrip (Color) |
|
||||||
| `bslamp1` | MJCTD01YL | Xiaomi Mijia Bedside Lamp - WIFI Version! |
|
| `bslamp1` | MJCTD01YL | Xiaomi Mijia Bedside Lamp - WIFI Version! |
|
||||||
| `lamp1` | MJTD01YL | Xiaomi Mijia Smart LED Desk Lamp (autodiscovery isn't possible because the device doesn't support mDNS due to the small amount of RAM) |
|
| `lamp1` | MJTD01YL | Xiaomi Mijia Smart LED Desk Lamp (autodiscovery isn't possible because the device doesn't support mDNS due to the small amount of RAM) |
|
||||||
| `ceiling1` | ? | Yeelight Ceiling Light |
|
| `ceiling1` | YLXD01YL | Yeelight Ceiling Light |
|
||||||
| `ceiling2` | YLXD01YL | Yeelight Smart LED Ceiling Light - Youth Version |
|
| `ceiling2` | YLXD03YL | Yeelight Ceiling Light - Youth Version |
|
||||||
| `ceiling3` | ? | Yeelight Ceiling Light |
|
| ?, may be `ceiling3` | YLXD04YL | Yeelight Ceiling Light (Jiaoyue 450) |
|
||||||
| `ceiling4` | YLXD02YL | Yeelight Ceiling Light 4 (Jiaoyue 650) |
|
| `ceiling3` | YLXD05YL | Yeelight Ceiling Light (Jiaoyue 480) |
|
||||||
|
| `ceiling4` | YLXD02YL | Yeelight Ceiling Light (Jiaoyue 650) |
|
||||||
|
|
||||||
## {% linkable_title Platform Services %}
|
## {% linkable_title Platform Services %}
|
||||||
|
|
||||||
|
@ -15,16 +15,32 @@ ha_release: 0.36
|
|||||||
|
|
||||||
The `zengge` platform allows you to integrate your [Zengge Bluetooth bulbs](http://www.zengge.com/) into Home Assistant.
|
The `zengge` platform allows you to integrate your [Zengge Bluetooth bulbs](http://www.zengge.com/) into Home Assistant.
|
||||||
|
|
||||||
|
## {% linkable_title Configuration %}
|
||||||
|
|
||||||
|
To enable the lights, add the following lines to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
light:
|
light:
|
||||||
- platform: zengge
|
- platform: zengge
|
||||||
devices:
|
devices:
|
||||||
C4:BE:84:51:54:8B:
|
"C4:BE:84:51:54:8B":
|
||||||
name: Living Room
|
name: Living Room
|
||||||
```
|
```
|
||||||
Configuration variables:
|
|
||||||
|
|
||||||
- **devices** array (*Required*): List of your devices/bulbs.
|
{% configuration %}
|
||||||
- **MAC address** (*Required*): The MAC address of the bulb.
|
devices:
|
||||||
- **name** (*Optional*): Friendly name for the frontend.
|
description: The list of your devices/bulbs.
|
||||||
|
required: true
|
||||||
|
type: list
|
||||||
|
keys:
|
||||||
|
mac_address:
|
||||||
|
description: The MAC address of the bulb.
|
||||||
|
required: true
|
||||||
|
type: list
|
||||||
|
keys:
|
||||||
|
name:
|
||||||
|
description: The friendly name for the frontend.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
{% endconfiguration %}
|
||||||
|
@ -14,18 +14,29 @@ ha_release: "0.42"
|
|||||||
---
|
---
|
||||||
|
|
||||||
The `lockitron` platform allows you to control your [Lockitron](https://lockitron.com/) lock from within Home Assistant.
|
The `lockitron` platform allows you to control your [Lockitron](https://lockitron.com/) lock from within Home Assistant.
|
||||||
In order to get the correct `access_token` and `id`, log on to their [developer page](https://api.lockitron.com/), create a new app, and get the access_token they give you.
|
|
||||||
Then, call the retrieve all locks function on the page and get the id of your lock (make sure you get your lock's id and not the virtual lock they create for you).
|
## {% linkable_title Setup %}
|
||||||
|
|
||||||
|
In order to get the correct `access_token` and `id`, log on to their [developer page](https://api.lockitron.com/), create a new app, and get the access_token they give you. Then, call the retrieve all locks function on the page and get the id of your lock (make sure you get your lock's id and not the virtual lock they create for you).
|
||||||
|
|
||||||
|
## {% linkable_title Configuration %}
|
||||||
|
|
||||||
|
To enable the lock, add the following lines to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
lock:
|
lock:
|
||||||
- platform: lockitron
|
- platform: lockitron
|
||||||
access_token: asdf
|
access_token: YOUR_ACCESS_TOKEN
|
||||||
id: fdsa
|
id: YOUR_ID
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
access_token:
|
||||||
- **access_token** (*Required*): The usernThe security token provided by Lockitron to lock and unlock your lock.
|
description: The security token provided by Lockitron to lock and unlock your lock.
|
||||||
- **id** (*Required*): The lock id given by Lockitron (should be a GUID).
|
required: true
|
||||||
|
type: string
|
||||||
|
id:
|
||||||
|
description: The lock id given by Lockitron (should be a GUID).
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
{% endconfiguration %}
|
||||||
|
@ -19,30 +19,32 @@ The `spotify` media player platform allows you to control
|
|||||||
|
|
||||||
## {% linkable_title Prerequisites %}
|
## {% linkable_title Prerequisites %}
|
||||||
|
|
||||||
- Spotify account.
|
- Spotify account
|
||||||
- Spotify Application, properly configured
|
- Spotify application, properly configured (see below)
|
||||||
|
|
||||||
<p class='note'>
|
<p class='note'>
|
||||||
Controlling the Spotify component (pause, play, next, etc) requires a Premium account. If you do not have a Premium account, the component in the frontend will not show the controls.
|
Controlling the Spotify component (pause, play, next, etc.) requires a Premium account. If you do not have a Premium account, the component in the frontend will not show the controls.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
To create the required Spotify Application:
|
To create the required Spotify application:
|
||||||
|
|
||||||
- Login to [Spotify Developer](https://developer.spotify.com)
|
- Login to [Spotify Developer](https://developer.spotify.com)
|
||||||
- Visit the [My Applications](https://developer.spotify.com/my-applications/#!/applications) page
|
- Visit the [My Applications](https://developer.spotify.com/my-applications/#!/applications) page
|
||||||
- Select **Create An App**. Enter any name and description. Once your application is created, view it and copy your **Client ID** and **Client Secret**, which are used in the Home Assistant configuration file.
|
- Select **Create An App**. Enter any name and description. Once your application is created, view it and copy your **Client ID** and **Client Secret**, which are used in the Home Assistant configuration file.
|
||||||
- Add a **Redirect URI** in the following forms:
|
- Add a **Redirect URI** in one of the following forms:
|
||||||
|
|
||||||
No SSL:
|
If you are not using SSL:
|
||||||
`http://<your_home_assistant_url_or_local_ip>:<port>/api/spotify`
|
`http://<your_home_assistant_url_or_local_ip>:<port>/api/spotify`
|
||||||
|
|
||||||
If using SSL:
|
If you are using SSL:
|
||||||
`https://<your_home_assistant_url_or_local_ip>:<port>/api/spotify`
|
`https://<your_home_assistant_url_or_local_ip>:<port>/api/spotify`
|
||||||
|
|
||||||
The URL is whatever you use to access Home Assistant from outside your network
|
The URL is whatever you use to access Home Assistant from outside your network
|
||||||
(including port if applicable).
|
(including port if applicable).
|
||||||
|
|
||||||
- Click **Save** after adding the URI. You may also need to set the `base_url` attribute of the [HTTP Component](/components/http/).
|
- Click **Save** after adding the URI.
|
||||||
|
|
||||||
|
You will likely also need to set the `base_url` attribute of the [HTTP Component](/components/http/). This should be set using the same base URL as the redirect URI, e.g., if you used a domain name (not local IP) in the redirect, then use the same domain name in your `base_url`.
|
||||||
|
|
||||||
## {% linkable_title Configuration %}
|
## {% linkable_title Configuration %}
|
||||||
|
|
||||||
@ -62,11 +64,11 @@ media_player:
|
|||||||
|
|
||||||
{% configuration %}
|
{% configuration %}
|
||||||
client_id:
|
client_id:
|
||||||
description: Client ID from your Spotify Application.
|
description: Client ID from your Spotify application.
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
client_secret:
|
client_secret:
|
||||||
description: Client Secret from your Spotify Application.
|
description: Client Secret from your Spotify application.
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
cache_path:
|
cache_path:
|
||||||
@ -84,29 +86,27 @@ aliases:
|
|||||||
After the prerequisites and configuration are complete, restart Home Assistant.
|
After the prerequisites and configuration are complete, restart Home Assistant.
|
||||||
A **Spotify** configurator element will be available. Follow the instructions to
|
A **Spotify** configurator element will be available. Follow the instructions to
|
||||||
authorize Home Assistant to access your Spotify account. A Spotify media player
|
authorize Home Assistant to access your Spotify account. A Spotify media player
|
||||||
will then appear. If Spotify prompts you to download a file after completing
|
will then appear. If you are prompted to download a file after completing
|
||||||
authorization, discard the download. It is not needed.
|
authorization, discard the download. It is not needed.
|
||||||
|
|
||||||
## {% linkable_title Sources %}
|
## {% linkable_title Sources %}
|
||||||
The sources are based on if you have streamed to these devices before in
|
The sources are based on if you have streamed to these devices before in
|
||||||
Spotify. If you don't have any sources, then simply stream from your phone to
|
Spotify. If you don't have any sources, then simply stream from your phone to
|
||||||
another device in your house, Bluetooth, echo, etc. Once you do the sources will
|
another device in your house: Bluetooth, echo, etc. Once you do, the sources will
|
||||||
show up in the developer console as a device to cast/stream to. Also know that
|
show up in the developer console as a device to cast/stream to. The devices won't show up in the dev-console as sources unless they are powered on as well.
|
||||||
the devices won't show up in the dev-console as sources unless they are powered
|
|
||||||
on as well.
|
|
||||||
|
|
||||||
## {% linkable_title URI Links For Playlists/Etc %}
|
## {% linkable_title URI Links For Playlists/Etc. %}
|
||||||
You can send playlists to spotify via the "media_content_type": "playlist" and
|
You can send playlists to spotify via the `"media_content_type": "playlist"` and something like (depending on your content ID)
|
||||||
"media_content_id": "spotify:user:spotify:playlist:37i9dQZF1DWSkkUxEhrBdF"
|
`"media_content_id": "spotify:user:spotify:playlist:37i9dQZF1DWSkkUxEhrBdF"`
|
||||||
which are a part of the
|
which are part of the
|
||||||
[media_player.play_media](/components/media_player/#service-media_playerplay_media)
|
[media_player.play_media](/components/media_player/#service-media_playerplay_media)
|
||||||
service, you can test this from the services
|
service. You can test this from the services
|
||||||
control panel in the Home Assistant frontend.
|
control panel in the Home Assistant frontend.
|
||||||
|
|
||||||
In this example this is a URI link to the Reggae Infusions playlist,
|
The above playlist example is a URI link to the "Reggae Infusions" playlist.
|
||||||
[this support document from Spotify](https://support.spotify.com/us/article/sharing-music/)
|
[This support document from Spotify](https://support.spotify.com/us/article/sharing-music/)
|
||||||
explains how to get this URI value to use for playlists in the Spotify component.
|
explains how to get this URI value to use for playlists in the Spotify component.
|
||||||
|
|
||||||
## {% linkable_title Unsupported devices %}
|
## {% linkable_title Unsupported Devices %}
|
||||||
|
|
||||||
- **Sonos**: Although its a Spotify Connect device, it is not supported by the official Spotify API.
|
- **Sonos**: Although Sonos is a Spotify Connect device, it is not supported by the official Spotify API.
|
||||||
|
@ -13,11 +13,11 @@ featured: true
|
|||||||
ha_iot_class: "Local Push"
|
ha_iot_class: "Local Push"
|
||||||
---
|
---
|
||||||
|
|
||||||
The [MySensors](https://www.mysensors.org) project combines Arduino boards with NRF24L01 radio boards to build sensor networks. The component will automatically add all available devices to Home Assistant, after [presentation](#presentation) is done.
|
The [MySensors](https://www.mysensors.org) project combines devices like Arduino, ESP8266, Raspberry Pi, NRF24L01+ and RFM69 to build affordable sensor networks. This component will automatically add all available devices to Home Assistant, after [presentation](#presentation) is done. That is, you do not need to add anything to your configuration for the devices for them to be added. Go to the **states** section of the developer tools to find the devices that have been identified.
|
||||||
|
|
||||||
### {% linkable_title Configuration %}
|
### {% linkable_title Configuration %}
|
||||||
|
|
||||||
Integrate your Serial, Ethernet or MQTT Client MySensors Gateway by adding the following to your `configuration.yaml` file:
|
Integrate your Serial, Ethernet (LAN) or MQTT MySensors Gateway by adding the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
@ -62,7 +62,7 @@ mysensors:
|
|||||||
type: string
|
type: string
|
||||||
default: ''
|
default: ''
|
||||||
nodes:
|
nodes:
|
||||||
description: A mapping of node ids to node settings, eg custom name.
|
description: A mapping of node ids to node settings, e.g. custom name.
|
||||||
required: false
|
required: false
|
||||||
type: map
|
type: map
|
||||||
keys:
|
keys:
|
||||||
@ -93,7 +93,7 @@ mysensors:
|
|||||||
{% endconfiguration %}
|
{% endconfiguration %}
|
||||||
|
|
||||||
<p class='note'>
|
<p class='note'>
|
||||||
Not all features of MySensors 2.0 are yet supported by Home Assistant. As more features are added, they will be described here in the documentation. Go to the MySensors platform pages under "related components" to see what message types are currently supported.
|
Not all features of MySensors 2.0 are supported by Home Assistant yet. As more features are added, they will be described here in the documentation. Go to the MySensors platform pages under "related components" to see what message types are currently supported.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
If you are using an original Arduino as a serial gateway, the port will be named `ttyACM*`. The exact number can be determined with the command shown below.
|
If you are using an original Arduino as a serial gateway, the port will be named `ttyACM*`. The exact number can be determined with the command shown below.
|
||||||
@ -102,7 +102,7 @@ If you are using an original Arduino as a serial gateway, the port will be named
|
|||||||
$ ls /dev/ttyACM*
|
$ ls /dev/ttyACM*
|
||||||
```
|
```
|
||||||
|
|
||||||
If using the MQTT gateway, you also need to have the [MQTT component](/components/mqtt/) configured in Home Assistant. See below for a minimum MQTT configuration:
|
If you are using the MQTT gateway, you also need to have the [MQTT component](/components/mqtt/) configured in Home Assistant. See below for a minimum MQTT configuration:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
mqtt:
|
mqtt:
|
||||||
@ -152,8 +152,8 @@ Present a MySensors sensor or actuator, by following these steps:
|
|||||||
3. Start Home Assistant.
|
3. Start Home Assistant.
|
||||||
4. Write and upload your MySensors sketch to the sensor. Make sure you:
|
4. Write and upload your MySensors sketch to the sensor. Make sure you:
|
||||||
- Send sketch name.
|
- Send sketch name.
|
||||||
- Present the sensor's S_TYPE.
|
- Present the sensor's `S_TYPE`.
|
||||||
- Send at least one initial value per V_TYPE. In version 2.0 of MySensors, this has to be done in the loop function. See below for an example in 2.0 of how to make sure the initial value has been received by the controller.
|
- Send at least one initial value per `V_TYPE`. In version 2.0 of MySensors, this has to be done in the loop function. See below for an example in 2.0 of how to make sure the initial value has been received by the controller.
|
||||||
5. Start the sensor.
|
5. Start the sensor.
|
||||||
|
|
||||||
```cpp
|
```cpp
|
||||||
@ -254,11 +254,11 @@ logger:
|
|||||||
homeassistant.components.mysensors: debug
|
homeassistant.components.mysensors: debug
|
||||||
mysensors: debug
|
mysensors: debug
|
||||||
```
|
```
|
||||||
The log should inform you of messages that failed validation or if a child value is missing that is required for a certain child type. Note that the log will log all possible combinations of platforms for a child type that failed validation. It is normal to see some platforms fail validation if the child type supports multiple platforms and your sketch doesn't send all corresponding value types. Eg. the S_BARO child type supports both V_PRESSURE and V_FORECAST value types. If you only send a V_PRESSURE value, an S_BARO entity with V_PRESSURE value will be set up for the sensor platform. However, the log will inform of a sensor platform that failed validation due to missing V_FORECAST value type for the S_BARO child. Home Assistant will log failed validations of child values at warning level if one required value type for a platform has been received, but other required value types are missing. Most failed validations are logged at debug level.
|
The log should inform you of messages that failed validation or if a child value is missing that is required for a certain child type. Note that the log will log all possible combinations of platforms for a child type that failed validation. It is normal to see some platforms fail validation if the child type supports multiple platforms and your sketch doesn't send all corresponding value types. Eg. the `S_BARO` child type supports both `V_PRESSURE` and `V_FORECAST` value types. If you only send a `V_PRESSURE` value, an `S_BARO` entity with `V_PRESSURE` value will be set up for the sensor platform. However, the log will inform of a sensor platform that failed validation due to missing `V_FORECAST` value type for the `S_BARO` child. Home Assistant will log failed validations of child values at warning level if one required value type for a platform has been received, but other required value types are missing. Most failed validations are logged at debug level.
|
||||||
|
|
||||||
Message validation was introduced in version 0.52 of Home Assistant.
|
Message validation was introduced in version 0.52 of Home Assistant.
|
||||||
|
|
||||||
|
|
||||||
Visit the [library api][MySensors library api] of MySensors for more information.
|
Visit the [library API][MySensors library api] of MySensors for more information.
|
||||||
|
|
||||||
[MySensors library api]: http://www.mysensors.org/download
|
[MySensors library API]: http://www.mysensors.org/download
|
||||||
|
@ -12,9 +12,9 @@ ha_category: Network
|
|||||||
ha_release: 0.57
|
ha_release: 0.57
|
||||||
---
|
---
|
||||||
|
|
||||||
With the `no_ip` component you can keep your [NO-IP.com](https://www.noip.com) record up to date.
|
With the `no_ip` component you can keep your current IP address in sync with your [NO-IP.com](https://www.noip.com) hostname or domain.
|
||||||
|
|
||||||
|
|
||||||
|
Note that it does not confirm your hostname (as is required periodically for free domain names); you will still need to do that manually.
|
||||||
|
|
||||||
To use the component in your installation, add the following to your `configuration.yaml` file:
|
To use the component in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
@ -28,7 +28,7 @@ no_ip:
|
|||||||
|
|
||||||
{% configuration %}
|
{% configuration %}
|
||||||
domain:
|
domain:
|
||||||
description: Your FQDN.
|
description: Your fully qualified domain name (FQDN).
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
username:
|
username:
|
||||||
|
@ -14,7 +14,8 @@ ha_release: "0.52"
|
|||||||
|
|
||||||
<p class='note'>
|
<p class='note'>
|
||||||
This component will be removed from Home Assistant in the future. Slack has taken over Hipchat and Stride and will therefore stop these platforms. For more information: <a href="https://www.atlassian.com/blog/announcements/new-atlassian-slack-partnership">announcement</a>.
|
This component will be removed from Home Assistant in the future. Slack has taken over Hipchat and Stride and will therefore stop these platforms. For more information: <a href="https://www.atlassian.com/blog/announcements/new-atlassian-slack-partnership">announcement</a>.
|
||||||
|
<br>
|
||||||
|
<br>
|
||||||
Hipchat will be discontinued after February 15th, 2019. This to give customers the opportunity to make a switch.
|
Hipchat will be discontinued after February 15th, 2019. This to give customers the opportunity to make a switch.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@ -58,7 +59,7 @@ notify:
|
|||||||
default: false
|
default: false
|
||||||
type: boolean
|
type: boolean
|
||||||
format:
|
format:
|
||||||
description: Setting format will override the default message format. Default is 'text'. Valid options are 'text' and 'html'.
|
description: Setting format will override the default message format. Valid options are 'text' and 'html'.
|
||||||
required: false
|
required: false
|
||||||
default: text
|
default: text
|
||||||
type: string
|
type: string
|
||||||
|
@ -29,13 +29,24 @@ To add this platform to your installation, add the following to your `configurat
|
|||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
rachio:
|
rachio:
|
||||||
api_key: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
|
api_key: YOUR_API_KEY
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
api_key:
|
||||||
- **api_key** (*Required*): The API key for the Rachio account.
|
description: The API key for the Rachio account.
|
||||||
- **manual_run_mins** (*Optional*): For how long, in minutes, to turn on a station when the switch is enabled. Defaults to 10 minutes.
|
required: true
|
||||||
|
type: string
|
||||||
|
hass_url_override:
|
||||||
|
description: If your instance is unaware of its actual web location (`base_url`).
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
manual_run_mins:
|
||||||
|
description: For how long, in minutes, to turn on a station when the switch is enabled.
|
||||||
|
required: false
|
||||||
|
default: 10
|
||||||
|
type: integer
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
<p class='note'>
|
<p class='note'>
|
||||||
**Water-saving suggestion:**<br>
|
**Water-saving suggestion:**<br>
|
||||||
|
@ -13,13 +13,13 @@ ha_release: pre 0.7
|
|||||||
ha_qa_scale: internal
|
ha_qa_scale: internal
|
||||||
---
|
---
|
||||||
|
|
||||||
The `recorder` component is storing details in a database which then are handled by the [`history` component](/components/history/).
|
The `recorder` component is responsible for storing details in a database, which then are handled by the [`history` component](/components/history/).
|
||||||
|
|
||||||
Home Assistant uses [SQLAlchemy](http://www.sqlalchemy.org/) as Object Relational Mapper (ORM). This means that you can now use **any** SQL backend for the recorder that is supported by SQLAlchemy, like [MySQL](https://www.mysql.com/), [MariaDB](https://mariadb.org/), [PostgreSQL](https://www.postgresql.org/), or [MS SQL Server](https://www.microsoft.com/en-us/sql-server/).
|
Home Assistant uses [SQLAlchemy](http://www.sqlalchemy.org/), which is an Object Relational Mapper (ORM). This means that you can use **any** SQL backend for the recorder that is supported by SQLAlchemy, like [MySQL](https://www.mysql.com/), [MariaDB](https://mariadb.org/), [PostgreSQL](https://www.postgresql.org/), or [MS SQL Server](https://www.microsoft.com/en-us/sql-server/).
|
||||||
|
|
||||||
The default database engine is [SQLite](https://www.sqlite.org/) which doesn't require any configuration. The database is stored in your Home Assistant configuration directory (`.homeassistant`) and called `home-assistant_v2.db`.
|
The default database engine is [SQLite](https://www.sqlite.org/) which doesn't require any configuration. The database is stored in your Home Assistant configuration directory (`.homeassistant`) and called `home-assistant_v2.db`.
|
||||||
|
|
||||||
To change the defaults for `recorder` component in your installation, add the following to your `configuration.yaml` file:
|
To change the defaults for the `recorder` component in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
@ -33,7 +33,7 @@ recorder:
|
|||||||
type: map
|
type: map
|
||||||
keys:
|
keys:
|
||||||
db_url:
|
db_url:
|
||||||
description: The URL which points to your database.
|
description: The URL that points to your database.
|
||||||
required: false
|
required: false
|
||||||
type: URL
|
type: URL
|
||||||
purge_keep_days:
|
purge_keep_days:
|
||||||
@ -47,7 +47,7 @@ recorder:
|
|||||||
default: 1
|
default: 1
|
||||||
type: integer
|
type: integer
|
||||||
exclude:
|
exclude:
|
||||||
description: Configure which components should be excluded
|
description: Configure which components should be excluded from recordings.
|
||||||
required: false
|
required: false
|
||||||
type: map
|
type: map
|
||||||
keys:
|
keys:
|
||||||
@ -74,7 +74,7 @@ recorder:
|
|||||||
type: List
|
type: List
|
||||||
{% endconfiguration %}
|
{% endconfiguration %}
|
||||||
|
|
||||||
Define domains and entities to `exclude` (aka. blacklist). This is convenient when you are basically happy with the information recorded, but just want to remove some entities or domains. Usually, these are entities/domains which do not change (like `weblink`) or rarely change (`updater` or `automation`).
|
Defining domains and entities to `exclude` (aka. blacklist) is convenient when you are basically happy with the information recorded, but just want to remove some entities or domains. Usually, these are entities/domains that do not change (like `weblink`) or rarely change (like `updater` or `automation`).
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry with exclude
|
# Example configuration.yaml entry with exclude
|
||||||
@ -92,7 +92,7 @@ recorder:
|
|||||||
- sensor.date
|
- sensor.date
|
||||||
```
|
```
|
||||||
|
|
||||||
Define domains and entities to record by using the `include` configuration (aka. whitelist). If you have a lot of entities in your system and your `exclude` lists possibly get very large, it might be better just to define the entities or domains to record.
|
define domains and entities to record by using the `include` configuration (aka. whitelist) is convenient if you have a lot of entities in your system and your `exclude` lists possibly get very large, so it might be better just to define the entities or domains to record.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry with include
|
# Example configuration.yaml entry with include
|
||||||
@ -104,7 +104,7 @@ recorder:
|
|||||||
- media_player
|
- media_player
|
||||||
```
|
```
|
||||||
|
|
||||||
Use the `include` list to define the domains/entities to record, and exclude some of them within the `exclude` list. This makes sense if you, for instance, include the `sensor` domain, but want to exclude some specific sensors. Instead of adding every sensor entity to the `include` `entities` list just include the `sensor` domain and exclude the sensor entities you are not interested in.
|
You can also use the `include` list to define the domains/entities to record, and exclude some of those within the `exclude` list. This makes sense if you, for instance, include the `sensor` domain, but want to exclude some specific sensors. Instead of adding every sensor entity to the `include` `entities` list just include the `sensor` domain and exclude the sensor entities you are not interested in.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry with include and exclude
|
# Example configuration.yaml entry with include and exclude
|
||||||
@ -120,7 +120,7 @@ recorder:
|
|||||||
- sensor.date
|
- sensor.date
|
||||||
```
|
```
|
||||||
|
|
||||||
If you only want to hide events from e.g., your history, take a look at the [`history` component](/components/history/). Same goes for the logbook. But if you have privacy concerns about certain events or neither want them in history or logbook, you should use the `exclude`/`include` options of the `recorder` component, that way they aren't even in your database. That way you can save storage and keep the database small by excluding certain often-logged events (like `sensor.last_boot`).
|
If you only want to hide events from your history, take a look at the [`history` component](/components/history/). The same goes for the [logbook](/components/logbook/). But if you have privacy concerns about certain events or want them in neither the history or logbook, you should use the `exclude`/`include` options of the `recorder` component. That way they aren't even in your database, you can reduce storage and keep the database small by excluding certain often-logged events (like `sensor.last_boot`).
|
||||||
|
|
||||||
### {% linkable_title Service `purge` %}
|
### {% linkable_title Service `purge` %}
|
||||||
|
|
||||||
@ -133,7 +133,7 @@ Call the service `recorder.purge` to start a purge task which deletes events and
|
|||||||
|
|
||||||
### {% linkable_title Restore State %}
|
### {% linkable_title Restore State %}
|
||||||
|
|
||||||
If the `recorder` component is activated then some components support `restore_state` which will restore the state of the entity after Home Assistant is started to the state before Home Assistant was stopped. Please make sure that you do not exclude the entities for which you want the state to be restored from your recordings. An incomplete list of components that currently support `restore_state`:
|
If the `recorder` component is activated then some components support `restore_state`, which will restore the state of the entity after Home Assistant is started to the state before Home Assistant was stopped. Please make sure that you do not exclude the entities for which you want the state to be restored from your recordings. An incomplete list of components that currently support `restore_state`:
|
||||||
|
|
||||||
* [`input_boolean`](/components/input_boolean/#restore-state)
|
* [`input_boolean`](/components/input_boolean/#restore-state)
|
||||||
* [`input_number`](/components/input_number/#restore-state)
|
* [`input_number`](/components/input_number/#restore-state)
|
||||||
@ -144,7 +144,7 @@ If the `recorder` component is activated then some components support `restore_s
|
|||||||
|
|
||||||
## {% linkable_title Custom database engines %}
|
## {% linkable_title Custom database engines %}
|
||||||
|
|
||||||
| Database engine | `db_url` |
|
| Database engine | `db_url` |
|
||||||
| :---------------|:---------------------------------------------------------|
|
| :---------------|:---------------------------------------------------------|
|
||||||
| SQLite | `sqlite:////PATH/TO/DB_NAME` |
|
| SQLite | `sqlite:////PATH/TO/DB_NAME` |
|
||||||
| MariaDB | `mysql://SERVER_IP/DB_NAME?charset=utf8` |
|
| MariaDB | `mysql://SERVER_IP/DB_NAME?charset=utf8` |
|
||||||
@ -163,7 +163,7 @@ If you use MariaDB 10 you need to add port 3307 (or another port depending on wh
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p class='note'>
|
<p class='note'>
|
||||||
Unix Socket connections always bring performance advantages over TCP, if the database on the same host as the `recorder` instance (i.e. `localhost`).</p>
|
Unix Socket connections always bring performance advantages over TCP, if the database is on the same host as the `recorder` instance (i.e. `localhost`).</p>
|
||||||
|
|
||||||
<p class='note warning'>
|
<p class='note warning'>
|
||||||
If you want to use Unix Sockets for PostgreSQL you need to modify the `pg_hba.conf`. See [PostgreSQL](#postgresql)</p>
|
If you want to use Unix Sockets for PostgreSQL you need to modify the `pg_hba.conf`. See [PostgreSQL](#postgresql)</p>
|
||||||
@ -196,7 +196,7 @@ $ sudo systemctl daemon-reload
|
|||||||
|
|
||||||
## {% linkable_title Installation notes %}
|
## {% linkable_title Installation notes %}
|
||||||
|
|
||||||
Not all Python bindings for the chosen database engine can be installed directly. This section contains additional details which should help you to get it working.
|
Not all Python bindings for the chosen database engine can be installed directly. This section contains additional details that should help you to get it working.
|
||||||
|
|
||||||
### {% linkable_title MariaDB and MySQL %}
|
### {% linkable_title MariaDB and MySQL %}
|
||||||
|
|
||||||
@ -208,7 +208,7 @@ homeassistant@homeassistant:~$ source /srv/homeassistant/bin/activate
|
|||||||
(homeassistant) homeassistant@homeassistant:~$ pip3 install mysqlclient
|
(homeassistant) homeassistant@homeassistant:~$ pip3 install mysqlclient
|
||||||
```
|
```
|
||||||
|
|
||||||
For MariaDB you may have to install a few dependencies. If you're using MariaDB version 10.2, libmariadbclient-dev was renamed to libmariadb-dev, please install the correct package based on your MariaDB version.
|
For MariaDB you may have to install a few dependencies. If you're using MariaDB version 10.2, `libmariadbclient-dev` was renamed to `libmariadb-dev`; please install the correct package based on your MariaDB version.
|
||||||
|
|
||||||
On the Python side we use the `mysqlclient`:
|
On the Python side we use the `mysqlclient`:
|
||||||
|
|
||||||
@ -224,7 +224,7 @@ $ sudo apt-get install default-libmysqlclient-dev libssl-dev
|
|||||||
$ pip3 install mysqlclient
|
$ pip3 install mysqlclient
|
||||||
```
|
```
|
||||||
|
|
||||||
After installing the dependencies, it is required to create the database manually. During the startup, Home Assistant will look for the database specified in the `db_url`. If the database doesn't exist, it will not automatically create it for you.
|
After installing the dependencies, it is required to create the database manually. During the startup, Home Assistant will look for the database specified in the `db_url`. If the database doesn't exist, it will not automatically create it for you.
|
||||||
|
|
||||||
Once Home Assistant finds the database, with the right level of permissions, all the required tables will then be automatically created and the data will be populated accordingly.
|
Once Home Assistant finds the database, with the right level of permissions, all the required tables will then be automatically created and the data will be populated accordingly.
|
||||||
|
|
||||||
@ -246,7 +246,7 @@ Where `DB_NAME` is the name of your database and `USER_NAME` is the name of the
|
|||||||
Reload the PostgreSQL configuration after that:
|
Reload the PostgreSQL configuration after that:
|
||||||
```bash
|
```bash
|
||||||
$ sudo -i -u postgres psql -c "SELECT pg_reload_conf();"
|
$ sudo -i -u postgres psql -c "SELECT pg_reload_conf();"
|
||||||
pg_reload_conf
|
pg_reload_conf
|
||||||
----------------
|
----------------
|
||||||
t
|
t
|
||||||
(1 row)
|
(1 row)
|
||||||
|
@ -24,7 +24,7 @@ rfxtrx:
|
|||||||
|
|
||||||
{% configuration %}
|
{% configuration %}
|
||||||
device:
|
device:
|
||||||
description: "The path to your device, e.g., `/dev/serial/by-id/usb-RFXCOM_RFXtrx433_A1Y0NJGR-if00-port0`."
|
description: "The path to your device, e.g., `/dev/serial/by-id/usb-RFXCOM_RFXtrx433_A1Y0NJGR-if00-port0` or `/dev/ttyUSB0`."
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
debug:
|
debug:
|
||||||
|
@ -13,10 +13,9 @@ ha_iot_class: "Cloud Polling"
|
|||||||
ha_release: 0.36
|
ha_release: 0.36
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
The `dublin_bus_transport` sensor will give you the time until the next two departures from a Dublin bus stop using the RTPI information.
|
The `dublin_bus_transport` sensor will give you the time until the next two departures from a Dublin bus stop using the RTPI information.
|
||||||
|
|
||||||
The [Dublin Bus](https://www.dublinbus.ie/RTPI/) website can help to determine the id of your bus stop. You can check if this is correct by going to
|
The [Dublin Bus](https://www.dublinbus.ie/RTPI/) website can help to determine the id of your bus stop. You can check if this is correct by going to
|
||||||
|
|
||||||
https://data.dublinked.ie/cgi-bin/rtpi/realtimebusinformation?stopid=[Stop ID]
|
https://data.dublinked.ie/cgi-bin/rtpi/realtimebusinformation?stopid=[Stop ID]
|
||||||
|
|
||||||
@ -29,10 +28,20 @@ sensor:
|
|||||||
stopid: STOP_ID
|
stopid: STOP_ID
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
stopid:
|
||||||
- **stopid** (*Required*): The ID of the bus stop to get the information for.
|
description: The ID of the bus stop to get the information for.
|
||||||
- **route** (*Optional*): Only show a single bus route at the stop. This is the same as the bus number, e.g., `83`.
|
required: true
|
||||||
- **name** (*Optional*): A friendly name for this sensor.
|
type: string
|
||||||
|
route:
|
||||||
|
description: Only show a single bus route at the stop. This is the same as the bus number, e.g., `83`.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
name:
|
||||||
|
description: A friendly name for this sensor.
|
||||||
|
required: false
|
||||||
|
default: Next Bus
|
||||||
|
type: string
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
The public RTPI information is coming from [Dub Linked](https://data.dublinked.ie/).
|
The public RTPI information is coming from [Dub Linked](https://data.dublinked.ie/).
|
||||||
|
@ -13,7 +13,6 @@ ha_release: "0.10"
|
|||||||
ha_iot_class: "Cloud Polling"
|
ha_iot_class: "Cloud Polling"
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
Integrate your [ELIQ Online](http://eliq.io) smart meter information into Home Assistant. To get an [access token](https://my.eliq.io/user/settings/api) and the [Channel ID](https://my.eliq.io/user/settings/locations), log in to your account.
|
Integrate your [ELIQ Online](http://eliq.io) smart meter information into Home Assistant. To get an [access token](https://my.eliq.io/user/settings/api) and the [Channel ID](https://my.eliq.io/user/settings/locations), log in to your account.
|
||||||
|
|
||||||
To enable this sensor in your installation, add the following to your `configuration.yaml` file:
|
To enable this sensor in your installation, add the following to your `configuration.yaml` file:
|
||||||
@ -26,11 +25,20 @@ sensor:
|
|||||||
channel_id: CHANNEL_ID
|
channel_id: CHANNEL_ID
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
access_token:
|
||||||
- **access_token** (*Required*): The Access Token for your account.
|
description: The Access Token for your account.
|
||||||
- **channel_id** (*Required*): Channel ID (as integer) of your device.
|
required: true
|
||||||
- **name** (*Optional*): The name of the sensor, eg. the city.
|
type: string
|
||||||
|
channel_id:
|
||||||
|
description: Channel ID (as integer) of your device.
|
||||||
|
required: true
|
||||||
|
type: integer
|
||||||
|
name:
|
||||||
|
description: The name of the sensor, e.g., the city.
|
||||||
|
required: false
|
||||||
|
default: ELIQ Online
|
||||||
|
type: string
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
For details please check the [API documentation](https://eliq.zendesk.com/hc/en-us/articles/115002708449-API-Eliq-Online).
|
For details please check the [API documentation](https://eliq.zendesk.com/hc/en-us/articles/115002708449-API-Eliq-Online).
|
||||||
|
|
||||||
|
@ -21,17 +21,30 @@ To enable this sensor, add the following lines to your `configuration.yaml` file
|
|||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
sensor:
|
sensor:
|
||||||
- platform: geizhals
|
- platform: geizhals
|
||||||
name: qc35
|
name: PRODUCT_NAME
|
||||||
product_id: 1696985
|
product_id: PRODUCT_ID
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
name:
|
||||||
- **name** (*Required*): The internal name of the product in Home Assistant.
|
description: The internal name of the product in Home Assistant.
|
||||||
- **product_id** (*Required*): ID of the product. Get the ID from the Geizhals website of your chosen product by opening the *Price History* in a new browser tab (right-click on the price history > open in new tab).
|
required: true
|
||||||
The URL of this site reveals the ID, e.g., `https://geizhals.de/?phist=1696985` with a `product_id` of `1696985`.
|
type: string
|
||||||
- **description** (*Optional*): The name of the product in the front end.
|
product_id:
|
||||||
- **locale** (*Optional*): Localisation which should be used for the request. Set this to `AT`, `EU`, `DE`, `UK` or `PL`. Defaults to `DE`.
|
description: "ID of the product. Get the ID from the Geizhals website of your chosen product by opening the *Price History* in a new browser tab (right-click on the price history > open in new tab). The URL of this site reveals the ID, e.g., `https://geizhals.de/?phist=1696985` with a `product_id` of `1696985`."
|
||||||
|
required: true
|
||||||
|
type: integer
|
||||||
|
description:
|
||||||
|
description: The name of the product in the front end.
|
||||||
|
required: false
|
||||||
|
default: price
|
||||||
|
type: string
|
||||||
|
locale:
|
||||||
|
description: Localisation which should be used for the request. Set this to `AT`, `EU`, `DE`, `UK` or `PL`.
|
||||||
|
required: false
|
||||||
|
default: DE
|
||||||
|
type: string
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
#### {% linkable_title Extended example %}
|
#### {% linkable_title Extended example %}
|
||||||
|
|
||||||
|
@ -36,17 +36,64 @@ sensor:
|
|||||||
destination: Paris, France
|
destination: Paris, France
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
api_key:
|
||||||
- **api_key** (*Required*): Your application's API key (get one by following the instructions above). This key identifies your application for purposes of quota management.
|
description: Your application's API key (get one by following the instructions above). This key identifies your application for purposes of quota management.
|
||||||
- **origin** (*Required*): The starting point for calculating travel distance and time. You can supply one or more locations separated by the pipe character, in the form of an address, latitude/longitude coordinates, or a [Google place ID](https://developers.google.com/places/place-id). When specifying the location using a Google place ID, the ID must be prefixed with `place_id:`.
|
required: true
|
||||||
- **destination** (*Required*): One or more locations to use as the finishing point for calculating travel distance and time. The options for the destinations parameter are the same as for the origins parameter, described above.
|
type: string
|
||||||
- **name** (*Optional*): A name to display on the sensor. The default is "Google Travel Time - [Travel Mode]" where [Travel Mode] is the mode set in options for the sensor (see option "mode" below).
|
origin:
|
||||||
- **options** (*Optional*): A dictionary containing parameters to add to all requests to the Distance Matrix API. A full listing of available options can be found [here](https://developers.google.com/maps/documentation/distance-matrix/intro#RequestParameters).
|
description: "The starting point for calculating travel distance and time. You can supply one or more locations separated by the pipe character, in the form of an address, latitude/longitude coordinates, or a [Google place ID](https://developers.google.com/places/place-id). When specifying the location using a Google place ID, the ID must be prefixed with `place_id:`."
|
||||||
- **mode** (*Optional*): The travel mode used to calculate the directions/time. Can be `driving` (*Default*), `bicycling`, `transit` or `walking`.
|
required: true
|
||||||
- **departure_time** (*Optional*): Can be `now`, a Unix timestamp, or a 24 hour time string like `08:00:00`. If you provide a time string, it will be combined with the current date to get travel time for that moment.
|
type: string
|
||||||
- **arrival_time** (*Optional*): See notes above for `departure_time`. `arrival_time` cannot be `now`, only a Unix timestamp or time string. You can not provide both `departure_time` and `arrival_time`. If you do provide both, `arrival_time` will be removed from the request.
|
destination:
|
||||||
- **units** (*Optional*): Set the unit for the sensor in metric or imperial, otherwise the default unit the same as the unit set in `unit_system:`.
|
description: One or more locations to use as the finishing point for calculating travel distance and time. The options for the destinations parameter are the same as for the origins parameter, described above.
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
name:
|
||||||
|
description: A name to display on the sensor. The default is "Google Travel Time - [Travel Mode]" where [Travel Mode] is the mode set in options for the sensor (see option "mode" below).
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
travel_mode:
|
||||||
|
description: "You can choose between: `driving`, `walking`, `bicycling` or `transit`."
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
options:
|
||||||
|
description: "A dictionary containing parameters to add to all requests to the Distance Matrix API. A full listing of available options can be found [here](https://developers.google.com/maps/documentation/distance-matrix/intro#RequestParameters)."
|
||||||
|
required: false
|
||||||
|
type: list
|
||||||
|
keys:
|
||||||
|
mode:
|
||||||
|
description: The travel mode used to calculate the directions/time. Can be `driving`, `bicycling`, `transit` or `walking`.
|
||||||
|
required: false
|
||||||
|
default: driving
|
||||||
|
type: string
|
||||||
|
language:
|
||||||
|
description: "You can choose from a lot of languages: `ar`, `bg`, `bn`, `ca`, `cs`, `da`, `de`, `el`, `en`, `es`, `eu`, `fa`, `fi`, `fr`, `gl`, `gu`, `hi`, `hr`, `hu`, `id`, `it`, `iw`, `ja`, `kn`, `ko`, `lt`, `lv`, `ml`, `mr`, `nl`, `no`, `pl`, `pt`, `pt-BR`, `pt-PT`, `ro`, `ru`, `sk`, `sl`, `sr`, `sv`, `ta`, `te`, `th`, `tl`, `tr`, `uk`, `vi`, `zh-CN` and `zh-TW`."
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
departure_time:
|
||||||
|
description: Can be `now`, a Unix timestamp, or a 24 hour time string like `08:00:00`. If you provide a time string, it will be combined with the current date to get travel time for that moment.
|
||||||
|
required: exclusive
|
||||||
|
type: [time, string]
|
||||||
|
arrival_time:
|
||||||
|
description: See notes above for `departure_time`. `arrival_time` cannot be `now`, only a Unix timestamp or time string. You can not provide both `departure_time` and `arrival_time`. If you do provide both, `arrival_time` will be removed from the request.
|
||||||
|
required: exclusive
|
||||||
|
type: [time, string]
|
||||||
|
avoid:
|
||||||
|
description: "Indicate what google should avoid when calculating the travel time, you can choose from: `tolls`, `highways`, `ferries`, `indoor`."
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
transit_model:
|
||||||
|
description: "If you opted for `transit` at `travel_mode`, you can use this variable to specify which public transport you want to use: `bus`, `subway`, `train`, `tram` or `rail`."
|
||||||
|
transit_routing_preference:
|
||||||
|
description: "for the travel time calculation for public transport you can also specify the preference for: `less_walking` or `fewer_transfers`."
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
units:
|
||||||
|
description: "Set the unit for the sensor in metric or imperial, otherwise the default unit the same as the unit set in `unit_system:`."
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
## {% linkable_title Dynamic Configuration %}
|
## {% linkable_title Dynamic Configuration %}
|
||||||
|
|
||||||
|
@ -13,7 +13,6 @@ ha_release: 0.48
|
|||||||
ha_iot_class: "Local Push"
|
ha_iot_class: "Local Push"
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
The `htu21d` sensor platform allows you to read the temperature and humidity from a [HTU21D sensor](http://www.datasheetspdf.com/PDF/HTU21D/779951/1) connected via [I2c](https://en.wikipedia.org/wiki/I²C) bus (SDA, SCL pins).
|
The `htu21d` sensor platform allows you to read the temperature and humidity from a [HTU21D sensor](http://www.datasheetspdf.com/PDF/HTU21D/779951/1) connected via [I2c](https://en.wikipedia.org/wiki/I²C) bus (SDA, SCL pins).
|
||||||
|
|
||||||
Tested devices:
|
Tested devices:
|
||||||
@ -30,11 +29,18 @@ sensor:
|
|||||||
- platform: htu21d
|
- platform: htu21d
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
name:
|
||||||
- **name** (*Optional*): The name of the sensor
|
description: The name of the sensor.
|
||||||
- **i2c_bus** (*Optional*): I2c bus where the sensor is. Defaults to 1, for Raspberry Pi 2 and 3.
|
required: false
|
||||||
|
default: i2c_bus
|
||||||
|
type: string
|
||||||
|
i2c_bus:
|
||||||
|
description: I2c bus where the sensor is.
|
||||||
|
required: false
|
||||||
|
default: 1 (for Raspberry Pi 2 and 3)
|
||||||
|
type: integer
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
## {% linkable_title Customizing the sensor data %}
|
## {% linkable_title Customizing the sensor data %}
|
||||||
|
|
||||||
|
@ -27,24 +27,77 @@ sensor:
|
|||||||
measurement: '"°C"'
|
measurement: '"°C"'
|
||||||
```
|
```
|
||||||
|
|
||||||
|
{% configuration %}
|
||||||
|
host:
|
||||||
|
description: IP address of your database host, e.g. 192.168.1.10.
|
||||||
|
required: false
|
||||||
|
default: localhost
|
||||||
|
type: string
|
||||||
|
port:
|
||||||
|
description: Port to use.
|
||||||
|
required: false
|
||||||
|
default: 8086
|
||||||
|
type: string
|
||||||
|
username:
|
||||||
|
description: The username of the database user.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
password:
|
||||||
|
description: The password for the database user account.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
ssl:
|
||||||
|
description: Use https instead of http to connect.
|
||||||
|
required: false
|
||||||
|
default: false
|
||||||
|
type: boolean
|
||||||
|
verify_ssl:
|
||||||
|
description: Verify SSL certificate for https request.
|
||||||
|
required: false
|
||||||
|
default: false
|
||||||
|
type: boolean
|
||||||
|
queries:
|
||||||
|
description: List of queries.
|
||||||
|
required: true
|
||||||
|
type: list
|
||||||
|
keys:
|
||||||
|
name:
|
||||||
|
description: The name of the sensor.
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
unit_of_measurement:
|
||||||
|
description: Defines the units of measurement of the sensor, if any.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
measurement:
|
||||||
|
description: Defines the measurement name in InfluxDB (the FROM clause of the query).
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
where:
|
||||||
|
description: Defines the data selection clause (the where clause of the query).
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
value_template:
|
||||||
|
description: Defines a [template](/docs/configuration/templating/#processing incoming data) to extract a value from the payload.
|
||||||
|
required: false
|
||||||
|
type: template
|
||||||
|
database:
|
||||||
|
description: Name of the database to use.
|
||||||
|
required: false
|
||||||
|
default: home_assistant
|
||||||
|
type: string
|
||||||
|
group_function:
|
||||||
|
description: The group function to be used.
|
||||||
|
required: false
|
||||||
|
default: mean
|
||||||
|
type: string
|
||||||
|
field:
|
||||||
|
description: The field name to select.
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
default: value
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
Configuration variables for the server:
|
|
||||||
|
|
||||||
- **host** (*Optional*): IP address of your database host, eg. 192.168.1.10. Defaults to `localhost`.
|
|
||||||
- **port** (*Optional*): Port to use. Defaults to 8086.
|
|
||||||
- **username** (*Optional*): The username of the database user.
|
|
||||||
- **password** (*Optional*): The password for the database user account.
|
|
||||||
- **ssl** (*Optional*): Use `https` instead of `http` to connect. Defaults to `false`.
|
|
||||||
- **verify_ssl** (*Optional*): Verify SSL certificate for `https` request. Defaults to `false`.
|
|
||||||
- **queries** array (*Required*): List of queries
|
|
||||||
- **name** (*Required*): The name of the sensor.
|
|
||||||
- **unit_of_measurement** (*Optional*): Defines the units of measurement of the sensor, if any.
|
|
||||||
- **measurement** (*Required*): Defines the measurement name in InfluxDB (the from clause of the query).
|
|
||||||
- **where** (*Required*): Defines the data selection clause (the where clause of the query).
|
|
||||||
- **value_template** (*Optional*): Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload.
|
|
||||||
- **database** (*Optional*): Name of the database to use. Defaults to `home_assistant`.
|
|
||||||
- **group_function** (*Optional*): The group function to be used. Defaults to `mean`.
|
|
||||||
- **field** (*Optional*): The field name to select. Defaults to value.
|
|
||||||
|
|
||||||
## {% linkable_title Examples %}
|
## {% linkable_title Examples %}
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ sensor:
|
|||||||
{% configuration %}
|
{% configuration %}
|
||||||
language:
|
language:
|
||||||
required: false
|
required: false
|
||||||
default: hebrew
|
default: english
|
||||||
description: Whether to represent the sensors in Hebrew (א' תשרי תשע"ט) or English characters (1 Tishri 5779).
|
description: Whether to represent the sensors in Hebrew (א' תשרי תשע"ט) or English characters (1 Tishri 5779).
|
||||||
type: string
|
type: string
|
||||||
latitude:
|
latitude:
|
||||||
@ -53,7 +53,7 @@ sensors:
|
|||||||
date:
|
date:
|
||||||
description: Show the hebrew date for today.
|
description: Show the hebrew date for today.
|
||||||
weekly_portion:
|
weekly_portion:
|
||||||
description: Show the weekly portion (parshat hashavu'a) - _At the moment only shows up on Saturday's_.
|
description: Show the weekly portion (parshat hashavu'a).
|
||||||
holiday_name:
|
holiday_name:
|
||||||
description: If it is a holiday, show the name of the holiday.
|
description: If it is a holiday, show the name of the holiday.
|
||||||
holyness:
|
holyness:
|
||||||
|
@ -42,20 +42,33 @@ Telnet terminal server with a serial-ethernet converter:
|
|||||||
raw: False
|
raw: False
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
Take a good look at which configuration variables are for `TCP` use or for `serial` use.
|
||||||
|
|
||||||
*Required if used with a serial-ethernet converter*
|
{% configuration %}
|
||||||
|
raw:
|
||||||
- **host**: The IP-address of the serial server
|
description: Should the raw serial output be shown as a sensor.
|
||||||
- **port**: The TCP-port of the serial server
|
required: false
|
||||||
- **type**: tcp
|
default: false
|
||||||
|
type: boolean
|
||||||
*Required if used directly with a serial port*
|
name:
|
||||||
|
description: The name of the device used in the frontend.
|
||||||
- **device**: The serial device of the machine
|
required: false
|
||||||
- **type**: serial
|
default: KWB
|
||||||
|
type: string
|
||||||
*Optional for both cases*
|
device:
|
||||||
|
description: (For serial use) The serial device of the machine.
|
||||||
- **name**: The name of the device used in the frontend
|
required: true
|
||||||
- **raw**: Should the raw serial output be shown as a sensor
|
type: string
|
||||||
|
host:
|
||||||
|
description: (For tcp use) The IP-address of the serial server.
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
port:
|
||||||
|
description: (For tcp use) The TCP-port of the serial server.
|
||||||
|
required: true
|
||||||
|
type: integer
|
||||||
|
type:
|
||||||
|
description: "Type of sensor, you can choose between: `serial` and `tcp`."
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
{% endconfiguration %}
|
||||||
|
@ -52,14 +52,34 @@ sensor:
|
|||||||
gas_secret: 'GAS_SECRET'
|
gas_secret: 'GAS_SECRET'
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
electricity_serial:
|
||||||
- **electricity_serial** (*Required*): Serial number of your electricity sensor
|
description: Serial number of your electricity sensor.
|
||||||
- **electricity_secret** (*Required*): Secret key for your electricity sensor
|
required: true
|
||||||
- **gas_serial** (*Optional*): Serial number for your gas sensor.
|
type: string
|
||||||
- **gas_secret** (*Optional*): Secret key for your gas sensor.
|
electricity_secret:
|
||||||
- **gas_type** (*Optional*): Type of meter `imperial` or `metric`. Defaults to `metric`.
|
description: Secret key for your electricity sensor.
|
||||||
- **gas_calorific** (*Optional*): Calorific value of your gas supply (usually on your gas bill). Defaults to 39.11.
|
required: true
|
||||||
|
type: string
|
||||||
|
gas_serial:
|
||||||
|
description: Serial number for your gas sensor.
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
gas_secret:
|
||||||
|
description: Secret key for your gas sensor.
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
gas_type:
|
||||||
|
description: Type of meter `imperial` or `metric`.
|
||||||
|
required: false
|
||||||
|
default: metric
|
||||||
|
type: string
|
||||||
|
gas_calorific:
|
||||||
|
description: Calorific value of your gas supply (usually on your gas bill).
|
||||||
|
required: false
|
||||||
|
default: 39.11
|
||||||
|
type: float
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
The electricity readings are updated every 10 seconds and the gas readings every 15 minutes.
|
The electricity readings are updated every 10 seconds and the gas readings every 15 minutes.
|
||||||
|
|
||||||
|
@ -13,10 +13,8 @@ ha_iot_class: "Cloud Polling"
|
|||||||
ha_release: 0.41
|
ha_release: 0.41
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
The `lyft` sensor will give you time and price estimates for all available [Lyft](https://lyft.com) products at the given `start_latitude` and `start_longitude`.The `ATTRIBUTES` are used to provide extra information about products, such as vehicle capacity and fare rates. If an `end_latitude` and `end_longitude` are specified, a price estimate will also be provided. One sensor will be created for each product at the given `start` location, for pickup time. A second sensor for each product, for estimated price, will be created if a destination is specified. The sensor is powered by the official Lyft [API](https://developer.lyft.com/reference/).
|
The `lyft` sensor will give you time and price estimates for all available [Lyft](https://lyft.com) products at the given `start_latitude` and `start_longitude`.The `ATTRIBUTES` are used to provide extra information about products, such as vehicle capacity and fare rates. If an `end_latitude` and `end_longitude` are specified, a price estimate will also be provided. One sensor will be created for each product at the given `start` location, for pickup time. A second sensor for each product, for estimated price, will be created if a destination is specified. The sensor is powered by the official Lyft [API](https://developer.lyft.com/reference/).
|
||||||
|
|
||||||
|
|
||||||
You must create an application [here](https://www.lyft.com/developers/manage) to obtain a `client_id` and `client_secret`.
|
You must create an application [here](https://www.lyft.com/developers/manage) to obtain a `client_id` and `client_secret`.
|
||||||
|
|
||||||
To enable this sensor, add the following lines to your `configuration.yaml` file:
|
To enable this sensor, add the following lines to your `configuration.yaml` file:
|
||||||
@ -27,20 +25,41 @@ sensor:
|
|||||||
- platform: lyft
|
- platform: lyft
|
||||||
client_id: CLIENT_ID
|
client_id: CLIENT_ID
|
||||||
client_secret: CLIENT_SECRET
|
client_secret: CLIENT_SECRET
|
||||||
start_latitude: 37.8116380
|
start_latitude: 37.8116380
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
client_id:
|
||||||
|
description: "A client id obtained from [developer.lyft.com](https://developer.lyft.com) after [creating an app](https://www.lyft.com/developers/manage)."
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
client_secret:
|
||||||
|
description: "A client secret obtained from [developer.lyft.com](https://developer.lyft.com) after [creating an app](https://www.lyft.com/developers/manage)."
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
start_latitude:
|
||||||
|
description: The starting latitude for a trip.
|
||||||
|
required: true
|
||||||
|
type: float
|
||||||
|
start_longitude:
|
||||||
|
description: The starting longitude for a trip.
|
||||||
|
required: true
|
||||||
|
type: float
|
||||||
|
end_latitude:
|
||||||
|
description: The ending latitude for a trip. While `end_latitude` is optional, providing an `end_latitude`/`end_longitude` allows price estimates as well as time.
|
||||||
|
required: false
|
||||||
|
type: float
|
||||||
|
end_longitude:
|
||||||
|
description: The ending longitude for a trip. While `end_longitude` is optional, providing an `end_latitude`/`end_longitude` allows price estimates as well as time.
|
||||||
|
required: false
|
||||||
|
type: float
|
||||||
|
product_ids:
|
||||||
|
description: A list of Lyft product IDs.
|
||||||
|
required: false
|
||||||
|
type: [list, string]
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
- **client_id** (*Required*): A client id obtained from [developer.lyft.com](https://developer.lyft.com) after [creating an app](https://www.lyft.com/developers/manage).
|
A full configuration entry could look like the sample below:
|
||||||
- **client_secret** (*Required*) A client secret obtained from [developer.lyft.com](https://developer.lyft.com) after [creating an app](https://www.lyft.com/developers/manage).
|
|
||||||
- **start_latitude** (*Required*): The starting latitude for a trip.
|
|
||||||
- **start_longitude** (*Required*): The starting longitude for a trip.
|
|
||||||
- **end_latitude** (*Optional*): The ending latitude for a trip. While `end_latitude` is optional, providing an `end_latitude`/`end_longitude` allows price estimates as well as time.
|
|
||||||
- **end_longitude** (*Optional*): The ending longitude for a trip. While `end_longitude` is optional, providing an `end_latitude`/`end_longitude` allows price estimates as well as time.
|
|
||||||
- **product_ids** (*Optional*): A list of Lyft product IDs.
|
|
||||||
|
|
||||||
A full configuration entry could look like the sample below:
|
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
@ -48,7 +67,7 @@ sensor:
|
|||||||
- platform: lyft
|
- platform: lyft
|
||||||
client_id: CLIENT_ID
|
client_id: CLIENT_ID
|
||||||
client_secret: CLIENT_SECRET
|
client_secret: CLIENT_SECRET
|
||||||
start_latitude: 37.8116380
|
start_latitude: 37.8116380
|
||||||
start_longitude: -122.2648050
|
start_longitude: -122.2648050
|
||||||
end_latitude: 37.615223
|
end_latitude: 37.615223
|
||||||
end_longitude: -122.389977
|
end_longitude: -122.389977
|
||||||
|
@ -14,7 +14,6 @@ ha_release: "0.31"
|
|||||||
ha_qa_scale: internal
|
ha_qa_scale: internal
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
The `min_max` sensor platform consumes the state from other sensors to determine the minimum, maximum, latest (last) and the mean of the collected states. The sensor will always show you the lowest/highest/latest value which was received from all monitored sensors. If you have spikes in your values, it's recommended to filter/equalize your values with a [statistics sensor](/components/sensor.statistics/) first.
|
The `min_max` sensor platform consumes the state from other sensors to determine the minimum, maximum, latest (last) and the mean of the collected states. The sensor will always show you the lowest/highest/latest value which was received from all monitored sensors. If you have spikes in your values, it's recommended to filter/equalize your values with a [statistics sensor](/components/sensor.statistics/) first.
|
||||||
|
|
||||||
This sensor is an alternative to the [template sensor](/components/sensor.template/)'s `value_template:` to get the average of multiple sensors.
|
This sensor is an alternative to the [template sensor](/components/sensor.template/)'s `value_template:` to get the average of multiple sensors.
|
||||||
@ -44,10 +43,23 @@ sensor:
|
|||||||
- sensor.office_temperature
|
- sensor.office_temperature
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
entity_ids:
|
||||||
- **entity_ids** (*Required*): At least two entities to monitor. The unit of measurement of the first entry will be the one that's used. All entities must use the same unit of measurement.
|
description: At least two entities to monitor. The unit of measurement of the first entry will be the one that's used. All entities must use the same unit of measurement.
|
||||||
- **type** (*Optional*): The type of sensor: `min`, `max`, `last` or `mean`. Defaults to `max`.
|
required: true
|
||||||
- **name** (*Optional*): Name of the sensor to use in the frontend.
|
type: [list, string]
|
||||||
- **round_digits** (*Optional*): Round mean value to specified number of digits. Defaults to 2.
|
type:
|
||||||
|
description: "The type of sensor: `min`, `max`, `last` or `mean`."
|
||||||
|
required: false
|
||||||
|
default: max
|
||||||
|
type: string
|
||||||
|
name:
|
||||||
|
description: Name of the sensor to use in the frontend.
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
round_digits:
|
||||||
|
description: Round mean value to specified number of digits.
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
|
default: 2
|
||||||
|
{% endconfiguration %}
|
||||||
|
@ -15,6 +15,8 @@ ha_release: 0.36
|
|||||||
|
|
||||||
The `sma` sensor will poll a [SMA](http://www.sma-solar.com/) [(US)](http://www.sma-america.com/) solar inverter and present the values as sensors (or attributes of sensors) in Home Assistant.
|
The `sma` sensor will poll a [SMA](http://www.sma-solar.com/) [(US)](http://www.sma-america.com/) solar inverter and present the values as sensors (or attributes of sensors) in Home Assistant.
|
||||||
|
|
||||||
|
This sensor uses the web interface and in order to use it you have to be able to connect to the solar inverter from your favorite web browser.
|
||||||
|
|
||||||
## {% linkable_title Configuration %}
|
## {% linkable_title Configuration %}
|
||||||
|
|
||||||
To enable this sensor, add the following lines to your `configuration.yaml` file:
|
To enable this sensor, add the following lines to your `configuration.yaml` file:
|
||||||
@ -51,22 +53,36 @@ group:
|
|||||||
default: user
|
default: user
|
||||||
type: string
|
type: string
|
||||||
sensors:
|
sensors:
|
||||||
description: A dictionary of sensors that will be added. The value of the dictionary can include sensor names that will be shown as attributes.
|
description: A dictionary of sensors that will be added. The value of the dictionary can include a list of sensor names that will be used as attributes.
|
||||||
required: true
|
required: true
|
||||||
type: list
|
type: map
|
||||||
keys:
|
keys:
|
||||||
current_power:
|
current_power:
|
||||||
description: Current power.
|
description: Current power (W).
|
||||||
current_consumption:
|
current_consumption:
|
||||||
description: Current consumption.
|
description: Power that you are currently drawing, depending on your installation it can be a combination of the inverter and the grid (W).
|
||||||
total_power:
|
total_yield:
|
||||||
description: Total power.
|
description: Total power yield from solar installation (kWh).
|
||||||
total_consumption:
|
total_consumption:
|
||||||
description: Total consumption.
|
description: Total power consumption (kWh).
|
||||||
|
grid_voltage:
|
||||||
|
description: The grid voltage (V)
|
||||||
|
pv_power:
|
||||||
|
description: PV Power (W)
|
||||||
|
daily_yield:
|
||||||
|
description: daily_yield (Wh)
|
||||||
|
power_supplied:
|
||||||
|
description: Power supplied (W)
|
||||||
|
power_absorbed:
|
||||||
|
description: Power absorbed (W)
|
||||||
|
status:
|
||||||
|
description: Status of the solar plant.
|
||||||
|
your-custom-sensor:
|
||||||
|
description: Any sensor name defined in the `custom:` section
|
||||||
custom:
|
custom:
|
||||||
description: A dictionary of custom sensor key values and units.
|
description: A dictionary of custom sensor key values and units.
|
||||||
required: false
|
required: false
|
||||||
type: list
|
type: map
|
||||||
keys:
|
keys:
|
||||||
key:
|
key:
|
||||||
description: The SMA sensor key.
|
description: The SMA sensor key.
|
||||||
@ -102,4 +118,4 @@ Example:
|
|||||||
factor: 1000
|
factor: 1000
|
||||||
```
|
```
|
||||||
|
|
||||||
Over time more sensors will be added as standard sensors to the [pysma library](https://github.com/kellerza/pysma/blob/master/pysma/__init__.py#L18). Feel free to submit additional sensors on that repository.
|
Over time more sensors will be added as standard sensors to the [pysma library](https://github.com/kellerza/pysma/blob/master/pysma/__init__.py#L59). Feel free to submit additional sensors on that repository.
|
||||||
|
@ -16,6 +16,10 @@ ha_qa_scale: internal
|
|||||||
|
|
||||||
The `template` platform supports sensors which break out `state_attributes` from other entities.
|
The `template` platform supports sensors which break out `state_attributes` from other entities.
|
||||||
|
|
||||||
|
<p class='note'>
|
||||||
|
If you do not supply an `entity_id` in the configuration you will need to run the service `homeassistant.update_entity` to update the sensor.
|
||||||
|
</p>
|
||||||
|
|
||||||
## {% linkable_title Configuration %}
|
## {% linkable_title Configuration %}
|
||||||
|
|
||||||
To enable Template Sensors in your installation, add the following to your `configuration.yaml` file:
|
To enable Template Sensors in your installation, add the following to your `configuration.yaml` file:
|
||||||
@ -51,7 +55,7 @@ sensor:
|
|||||||
required: false
|
required: false
|
||||||
type: template
|
type: template
|
||||||
entity_id:
|
entity_id:
|
||||||
description: A list of entity IDs so the sensor only reacts to state changes of these entities. This can be used if the automatic analysis fails to find all relevant entities.
|
description: The template engine will attempt to work out what entities should trigger an update of the sensor. If this fails to get the correct list (for example if your template loops over the contents of a group) then you can provide a list of entity IDs that will cause the sensor to update.
|
||||||
required: false
|
required: false
|
||||||
type: string, list
|
type: string, list
|
||||||
unit_of_measurement:
|
unit_of_measurement:
|
||||||
@ -288,7 +292,7 @@ sensor:
|
|||||||
|
|
||||||
### {% linkable_title Working with dates %}
|
### {% linkable_title Working with dates %}
|
||||||
|
|
||||||
The `template` sensors are not limited to use attributes from other entities but can also work with [Home Assistant's template extensions](/docs/configuration/templating/#home-assistant-template-extensions).
|
The `template` sensors are not limited to use attributes from other entities but can also work with [Home Assistant's template extensions](/docs/configuration/templating/#home-assistant-template-extensions). This template contains no entities that will trigger an update, so either we need to use `homeassistant.update_entity` or add an `entity_id:` line for an entity that will force an update - here we're using `sun.sun`.
|
||||||
|
|
||||||
{% raw %}
|
{% raw %}
|
||||||
```yaml
|
```yaml
|
||||||
@ -297,7 +301,43 @@ sensor:
|
|||||||
sensors:
|
sensors:
|
||||||
nonsmoker:
|
nonsmoker:
|
||||||
value_template: '{{ (( as_timestamp(now()) - as_timestamp(strptime("06.07.2018", "%d.%m.%Y")) ) / 86400 ) | round(2) }}'
|
value_template: '{{ (( as_timestamp(now()) - as_timestamp(strptime("06.07.2018", "%d.%m.%Y")) ) / 86400 ) | round(2) }}'
|
||||||
|
entity_id: sun.sun
|
||||||
friendly_name: 'Not smoking'
|
friendly_name: 'Not smoking'
|
||||||
unit_of_measurement: "Days"
|
unit_of_measurement: "Days"
|
||||||
```
|
```
|
||||||
{% endraw %}
|
{% endraw %}
|
||||||
|
|
||||||
|
### {% linkable_title Template tracking %}
|
||||||
|
|
||||||
|
This example shows how to add `entity_id` to a template to allow tracking of updates. Fixing an error caused in (81.0)
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
|
```yaml
|
||||||
|
sensor:
|
||||||
|
- platform: template
|
||||||
|
sensors:
|
||||||
|
nonsmoker:
|
||||||
|
entity_id: now.strptime
|
||||||
|
value_template: '{{ (( as_timestamp(now()) - as_timestamp(strptime("06.07.2018", "%d.%m.%Y")) ) / 86400 ) | round(2) }}'
|
||||||
|
friendly_name: 'Not smoking'
|
||||||
|
unit_of_measurement: "Days"
|
||||||
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
|
Note: If a template uses more than one sensor they can be listed
|
||||||
|
|
||||||
|
|
||||||
|
The alternative to this is to create an `Automation`using the new (81.0) service `homeassistant.update_entity` and list all entity's requiring updates and setting the interval based on time.
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
|
```yaml
|
||||||
|
automation:
|
||||||
|
- alias: 'nonsmoker_update'
|
||||||
|
trigger:
|
||||||
|
- platform: time
|
||||||
|
minutes: '/1'
|
||||||
|
action:
|
||||||
|
- service: homeassistant.update_entity
|
||||||
|
entity_id: sensor.nonsmoker
|
||||||
|
```
|
||||||
|
{% endraw %}
|
||||||
|
@ -13,10 +13,14 @@ ha_iot_class: "Cloud Polling"
|
|||||||
ha_release: 0.37
|
ha_release: 0.37
|
||||||
---
|
---
|
||||||
|
|
||||||
The `wsdot` sensor will give you travel time information from the [Washington State Department of Transportation (WSDOT)](http://wsdot.com/).
|
The `wsdot` sensor will give you travel time information from the [Washington State Department of Transportation (WSDOT)](http://wsdot.com/).
|
||||||
|
|
||||||
|
## {% linkable_title Setup %}
|
||||||
|
|
||||||
First, you need to get a free Traveler Information `api_key` from the [WSDOT API webpage](http://wsdot.com/traffic/api/). Just enter your email address to instantly get the key.
|
First, you need to get a free Traveler Information `api_key` from the [WSDOT API webpage](http://wsdot.com/traffic/api/). Just enter your email address to instantly get the key.
|
||||||
|
|
||||||
|
## {% linkable_title Configuration %}
|
||||||
|
|
||||||
Once you have the code, create `wsdot` sensors by editing your `configuration.yaml` file as follows:
|
Once you have the code, create `wsdot` sensors by editing your `configuration.yaml` file as follows:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@ -29,13 +33,26 @@ sensor:
|
|||||||
name: I-90 Eastbound HOV
|
name: I-90 Eastbound HOV
|
||||||
```
|
```
|
||||||
|
|
||||||
Configuration variables:
|
{% configuration %}
|
||||||
|
api_key:
|
||||||
- **api_key** (*Required*): Your `api_key` from WSDOT.
|
description: Your API key from WSDOT.
|
||||||
- **scan_interval** (*Optional*): How frequently to query for new data. Default: 3 minutes.
|
required: true
|
||||||
- **travel_time** array (*Required*): List of routes.
|
type: string
|
||||||
- **id** (*Required*): Name of the route.
|
travel_time:
|
||||||
- **name** (*Optional*): Name of the route. Default just uses `id`.
|
description: List of routes.
|
||||||
|
required: true
|
||||||
|
type: list
|
||||||
|
keys:
|
||||||
|
id:
|
||||||
|
description: ID of the route.
|
||||||
|
required: true
|
||||||
|
type: string
|
||||||
|
name:
|
||||||
|
description: Name of the route.
|
||||||
|
required: false
|
||||||
|
default: Just uses `id`
|
||||||
|
type: string
|
||||||
|
{% endconfiguration %}
|
||||||
|
|
||||||
Figuring out which Travel Time ID (`id`) is associated with your routes is a bit of a challenge. If you visit `http://wsdot.com/Traffic/api/TravelTimes/TravelTimesREST.svc/GetTravelTimesAsJson?AccessCode=[your_api_key_here]` substituting your `api_key`, you will get a list of all available routes. Search through it and then find the key `TravelTimeID`. That tells you the number you need.
|
Figuring out which Travel Time ID (`id`) is associated with your routes is a bit of a challenge. If you visit `http://wsdot.com/Traffic/api/TravelTimes/TravelTimesREST.svc/GetTravelTimesAsJson?AccessCode=[your_api_key_here]` substituting your `api_key`, you will get a list of all available routes. Search through it and then find the key `TravelTimeID`. That tells you the number you need.
|
||||||
|
|
||||||
@ -44,7 +61,7 @@ Some common examples include:
|
|||||||
```text
|
```text
|
||||||
73 Issaquah-Seattle (WB PM)
|
73 Issaquah-Seattle (WB PM)
|
||||||
74 Seattle-Issaquah (EB AM)
|
74 Seattle-Issaquah (EB AM)
|
||||||
75 HOV Issaquah-Seattle (WB REV)
|
75 HOV Issaquah-Seattle (WB REV)
|
||||||
76 Issaquah-Seattle (WB REV)
|
76 Issaquah-Seattle (WB REV)
|
||||||
77 HOV Redmond-Seattle (WB PM)
|
77 HOV Redmond-Seattle (WB PM)
|
||||||
78 HOV Seattle-Redmond (EB AM)
|
78 HOV Seattle-Redmond (EB AM)
|
||||||
|
@ -13,6 +13,9 @@ ha_release: 0.24
|
|||||||
ha_iot_class: "Cloud Polling"
|
ha_iot_class: "Cloud Polling"
|
||||||
---
|
---
|
||||||
|
|
||||||
|
<p class='note warning'>
|
||||||
|
The Yahoo Weather API is being [retired](https://developer.yahoo.com/weather/?guccounter=1). A replacement is the [`darksky` sensor](/components/sensor.darksky/).
|
||||||
|
</p>
|
||||||
|
|
||||||
The `yweather` platform uses [Yahoo Weather](https://www.yahoo.com/news/weather/) as a source for current meteorological data. The `forecast` will show you the condition for 5 days, 0 is the current day. You can use only `weather`, `temp_min`, and `temp_max` with forecast. It's important to note that a yweather sensor will only show ONE days forecast at a time so to show multiple days forecasts, you will need to use the 'name:' option and give each sensor a unique name.
|
The `yweather` platform uses [Yahoo Weather](https://www.yahoo.com/news/weather/) as a source for current meteorological data. The `forecast` will show you the condition for 5 days, 0 is the current day. You can use only `weather`, `temp_min`, and `temp_max` with forecast. It's important to note that a yweather sensor will only show ONE days forecast at a time so to show multiple days forecasts, you will need to use the 'name:' option and give each sensor a unique name.
|
||||||
|
|
||||||
|
@ -81,12 +81,12 @@ mode:
|
|||||||
default: xy
|
default: xy
|
||||||
type: string
|
type: string
|
||||||
transition:
|
transition:
|
||||||
description: Transition time for the light changes (high values may not be supported by all light models).
|
description: Transition time in seconds for the light changes (high values may not be supported by all light models).
|
||||||
required: false
|
required: false
|
||||||
default: 30
|
default: 30
|
||||||
type: integer
|
type: integer
|
||||||
interval:
|
interval:
|
||||||
description: Frequency at which the lights should be updated.
|
description: Frequency in seconds at which the lights should be updated.
|
||||||
required: false
|
required: false
|
||||||
default: 30
|
default: 30
|
||||||
type: integer
|
type: integer
|
||||||
|
@ -50,12 +50,12 @@ state_on:
|
|||||||
description: The payload that represents the on state.
|
description: The payload that represents the on state.
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
default: ON
|
default: "ON"
|
||||||
state_off:
|
state_off:
|
||||||
description: The payload that represents the off state.
|
description: The payload that represents the off state.
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
default: OFF
|
default: "OFF"
|
||||||
command_topic:
|
command_topic:
|
||||||
description: The MQTT topic to publish commands to change the switch state.
|
description: The MQTT topic to publish commands to change the switch state.
|
||||||
required: false
|
required: false
|
||||||
@ -68,12 +68,12 @@ payload_on:
|
|||||||
description: The payload that represents enabled state.
|
description: The payload that represents enabled state.
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
default: ON
|
default: "ON"
|
||||||
payload_off:
|
payload_off:
|
||||||
description: The payload that represents disabled state.
|
description: The payload that represents disabled state.
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
default: OFF
|
default: "OFF"
|
||||||
payload_available:
|
payload_available:
|
||||||
description: The payload that represents the available state.
|
description: The payload that represents the available state.
|
||||||
required: false
|
required: false
|
||||||
|
@ -7,7 +7,7 @@ sidebar: true
|
|||||||
comments: false
|
comments: false
|
||||||
sharing: true
|
sharing: true
|
||||||
footer: true
|
footer: true
|
||||||
logo: ubiuiti.png
|
logo: ubiquiti.png
|
||||||
ha_category: Hub
|
ha_category: Hub
|
||||||
ha_release: "0.81"
|
ha_release: "0.81"
|
||||||
ha_iot_class: "Local Polling"
|
ha_iot_class: "Local Polling"
|
||||||
|
@ -12,6 +12,10 @@ ha_category: Weather
|
|||||||
ha_release: 0.47
|
ha_release: 0.47
|
||||||
---
|
---
|
||||||
|
|
||||||
|
<p class='note warning'>
|
||||||
|
The Yahoo Weather API is being [retired](https://developer.yahoo.com/weather/?guccounter=1). A replacement is the [`darksky` weather](/components/weather.darksky/).
|
||||||
|
</p>
|
||||||
|
|
||||||
The `yweather` platform uses [Yahoo Weather](https://www.yahoo.com/news/weather/) as a source for current meteorological data. This component will show you the condition and temperatures for max. 10 days.
|
The `yweather` platform uses [Yahoo Weather](https://www.yahoo.com/news/weather/) as a source for current meteorological data. This component will show you the condition and temperatures for max. 10 days.
|
||||||
|
|
||||||
<p class='note warning'>
|
<p class='note warning'>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
layout: page
|
layout: page
|
||||||
title: "Database"
|
title: "Database"
|
||||||
description: "Details about the database which Home Assistant is using."
|
description: "Details about the database used by Home Assistant."
|
||||||
date: 2016-10-10 10:00
|
date: 2016-10-10 10:00
|
||||||
sidebar: true
|
sidebar: true
|
||||||
comments: false
|
comments: false
|
||||||
@ -10,14 +10,16 @@ footer: true
|
|||||||
redirect_from: /details/database/
|
redirect_from: /details/database/
|
||||||
---
|
---
|
||||||
|
|
||||||
The default database that is used for Home Assistant is [SQLite](https://www.sqlite.org/) and is stored in your [configuration directory](/getting-started/configuration/) (e.g., `<path to config dir>/.homeassistant/home-assistant_v2.db`). You will need an installation of `sqlite3`, the command-line for SQLite database, or [DB Browser for SQLite](http://sqlitebrowser.org/), which provides an editor for executing SQL commands.
|
The default database used by Home Assistant is [SQLite](https://www.sqlite.org/) and is stored in your [configuration directory](/getting-started/configuration/) (e.g., `<path to config dir>/.homeassistant/home-assistant_v2.db`). To change the database, use the [`recorder` component](/components/recorder/).
|
||||||
|
|
||||||
|
To work with the SQLite database manually, you will need an installation of `sqlite3`, the command-line for SQLite database, or [DB Browser for SQLite](http://sqlitebrowser.org/), which provides an editor for executing SQL commands.
|
||||||
First load your database with `sqlite3`:
|
First load your database with `sqlite3`:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
$ sqlite3 home-assistant_v2.db
|
$ sqlite3 home-assistant_v2.db
|
||||||
SQLite version 3.13.0 2016-05-18 10:57:30
|
SQLite version 3.13.0 2016-05-18 10:57:30
|
||||||
Enter ".help" for usage hints.
|
Enter ".help" for usage hints.
|
||||||
sqlite>
|
sqlite>
|
||||||
```
|
```
|
||||||
|
|
||||||
It helps to set some options to make the output more readable:
|
It helps to set some options to make the output more readable:
|
||||||
@ -33,7 +35,7 @@ You could also start `sqlite3` and attach the database later. Not sure what data
|
|||||||
sqlite> .databases
|
sqlite> .databases
|
||||||
seq name file
|
seq name file
|
||||||
--- --------------- ----------------------------------------------------------
|
--- --------------- ----------------------------------------------------------
|
||||||
0 main /home/fab/.homeassistant/home-assistant_v2.db
|
0 main /home/fab/.homeassistant/home-assistant_v2.db
|
||||||
```
|
```
|
||||||
|
|
||||||
### {% linkable_title Schema %}
|
### {% linkable_title Schema %}
|
||||||
@ -45,40 +47,40 @@ sqlite> SELECT sql FROM sqlite_master;
|
|||||||
|
|
||||||
-------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------
|
||||||
CREATE TABLE events (
|
CREATE TABLE events (
|
||||||
event_id INTEGER NOT NULL,
|
event_id INTEGER NOT NULL,
|
||||||
event_type VARCHAR(32),
|
event_type VARCHAR(32),
|
||||||
event_data TEXT,
|
event_data TEXT,
|
||||||
origin VARCHAR(32),
|
origin VARCHAR(32),
|
||||||
time_fired DATETIME,
|
time_fired DATETIME,
|
||||||
created DATETIME,
|
created DATETIME,
|
||||||
PRIMARY KEY (event_id)
|
PRIMARY KEY (event_id)
|
||||||
)
|
)
|
||||||
CREATE INDEX ix_events_event_type ON events (event_type)
|
CREATE INDEX ix_events_event_type ON events (event_type)
|
||||||
CREATE TABLE recorder_runs (
|
CREATE TABLE recorder_runs (
|
||||||
run_id INTEGER NOT NULL,
|
run_id INTEGER NOT NULL,
|
||||||
start DATETIME,
|
start DATETIME,
|
||||||
"end" DATETIME,
|
"end" DATETIME,
|
||||||
closed_incorrect BOOLEAN,
|
closed_incorrect BOOLEAN,
|
||||||
created DATETIME,
|
created DATETIME,
|
||||||
PRIMARY KEY (run_id),
|
PRIMARY KEY (run_id),
|
||||||
CHECK (closed_incorrect IN (0, 1))
|
CHECK (closed_incorrect IN (0, 1))
|
||||||
)
|
)
|
||||||
CREATE TABLE states (
|
CREATE TABLE states (
|
||||||
state_id INTEGER NOT NULL,
|
state_id INTEGER NOT NULL,
|
||||||
domain VARCHAR(64),
|
domain VARCHAR(64),
|
||||||
entity_id VARCHAR(64),
|
entity_id VARCHAR(64),
|
||||||
state VARCHAR(255),
|
state VARCHAR(255),
|
||||||
attributes TEXT,
|
attributes TEXT,
|
||||||
event_id INTEGER,
|
event_id INTEGER,
|
||||||
last_changed DATETIME,
|
last_changed DATETIME,
|
||||||
last_updated DATETIME,
|
last_updated DATETIME,
|
||||||
created DATETIME,
|
created DATETIME,
|
||||||
PRIMARY KEY (state_id),
|
PRIMARY KEY (state_id),
|
||||||
FOREIGN KEY(event_id) REFERENCES events (event_id)
|
FOREIGN KEY(event_id) REFERENCES events (event_id)
|
||||||
)
|
)
|
||||||
CREATE INDEX states__significant_changes ON states (domain, last_updated, entity_id)
|
CREATE INDEX states__significant_changes ON states (domain, last_updated, entity_id)
|
||||||
CREATE INDEX states__state_changes ON states (last_changed, last_updated, entity_id)
|
CREATE INDEX states__state_changes ON states (last_changed, last_updated, entity_id)
|
||||||
CREATE TABLE sqlite_stat1(tbl,idx,stat)
|
CREATE TABLE sqlite_stat1(tbl,idx,stat)
|
||||||
```
|
```
|
||||||
|
|
||||||
To only show the details about the `states` table (since we are using that one in the next examples):
|
To only show the details about the `states` table (since we are using that one in the next examples):
|
||||||
@ -105,7 +107,7 @@ switch.mystrom_switch 14101
|
|||||||
sensor.internet_time 12963
|
sensor.internet_time 12963
|
||||||
sensor.solar_angle1 11397
|
sensor.solar_angle1 11397
|
||||||
sensor.solar_angle 10440
|
sensor.solar_angle 10440
|
||||||
group.all_switches 8018
|
group.all_switches 8018
|
||||||
```
|
```
|
||||||
|
|
||||||
### {% linkable_title Delete %}
|
### {% linkable_title Delete %}
|
||||||
|
@ -139,23 +139,6 @@ condition:
|
|||||||
before: sunrise
|
before: sunrise
|
||||||
```
|
```
|
||||||
|
|
||||||
Here is a truth table to clarify the parameters with and without offset:
|
|
||||||
|
|
||||||
| command | night | at sunrise | daytime | at sunset |
|
|
||||||
| ---------------------------------- | ------------ |:-----------:| ------- |:----------:|
|
|
||||||
| `after: sunset` | True | ⇒ | False | ⇒ |
|
|
||||||
| + `after_offset: "01:00:00"` | True | ⇒ | False | **+1h** |
|
|
||||||
| + `after_offset: "-01:00:00"` | True | ⇒ | False | **-1h** |
|
|
||||||
| `before: sunset` | False | ⇒ | True | ⇒ |
|
|
||||||
| + `before_offset: "01:00:00"` | False | ⇒ | True | **+1h** |
|
|
||||||
| + `before_offset: "-01:00:00"` | False | ⇒ | True | **-1h** |
|
|
||||||
| `after: sunrise` | False | ⇒ | True | ⇒ |
|
|
||||||
| + `after_offset: "01:00:00"` | False | **+1h** | True | ⇒ |
|
|
||||||
| + `after_offset: "-01:00:00"` | False | **-1h** | True | ⇒ |
|
|
||||||
| `before: sunrise` | True | ⇒ | False | ⇒ |
|
|
||||||
| + `before_offset: "01:00:00"` | True | **+1h** | False | ⇒ |
|
|
||||||
| + `before_offset: "-01:00:00"` | True | **-1h** | False | ⇒ |
|
|
||||||
|
|
||||||
### {% linkable_title Template condition %}
|
### {% linkable_title Template condition %}
|
||||||
|
|
||||||
The template condition will test if the [given template][template] renders a value equal to true. This is achieved by having the template result in a true boolean expression or by having the template render 'true'.
|
The template condition will test if the [given template][template] renders a value equal to true. This is achieved by having the template result in a true boolean expression or by having the template render 'true'.
|
||||||
@ -190,6 +173,10 @@ condition:
|
|||||||
Valid values for `weekday` are `mon`, `tue`, `wed`, `thu`, `fri`, `sat`, `sun`.
|
Valid values for `weekday` are `mon`, `tue`, `wed`, `thu`, `fri`, `sat`, `sun`.
|
||||||
Time condition windows can span across the midnight threshold. In the example above, the condition window is from 3pm to 2am.
|
Time condition windows can span across the midnight threshold. In the example above, the condition window is from 3pm to 2am.
|
||||||
|
|
||||||
|
<p class='note tip'>
|
||||||
|
A better weekday condition could be by using the [Workday Binary Sensor](/components/binary_sensor.workday/).
|
||||||
|
</p>
|
||||||
|
|
||||||
### {% linkable_title Zone condition %}
|
### {% linkable_title Zone condition %}
|
||||||
|
|
||||||
Zone conditions test if an entity is in a certain zone. For zone automation to work, you need to have setup a device tracker platform that supports reporting GPS coordinates. Currently this is limited to the [OwnTracks platform](/components/device_tracker.owntracks/) and the [iCloud platform](/components/device_tracker.icloud/).
|
Zone conditions test if an entity is in a certain zone. For zone automation to work, you need to have setup a device tracker platform that supports reporting GPS coordinates. Currently this is limited to the [OwnTracks platform](/components/device_tracker.owntracks/) and the [iCloud platform](/components/device_tracker.icloud/).
|
||||||
|
@ -40,6 +40,10 @@ On Raspberry Pi you will need to enable the serial interface in the `raspi-confi
|
|||||||
|
|
||||||
## {% linkable_title Configuration %}
|
## {% linkable_title Configuration %}
|
||||||
|
|
||||||
|
<P class='note'>
|
||||||
|
You can also use the Z-Wave *Integration* in the *Configuration* menu to set up the Z-Wave component.
|
||||||
|
</p>
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
zwave:
|
zwave:
|
||||||
|
@ -1,100 +0,0 @@
|
|||||||
---
|
|
||||||
layout: page
|
|
||||||
title: "Gauge Card"
|
|
||||||
sidebar_label: Gauge
|
|
||||||
description: "The Gauge card allows you to display sensor information visually"
|
|
||||||
date: 2018-10-11 10:28 +00:00
|
|
||||||
sidebar: true
|
|
||||||
comments: false
|
|
||||||
sharing: true
|
|
||||||
footer: true
|
|
||||||
---
|
|
||||||
|
|
||||||
Gauge card is a basic card that allows visually seeing sensor data.
|
|
||||||
|
|
||||||
<p class='img'>
|
|
||||||
<img src='/images/lovelace/lovelace_gauge_card.gif' alt='Screenshot of the gauge card'>
|
|
||||||
Screenshot of the gauge card.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
- type: gauge
|
|
||||||
entity: sensor.cpu_usuage
|
|
||||||
```
|
|
||||||
|
|
||||||
{% configuration %}
|
|
||||||
type:
|
|
||||||
required: true
|
|
||||||
description: gauge
|
|
||||||
type: string
|
|
||||||
entity:
|
|
||||||
required: true
|
|
||||||
description: "Entity id to show"
|
|
||||||
type: string
|
|
||||||
title:
|
|
||||||
required: false
|
|
||||||
description: Title of Gauge Data
|
|
||||||
type: string
|
|
||||||
unit_of_measurement:
|
|
||||||
required: false
|
|
||||||
description: Unit of Measurement given to data
|
|
||||||
type: string
|
|
||||||
default: "Unit Of Measurement given by entity"
|
|
||||||
min:
|
|
||||||
required: false
|
|
||||||
description: Minimum value for graph
|
|
||||||
type: integer
|
|
||||||
default: 0
|
|
||||||
max:
|
|
||||||
required: false
|
|
||||||
description: Maximum value for graph
|
|
||||||
type: integer
|
|
||||||
default: 100
|
|
||||||
severity:
|
|
||||||
required: false
|
|
||||||
description: Allows setting of colors for different numbers
|
|
||||||
type: map
|
|
||||||
keys:
|
|
||||||
green:
|
|
||||||
required: true
|
|
||||||
description: Value from which to start green color
|
|
||||||
type: integer
|
|
||||||
yellow:
|
|
||||||
required: true
|
|
||||||
description: Value from which to start yellow color
|
|
||||||
type: integer
|
|
||||||
red:
|
|
||||||
required: true
|
|
||||||
description: Value from which to start red color
|
|
||||||
type: integer
|
|
||||||
{% endconfiguration %}
|
|
||||||
|
|
||||||
## {% linkable_title Examples %}
|
|
||||||
|
|
||||||
Title and Unit of Measurement Example:
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
- type: gauge
|
|
||||||
title: CPU Usuage
|
|
||||||
unit_of_measurement: '%'
|
|
||||||
entity: sensor.cpu_usuage
|
|
||||||
```
|
|
||||||
|
|
||||||
<p class='img'>
|
|
||||||
<img src='/images/lovelace/lovelace_gauge_card.gif' alt='Screenshot of the gauge card with custom title and unit of measurement'>
|
|
||||||
Screenshot of the gauge card with custom title and unit of measurement.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
Define the severity map:
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
- type: gauge
|
|
||||||
title: With Severity
|
|
||||||
title: CPU Usuage
|
|
||||||
unit_of_measurement: '%'
|
|
||||||
entity: sensor.cpu_usuage
|
|
||||||
severity:
|
|
||||||
green: 0
|
|
||||||
yellow: 45
|
|
||||||
red: 85
|
|
||||||
```
|
|
@ -31,6 +31,6 @@ entity:
|
|||||||
## {% linkable_title Example %}
|
## {% linkable_title Example %}
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
- type: sensor
|
- type: thermostat
|
||||||
entity: climate.nest
|
entity: climate.nest
|
||||||
```
|
```
|
||||||
|
@ -26,7 +26,7 @@ The glance card, and the button card can also be themed now, and the way the col
|
|||||||
|
|
||||||
Other things to be aware of:
|
Other things to be aware of:
|
||||||
|
|
||||||
- We have a new service `home_assistant.update_entity` to request the update of an entity, rather than waiting for the next scheduled update. This means you can set a really long `scan_interval` in the [platform_options] and then update on demand, ideal for those services where you have low API limit.
|
- We have a new service `homeassistant.update_entity` to request the update of an entity, rather than waiting for the next scheduled update. This means you can set a really long `scan_interval` in the [platform_options] and then update on demand, ideal for those services where you have low API limit.
|
||||||
- Template sensors will no longer auto update if we can't find relevant entities in the template. You'll want to review your template sensors and consider adding relevant `entity_id` entries or use the new `homeassistant.update_entity` service.
|
- Template sensors will no longer auto update if we can't find relevant entities in the template. You'll want to review your template sensors and consider adding relevant `entity_id` entries or use the new `homeassistant.update_entity` service.
|
||||||
- Water heaters get their own platform separate from `climate`, because you're not a fish living inside the hot water tank
|
- Water heaters get their own platform separate from `climate`, because you're not a fish living inside the hot water tank
|
||||||
|
|
||||||
@ -60,6 +60,24 @@ Other things to be aware of:
|
|||||||
- Add LogBook support to HomeKit ([@ehendrix23] - [#17180]) ([homekit docs]) ([logbook docs]) (new-feature)
|
- Add LogBook support to HomeKit ([@ehendrix23] - [#17180]) ([homekit docs]) ([logbook docs]) (new-feature)
|
||||||
- Add water_heater support to HomeKit ([@cdce8p] - [#17614]) ([homekit docs]) (new-feature)
|
- Add water_heater support to HomeKit ([@cdce8p] - [#17614]) ([homekit docs]) (new-feature)
|
||||||
|
|
||||||
|
## {% linkable_title Release 0.81.1 - October 27 %}
|
||||||
|
|
||||||
|
- Switch to using Client from twilio.rest rather than the deleted TwilioRestClient ([@rohankapoorcom] - [#17885]) ([twilio docs])
|
||||||
|
- Fixes an issue with OpenUV config import failing ([@bachya] - [#17831]) ([openuv docs]) (breaking change)
|
||||||
|
- Allow a list ofr update entity ([@balloob] - [#17860])
|
||||||
|
- Move migrate to separate WS command ([@balloob] - [#17890]) ([lovelace docs])
|
||||||
|
|
||||||
|
[#17831]: https://github.com/home-assistant/home-assistant/pull/17831
|
||||||
|
[#17860]: https://github.com/home-assistant/home-assistant/pull/17860
|
||||||
|
[#17885]: https://github.com/home-assistant/home-assistant/pull/17885
|
||||||
|
[#17890]: https://github.com/home-assistant/home-assistant/pull/17890
|
||||||
|
[@bachya]: https://github.com/bachya
|
||||||
|
[@balloob]: https://github.com/balloob
|
||||||
|
[@rohankapoorcom]: https://github.com/rohankapoorcom
|
||||||
|
[lovelace docs]: /components/lovelace/
|
||||||
|
[openuv docs]: /components/openuv/
|
||||||
|
[twilio docs]: /components/twilio/
|
||||||
|
|
||||||
## {% linkable_title If you need help... %}
|
## {% linkable_title 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). The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks.
|
...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). The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks.
|
||||||
|
@ -39,7 +39,7 @@ We will need a few things to get started with installing Home Assistant. For bes
|
|||||||
|
|
||||||
1. Put the SD card in your SD card reader.
|
1. Put the SD card in your SD card reader.
|
||||||
1. Open Etcher, select the Hass.io image and flash it to the SD card.
|
1. Open Etcher, select the Hass.io image and flash it to the SD card.
|
||||||
1. WiFi setup only: Format a USB-Stick with name `CONFIG` and copy one of [the examples] to the file `network/hassos-wifi`.
|
1. WiFi and Static IP setup only: Format a USB-Stick with name `CONFIG`, create the folder `network` and create the file `my-network`. Copy one of [the examples] to the `my-network` file.
|
||||||
1. Unmount the SD card and remove it from your SD card reader.
|
1. Unmount the SD card and remove it from your SD card reader.
|
||||||
1. Insert the SD card into your Raspberry Pi 3. If you are going to use an Ethernet cable, connect that too.
|
1. Insert the SD card into your Raspberry Pi 3. If you are going to use an Ethernet cable, connect that too.
|
||||||
1. Connect your Raspberry Pi to the power supply, so it turns on.
|
1. Connect your Raspberry Pi to the power supply, so it turns on.
|
||||||
|
@ -92,14 +92,14 @@ A detailed guide about running Hass.io as a virtual machine is available in the
|
|||||||
[etcher]: https://etcher.io/
|
[etcher]: https://etcher.io/
|
||||||
[Virtual Appliance]: https://github.com/home-assistant/hassos/blob/dev/Documentation/boards/ova.md
|
[Virtual Appliance]: https://github.com/home-assistant/hassos/blob/dev/Documentation/boards/ova.md
|
||||||
[hassos-network]: https://github.com/home-assistant/hassos/blob/dev/Documentation/network.md
|
[hassos-network]: https://github.com/home-assistant/hassos/blob/dev/Documentation/network.md
|
||||||
[pi0-w]: https://github.com/home-assistant/hassos/releases/download/1.11/hassos_rpi0-w-1.11.img.gz
|
[pi0-w]: https://github.com/home-assistant/hassos/releases/download/1.12/hassos_rpi0-w-1.12.img.gz
|
||||||
[pi1]: https://github.com/home-assistant/hassos/releases/download/1.11/hassos_rpi-1.11.img.gz
|
[pi1]: https://github.com/home-assistant/hassos/releases/download/1.12/hassos_rpi-1.12.img.gz
|
||||||
[pi2]: https://github.com/home-assistant/hassos/releases/download/1.11/hassos_rpi2-1.11.img.gz
|
[pi2]: https://github.com/home-assistant/hassos/releases/download/1.12/hassos_rpi2-1.12.img.gz
|
||||||
[pi3-32]: https://github.com/home-assistant/hassos/releases/download/1.11/hassos_rpi3-1.11.img.gz
|
[pi3-32]: https://github.com/home-assistant/hassos/releases/download/1.12/hassos_rpi3-1.12.img.gz
|
||||||
[pi3-64]: https://github.com/home-assistant/hassos/releases/download/1.11/hassos_rpi3-64-1.11.img.gz
|
[pi3-64]: https://github.com/home-assistant/hassos/releases/download/1.12/hassos_rpi3-64-1.12.img.gz
|
||||||
[tinker]: https://github.com/home-assistant/hassos/releases/download/2.2/hassos_tinker-2.2.img.gz
|
[tinker]: https://github.com/home-assistant/hassos/releases/download/2.2/hassos_tinker-2.2.img.gz
|
||||||
[odroid-c2]: https://github.com/home-assistant/hassos/releases/download/2.2/hassos_odroid-c2-2.2.img.gz
|
[odroid-c2]: https://github.com/home-assistant/hassos/releases/download/2.2/hassos_odroid-c2-2.2.img.gz
|
||||||
[vmdk]: https://github.com/home-assistant/hassos/releases/download/1.11/hassos_ova-1.11.vmdk
|
[vmdk]: https://github.com/home-assistant/hassos/releases/download/1.12/hassos_ova-1.12.vmdk
|
||||||
[linux]: https://github.com/home-assistant/hassio-build/tree/master/install#install-hassio
|
[linux]: https://github.com/home-assistant/hassio-build/tree/master/install#install-hassio
|
||||||
[local]: http://hassio.local:8123
|
[local]: http://hassio.local:8123
|
||||||
[samba]: /addons/samba/
|
[samba]: /addons/samba/
|
||||||
|
@ -8,6 +8,16 @@ comments: false
|
|||||||
sharing: true
|
sharing: true
|
||||||
footer: true
|
footer: true
|
||||||
---
|
---
|
||||||
|
## {% linkable_title Changes in 0.81.0 %}
|
||||||
|
- 📣 New card type: `alarm-panel` ❤️
|
||||||
|
- 📣 New card type: `thermostat` ❤️
|
||||||
|
- 📣 New card type: `entity-button` ❤️
|
||||||
|
- 📣 [glance card]: can be themed
|
||||||
|
- 📣 [glance card]: define columns within
|
||||||
|
- 📣 [entity button]: can be themed
|
||||||
|
- Long press is now supported
|
||||||
|
- Update to allow the use of Custom UI. If you run into issues please disable Custom UI and test before reporting them. If the issue goes away without Custom UI please report this to the Custom UI developer as this is not officially supported.
|
||||||
|
|
||||||
## {% linkable_title Changes in 0.80.0 %}
|
## {% linkable_title Changes in 0.80.0 %}
|
||||||
- 📣 New card type: `sensor` ❤️
|
- 📣 New card type: `sensor` ❤️
|
||||||
- 📣 New card type: `gauge` ❤️
|
- 📣 New card type: `gauge` ❤️
|
||||||
|
@ -28,7 +28,7 @@ The Lovelace UI is:
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p class='note warning'>
|
<p class='note warning'>
|
||||||
If you're not using Chrome, please be sure to [read the FAQ](/lovelace/#faq) below.
|
If you're not using Firefox 63+ or Chrome, please be sure to [read the FAQ](/lovelace/#faq) below.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
## {% linkable_title How it works %}
|
## {% linkable_title How it works %}
|
||||||
@ -133,7 +133,7 @@ This is the very very early version aimed at gathering feedback. Discussion and
|
|||||||
|
|
||||||
### {% linkable_title I am running Firefox but, custom cards like gauge-card look bad or don't load at all. How do I fix this? %}
|
### {% linkable_title I am running Firefox but, custom cards like gauge-card look bad or don't load at all. How do I fix this? %}
|
||||||
|
|
||||||
This is probably because your version of Firefox doesn't have custom components supported or enabled. Please set to `true` in your `about:config` the following settings: `dom.webcomponents.customelements.enabled` and `dom.webcomponents.shadowdom.enabled`
|
This is probably because your version of Firefox doesn't have custom components supported or enabled. Please upgrade to version 63 or higher, otherwise set `dom.webcomponents.customelements.enabled` and `dom.webcomponents.shadowdom.enabled` to `true` in `about:config`.
|
||||||
|
|
||||||
### {% linkable_title Custom cards don't load on my iOS device? %}
|
### {% linkable_title Custom cards don't load on my iOS device? %}
|
||||||
|
|
||||||
|
@ -36,9 +36,9 @@ you with the ability to split your Lovelace configuration into multiple files.
|
|||||||
The [Lovelace Jinja2 Script][lovelace-jinja] by [@skalavala] is a simple Jinja2 script that you run in the template editor to generate lovelace configuration based on the entities that are already setup.
|
The [Lovelace Jinja2 Script][lovelace-jinja] by [@skalavala] is a simple Jinja2 script that you run in the template editor to generate lovelace configuration based on the entities that are already setup.
|
||||||
|
|
||||||
<p class='note'>
|
<p class='note'>
|
||||||
Split configuration is currently possible directly in Lovelace, but it
|
Split configuration is no longer possible directly in Lovelace,
|
||||||
is expected to be removed in the near future due to fact that Home Assistant
|
due to fact that Home Assistant writes directly to the `ui-lovelace.yaml` file.
|
||||||
will be writing directly to the `ui-lovelace.yaml` file.
|
Use one of the above generators if you would like to contintue to have such functionality.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
## {% linkable_title Tips and Tricks %}
|
## {% linkable_title Tips and Tricks %}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user