Merge branch 'current' into next

This commit is contained in:
Franck Nijhof 2020-01-29 13:31:52 +01:00
commit a9b5b34f78
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
68 changed files with 1271 additions and 569 deletions

View File

@ -6,7 +6,7 @@ redirect_from: /topics/splitting_configuration/
So you've been using Home Assistant for a while now and your configuration.yaml file brings people to tears or you simply want to start off with the distributed approach, here's how to "split the configuration.yaml" into more manageable (read: humanly readable) pieces. So you've been using Home Assistant for a while now and your configuration.yaml file brings people to tears or you simply want to start off with the distributed approach, here's how to "split the configuration.yaml" into more manageable (read: humanly readable) pieces.
First off, several community members have sanitized (read: without api keys/passwords etc) versions of their configurations available for viewing, you can see a list of them [here](/cookbook/#example-configurationyaml). First off, several community members have sanitized (read: without API keys/passwords etc) versions of their configurations available for viewing, you can see a list of them [here](/cookbook/#example-configurationyaml).
As commenting code doesn't always happen, please read on for the details. As commenting code doesn't always happen, please read on for the details.
@ -56,6 +56,7 @@ zwave:
mqtt: mqtt:
broker: 127.0.0.1 broker: 127.0.0.1
``` ```
As with the core snippet, indentation makes a difference. The integration headers (`mqtt:`) should be fully left aligned (aka no indent), and the parameters (`broker:`) should be indented two (2) spaces. As with the core snippet, indentation makes a difference. The integration headers (`mqtt:`) should be fully left aligned (aka no indent), and the parameters (`broker:`) should be indented two (2) spaces.
While some of these integrations can technically be moved to a separate file they are so small or "one off's" where splitting them off is superfluous. Also, you'll notice the # symbol (hash/pound). This represents a "comment" as far as the commands are interpreted. Put another way, any line prefixed with a `#` will be ignored. This makes breaking up files for human readability really convenient, not to mention turning off features while leaving the entry intact. While some of these integrations can technically be moved to a separate file they are so small or "one off's" where splitting them off is superfluous. Also, you'll notice the # symbol (hash/pound). This represents a "comment" as far as the commands are interpreted. Put another way, any line prefixed with a `#` will be ignored. This makes breaking up files for human readability really convenient, not to mention turning off features while leaving the entry intact.
@ -148,18 +149,20 @@ That about wraps it up.
If you have issues checkout `home-assistant.log` in the configuration directory as well as your indentations. If all else fails, head over to our [Discord chat server][discord] and ask away. If you have issues checkout `home-assistant.log` in the configuration directory as well as your indentations. If all else fails, head over to our [Discord chat server][discord] and ask away.
### Debugging multiple configuration files ## Debugging multiple configuration files
If you have many configuration files, the `check_config` script allows you to see how Home Assistant interprets them: If you have many configuration files, the `check_config` script allows you to see how Home Assistant interprets them:
- Listing all loaded files: `hass --script check_config --files` - Listing all loaded files: `hass --script check_config --files`
- Viewing a component's config: `hass --script check_config --info light` - Viewing a component's config: `hass --script check_config --info light`
- Or all components' config: `hass --script check_config --info all` - Or all components' config: `hass --script check_config --info all`
You can get help from the command line using: `hass --script check_config --help` You can get help from the command line using: `hass --script check_config --help`
### Advanced Usage ## Advanced Usage
We offer four advanced options to include whole directories at once. Please note that your files must have the `.yaml` file extension; `.yml` is not supported. We offer four advanced options to include whole directories at once. Please note that your files must have the `.yaml` file extension; `.yml` is not supported.
- `!include_dir_list` will return the content of a directory as a list with each file content being an entry in the list. The list entries are ordered based on the alphanumeric ordering of the names of the files. - `!include_dir_list` will return the content of a directory as a list with each file content being an entry in the list. The list entries are ordered based on the alphanumeric ordering of the names of the files.
- `!include_dir_named` will return the content of a directory as a dictionary which maps filename => content of file. - `!include_dir_named` will return the content of a directory as a dictionary which maps filename => content of file.
- `!include_dir_merge_list` will return the content of a directory as a list by merging all files (which should contain a list) into 1 big list. - `!include_dir_merge_list` will return the content of a directory as a list by merging all files (which should contain a list) into 1 big list.
@ -182,7 +185,7 @@ These work recursively. As an example using `!include_dir_* automation`, will in
└── configuration.yaml (not included) └── configuration.yaml (not included)
``` ```
#### Example: `!include_dir_list` ### Example: `!include_dir_list`
`configuration.yaml` `configuration.yaml`
@ -244,7 +247,7 @@ It is important to note that each file must contain only **one** entry when usin
It is also important to note that if you are splitting a file after adding -id: to support the automation UI, It is also important to note that if you are splitting a file after adding -id: to support the automation UI,
the -id: line must be removed from each of the split files. the -id: line must be removed from each of the split files.
#### Example: `!include_dir_named` ### Example: `!include_dir_named`
`configuration.yaml` `configuration.yaml`
@ -321,7 +324,7 @@ speech:
{% endif %}{% endraw %} {% endif %}{% endraw %}
``` ```
#### Example: `!include_dir_merge_list` ### Example: `!include_dir_merge_list`
`configuration.yaml` `configuration.yaml`
@ -376,7 +379,7 @@ automation: !include_dir_merge_list automation/
It is important to note that when using `!include_dir_merge_list`, you must include a list in each file (each list item is denoted with a hyphen [-]). Each file may contain one or more entries. It is important to note that when using `!include_dir_merge_list`, you must include a list in each file (each list item is denoted with a hyphen [-]). Each file may contain one or more entries.
#### Example: `!include_dir_merge_named` ### Example: `!include_dir_merge_named`
`configuration.yaml` `configuration.yaml`

View File

@ -10,18 +10,18 @@ Before we dive into common issues, make sure you know where your configuration d
Whenever an integration or configuration option results in a warning, it will be stored in `home-assistant.log` in the configuration directory. This file is reset on start of Home Assistant. Whenever an integration or configuration option results in a warning, it will be stored in `home-assistant.log` in the configuration directory. This file is reset on start of Home Assistant.
### My integration does not show up ## My integration does not show up
When an integration does not show up, many different things can be the case. Before you try any of these steps, make sure to look at the `home-assistant.log` file and see if there are any errors related to your integration you are trying to set up. When an integration does not show up, many different things can be the case. Before you try any of these steps, make sure to look at the `home-assistant.log` file and see if there are any errors related to your integration you are trying to set up.
If you have incorrect entries in your configuration files you can use the [`check_config`](/docs/tools/check_config/) script to assist in identifying them: `hass --script check_config`. If you need to provide the path for your configuration you can do this using the `-c` argument like this: `hass --script check_config -c /path/to/your/config/dir`. If you have incorrect entries in your configuration files you can use the [`check_config`](/docs/tools/check_config/) script to assist in identifying them: `hass --script check_config`. If you need to provide the path for your configuration you can do this using the `-c` argument like this: `hass --script check_config -c /path/to/your/config/dir`.
#### Problems with the configuration ### Problems with the configuration
One of the most common problems with Home Assistant is an invalid `configuration.yaml` or other configuration file. One of the most common problems with Home Assistant is an invalid `configuration.yaml` or other configuration file.
- You can test your configuration using the command line with: `hass --script check_config`. - You can test your configuration using the command line with: `hass --script check_config`.
- On Hass.io you can use the [hassio command](/hassio/commandline/#home-assistant): `hassio homeassistant check`. - On Hass.io you can use the [`hassio` command](/hassio/commandline/#home-assistant): `hassio homeassistant check`.
- On Docker you can use `docker exec home-assistant python -m homeassistant --script check_config --config /config` - where `home-assistant` is the name of the container. - On Docker you can use `docker exec home-assistant python -m homeassistant --script check_config --config /config` - where `home-assistant` is the name of the container.
- The configuration files, including `configuration.yaml` must be UTF-8 encoded. If you see error like `'utf-8' codec can't decode byte`, edit the offending configuration and re-save it as UTF-8. - The configuration files, including `configuration.yaml` must be UTF-8 encoded. If you see error like `'utf-8' codec can't decode byte`, edit the offending configuration and re-save it as UTF-8.
- You can verify your configuration's yaml structure using [this online YAML parser](http://yaml-online-parser.appspot.com/) or [YAML Lint](http://www.yamllint.com/). - You can verify your configuration's yaml structure using [this online YAML parser](http://yaml-online-parser.appspot.com/) or [YAML Lint](http://www.yamllint.com/).
@ -61,6 +61,7 @@ If you are using multiple files for your setup, make sure that the pointers are
light: !include devices/lights.yaml light: !include devices/lights.yaml
sensor: !include devices/sensors.yaml sensor: !include devices/sensors.yaml
``` ```
Contents of `lights.yaml` (notice it does not contain `light:`): Contents of `lights.yaml` (notice it does not contain `light:`):
```yaml ```yaml
@ -89,8 +90,8 @@ Whenever you report an issue, be aware that we are volunteers who do not have ac
The only characters valid in entity names are: The only characters valid in entity names are:
* Lowercase letters - Lowercase letters
* Numbers - Numbers
* Underscores - Underscores
If you create an entity with other characters then Home Assistant may not generate an error for that entity. However you will find that attempts to use that entity will generate errors (or possibly fail silently). If you create an entity with other characters then Home Assistant may not generate an error for that entity. However you will find that attempts to use that entity will generate errors (or possibly fail silently).

View File

@ -4,9 +4,9 @@ description: "Instructions on how backup your Home Assistant configuration to Dr
redirect_from: /cookbook/dropboxbackup/ redirect_from: /cookbook/dropboxbackup/
--- ---
Backing up and regularly syncing your Home Assistant configuration to [Dropbox](http://dropbox.com) is similar to [Github Backup](/docs/ecosystem/backup/backup_github/) Backing up and regularly syncing your Home Assistant configuration to [Dropbox](http://dropbox.com) is similar to [GitHub Backup](/docs/ecosystem/backup/backup_github/)
### Requirements ## Requirements
You need two parts in order to get it working correctly. You need two parts in order to get it working correctly.
@ -25,6 +25,7 @@ In the Python script you can specify which files and directories should be exclu
chmod +x dropbox_uploader.sh chmod +x dropbox_uploader.sh
./dropbox_uploader.sh ./dropbox_uploader.sh
``` ```
Follow the instructions you see on your screen. Follow the instructions you see on your screen.
### Step 2: Running the Dropbox uploader ### Step 2: Running the Dropbox uploader
@ -36,17 +37,19 @@ Go to the folder you have placed `dropbox.py`.
- **Option B:** - **Option B:**
Edit `dropbox.py`: Edit `dropbox.py`:
Change the following line: Change the following line:
```txt ```txt
uploader = "/home/homeassistant/.homeassistant/extraconfig/shell_code/dropbox_uploader.sh" uploader = "/home/homeassistant/.homeassistant/extraconfig/shell_code/dropbox_uploader.sh"
``` ```
to where you placed your file: (for example): to where you placed your file: (for example):
```txt ```txt
uploader = "/home/homeassistant/MyFolder/dropbox_uploader.sh" uploader = "/home/homeassistant/MyFolder/dropbox_uploader.sh"
``` ```
```bash ```bash
$ python dropbox.py python dropbox.py
``` ```
The first time can take a lot of time since it will upload all your files! The first time can take a lot of time since it will upload all your files!
@ -58,5 +61,5 @@ So you just made a full backup, next time you want it to be done automatically.
Add it to your crontab, edit the **path/to** part. Add it to your crontab, edit the **path/to** part.
```bash ```bash
$ (crontab -l 2>/dev/null; echo "0 3 * * * python /path/to/dropbox.py") | crontab - (crontab -l 2>/dev/null; echo "0 3 * * * python /path/to/dropbox.py") | crontab -
``` ```

View File

@ -4,7 +4,7 @@ description: "What you need to know about Z-Wave devices."
redirect_from: /getting-started/z-wave-devices/ redirect_from: /getting-started/z-wave-devices/
--- ---
## Devices, Nodes, Entities, what? ## Devices, Nodes, Entities
The *device* is the hardware, and also used when referring to the node and all its entities. There are 3 main types of devices: The *device* is the hardware, and also used when referring to the node and all its entities. There are 3 main types of devices:
@ -65,8 +65,8 @@ Polling needs to be enabled per device, you can control this through the *pollin
The Central Scene command class isn't yet supported in OpenZWave (there is [work in progress](https://github.com/OpenZWave/open-zwave/pull/1125) to provide it it), though Home Assistant has introduced some support with [change 9178](https://github.com/home-assistant/home-assistant/pull/9178) which was part of 0.53 and [documented here](/docs/z-wave/device-specific/#homeseer-switches). The Central Scene command class isn't yet supported in OpenZWave (there is [work in progress](https://github.com/OpenZWave/open-zwave/pull/1125) to provide it it), though Home Assistant has introduced some support with [change 9178](https://github.com/home-assistant/home-assistant/pull/9178) which was part of 0.53 and [documented here](/docs/z-wave/device-specific/#homeseer-switches).
## Is my device supported? ## Supported Devices
You can check to see if OpenZWave supports your particular device by looking at the [OpenZWave 1.4 github](https://github.com/OpenZWave/open-zwave/tree/1.4/config). Be aware that being listed here doesn't mean that it will be supported in Home Assistant, since the version of OpenZWave used by Home Assistant will often lag the github by a few months. You can check to see if OpenZWave supports your particular device by looking at the [OpenZWave 1.4 GitHub](https://github.com/OpenZWave/open-zwave/tree/1.4/config). Be aware that being listed here doesn't mean that it will be supported in Home Assistant, since the version of OpenZWave used by Home Assistant will often lag the GitHub by a few months.
Even if your device isn't listed there, it's likely that it will still work as expected as long as the device complies with the Z-Wave standards. The OpenZWave wiki describes how [you can add support](https://github.com/OpenZWave/open-zwave/wiki/Adding-Devices) for your device if it isn't listed. Even if your device isn't listed there, it's likely that it will still work as expected as long as the device complies with the Z-Wave standards. The OpenZWave wiki describes how [you can add support](https://github.com/OpenZWave/open-zwave/wiki/Adding-Devices) for your device if it isn't listed.

View File

@ -88,8 +88,9 @@ device_config / device_config_domain / device_config_glob:
Security Z-Wave devices require a network key before being added to the network using the Add Secure Node button in the Z-Wave Network Management card. You must set the *network_key* configuration variable to use a network key before adding these devices. Security Z-Wave devices require a network key before being added to the network using the Add Secure Node button in the Z-Wave Network Management card. You must set the *network_key* configuration variable to use a network key before adding these devices.
An easy script to generate a random key: An easy script to generate a random key:
```bash ```bash
$ cat /dev/urandom | tr -dc '0-9A-F' | fold -w 32 | head -n 1 | sed -e 's/\(..\)/0x\1, /g' -e 's/, $//' cat /dev/urandom | tr -dc '0-9A-F' | fold -w 32 | head -n 1 | sed -e 's/\(..\)/0x\1, /g' -e 's/, $//'
``` ```
You can also use sites like [this one](https://www.random.org/cgi-bin/randbyte?nbytes=16&format=h) to generate the required data, just remember to put `0x` before each pair of characters: You can also use sites like [this one](https://www.random.org/cgi-bin/randbyte?nbytes=16&format=h) to generate the required data, just remember to put `0x` before each pair of characters:
@ -116,10 +117,10 @@ You do not need to install any software to use Z-Wave.
If the path of `/dev/ttyACM0` doesn't work, look in the *System* section of the *Hass.io* menu. There you'll find a *Hardware* button which will list all the hardware found. If the path of `/dev/ttyACM0` doesn't work, look in the *System* section of the *Hass.io* menu. There you'll find a *Hardware* button which will list all the hardware found.
You can also check what hardware has been found using the [hassio command](/hassio/commandline/#hardware): You can also check what hardware has been found using the [`hassio` command](/hassio/commandline/#hardware):
```bash ```bash
$ hassio hardware info hassio hardware info
``` ```
If you did an alternative install of Hass.io on Linux (e.g. installing Ubuntu, then Docker, then Hass.io) then the `modemmanager` package will interfere with any Z-Wave (or Zigbee) stick and should be removed or disabled in the host OS. Failure to do so will result in random failures of those components, e.g. dead or unreachable Z-Wave nodes, most notably right after Home Assistant restarts. Connect to your host OS via SSH, then you can disable with `sudo systemctl disable ModemManager` and remove with `sudo apt-get purge modemmanager` (commands are for Debian/Ubuntu). If you did an alternative install of Hass.io on Linux (e.g. installing Ubuntu, then Docker, then Hass.io) then the `modemmanager` package will interfere with any Z-Wave (or Zigbee) stick and should be removed or disabled in the host OS. Failure to do so will result in random failures of those components, e.g. dead or unreachable Z-Wave nodes, most notably right after Home Assistant restarts. Connect to your host OS via SSH, then you can disable with `sudo systemctl disable ModemManager` and remove with `sudo apt-get purge modemmanager` (commands are for Debian/Ubuntu).
@ -131,7 +132,7 @@ You do not need to install any software to use Z-Wave.
To enable access to the Z-Wave stick, add `--device=/dev/ttyACM0` to the `docker` command that starts your container, for example: To enable access to the Z-Wave stick, add `--device=/dev/ttyACM0` to the `docker` command that starts your container, for example:
```bash ```bash
$ docker run -d --name="home-assistant" -v /home/pi/homeassistant:/config -v /etc/localtime:/etc/localtime:ro --net=host --device=/dev/ttyACM0 homeassistant/raspberrypi3-homeassistant docker run -d --name="home-assistant" -v /home/pi/homeassistant:/config -v /etc/localtime:/etc/localtime:ro --net=host --device=/dev/ttyACM0 homeassistant/raspberrypi3-homeassistant
``` ```
If the path of `/dev/ttyACM0` doesn't work then you can find the path of the stick by disconnecting and then reconnecting it, and running the following in the Docker host: If the path of `/dev/ttyACM0` doesn't work then you can find the path of the stick by disconnecting and then reconnecting it, and running the following in the Docker host:
@ -153,7 +154,7 @@ On the Raspberry Pi you will need to enable the serial interface in the `raspi-c
On Debian Linux platforms there are dependencies you will need to have installed ahead of time (included in `systemd-devel` on Fedora/RHEL systems): On Debian Linux platforms there are dependencies you will need to have installed ahead of time (included in `systemd-devel` on Fedora/RHEL systems):
```bash ```bash
$ sudo apt-get install libudev-dev build-essential sudo apt-get install libudev-dev build-essential
``` ```
You may also have to install the Python development libraries for your version of Python. For example `libpython3.6-dev`, and possibly `python3.6-dev` if you're using Python 3.6. You may also have to install the Python development libraries for your version of Python. For example `libpython3.6-dev`, and possibly `python3.6-dev` if you're using Python 3.6.
@ -183,17 +184,18 @@ dmesg | grep USB
If Home Assistant (`hass`) runs with another user (e.g., *homeassistant*) you need to give access to the stick with: If Home Assistant (`hass`) runs with another user (e.g., *homeassistant*) you need to give access to the stick with:
```bash ```bash
$ sudo usermod -aG dialout homeassistant sudo usermod -aG dialout homeassistant
``` ```
The output from `ls -ltr` above contains the following information: The output from `ls -ltr` above contains the following information:
* The device type is `c` (character special)
* The permissions are `rw-rw----`, meaning only the owner and group can read and write to it - The device type is `c` (character special).
* There is only `1` link to the file - The permissions are `rw-rw----`, meaning only the owner and group can read and write to it.
* It is owned by `root` and can be accessed by members of the group `dialout` - There is only `1` link to the file.
* It has a major device number of `204`, and a minor device number of `64` - It is owned by `root` and can be accessed by members of the group `dialout`.
* The device was connected at `10:25` on `21 September` - It has a major device number of `204`, and a minor device number of `64`.
* The device is `/dev/ttyUSB0`. - The device was connected at `10:25` on `21 September`.
- The device is `/dev/ttyUSB0`.
#### macOS #### macOS
@ -218,6 +220,7 @@ If your device path changes when you restart, see [this guide](http://hintshop.l
### Random unreachable Z-Wave nodes: ModemManager interference ### Random unreachable Z-Wave nodes: ModemManager interference
If this applies to your situation: If this applies to your situation:
- Some or all Z-Wave nodes are unreachable after restarting Home Assistant; not necessarily after every restart but seemingly random. - Some or all Z-Wave nodes are unreachable after restarting Home Assistant; not necessarily after every restart but seemingly random.
- The Z-Wave stick stops responding, needs to be re-plugged or Home Assistant needs a restart to get Z-Wave back. - The Z-Wave stick stops responding, needs to be re-plugged or Home Assistant needs a restart to get Z-Wave back.
- Your host OS is Debian-based/Ubuntu (for example: you installed Ubuntu, then Docker, then Hass.io). - Your host OS is Debian-based/Ubuntu (for example: you installed Ubuntu, then Docker, then Hass.io).
@ -267,7 +270,9 @@ sudo usermod -aG dialout homeassistant
If you're getting errors like: If you're getting errors like:
```txt
openzwave-embed/open-zwave-master/libopenzwave.a: No such file or directory openzwave-embed/open-zwave-master/libopenzwave.a: No such file or directory
```
Then the problem is that you're missing `libudev-dev` (or the equivalent for your distribution), please [install it](/docs/z-wave/installation/#linux). Then the problem is that you're missing `libudev-dev` (or the equivalent for your distribution), please [install it](/docs/z-wave/installation/#linux).

View File

@ -4,7 +4,6 @@ description: "The docs are missing or outdated"
ha_category: Documentation ha_category: Documentation
--- ---
Home Assistant is a FAST moving open source project. This means occasionally the official documentation will not be 100% current or complete. Since this is an open source volunteer project, we would encourage anyone who finds gaps in the documentation to click the `edit this page on Github` link in the top right and submit any corrections/enhancements they may find useful. Home Assistant is a FAST moving open source project. This means occasionally the official documentation will not be 100% current or complete. Since this is an open source volunteer project, we would encourage anyone who finds gaps in the documentation to click the `edit this page on Github` link in the top right and submit any corrections/enhancements they may find useful.
In the absence of information, many users find it beneficial to look at other people's configurations to find examples of what they want to accomplish in their own configurations. The easiest way to find these configurations is through this [Github search](https://github.com/search?q=topic%3Ahome-assistant-config&type=Repositories). In the absence of information, many users find it beneficial to look at other people's configurations to find examples of what they want to accomplish in their own configurations. The easiest way to find these configurations is through this [GitHub search](https://github.com/search?q=topic%3Ahome-assistant-config&type=Repositories).

View File

@ -21,9 +21,12 @@ For Home Assistant Cloud Users, documentation can be found [here](https://www.na
There are a few ways that you can use Amazon Alexa and Home Assistant together. There are a few ways that you can use Amazon Alexa and Home Assistant together.
- [Build custom commands](/integrations/alexa.intent/) - [Create an Alexa Smart Home Skill to control lights, etc.](/integrations/alexa.smart_home/)
- Supports utterances without requiring the skill name, such as "Alexa, turn off the light."
- Support for controlling devices through Alexa routines.
- Support for viewing and controlling devices with the Alexa mobile app.
- [Create a Custom Alexa Skill to build custom commands](/integrations/alexa.intent/)
- [Create a new Flash Briefing source](/integrations/alexa.flash_briefings/) - [Create a new Flash Briefing source](/integrations/alexa.flash_briefings/)
- [Use the Smart Home API to control lights, etc.](/integrations/alexa.smart_home/)
- Alternative: use the [Emulated Hue integration][emulated-hue-component] to trick Alexa into thinking Home Assistant is a Philips Hue hub. - Alternative: use the [Emulated Hue integration][emulated-hue-component] to trick Alexa into thinking Home Assistant is a Philips Hue hub.
### Requirements ### Requirements

View File

@ -5,24 +5,20 @@ logo: amazon-alexa.png
ha_category: ha_category:
- Voice - Voice
ha_release: "0.54" ha_release: "0.54"
ha_codeowners:
- '@home-assistant/cloud'
- '@ochlocracy'
--- ---
## Amazon Alexa Smart Home Amazon Alexa provides a Smart Home API for richer home automation control without requiring the user to say the skill name, such as:
While the Skills API described above allows for arbitrary intents, all * _"Alexa, turn off the light."_
utterances must begin with "Alexa, tell $invocation_name ..." * _"Alexa, set the thermostat to cool."_
* _"Alexa, is the garage door open?"_
The [Emulated Hue integration][emulated-hue-component] provides a simpler It takes considerable effort to configure. Your Home Assistant instance must be accessible from the Internet, and you need to create an Amazon Developer account and an Amazon Web Services (AWS) account. An easier solution is to use [Home Assistant Cloud](/integrations/cloud/).
interface such as, "Alexa, turn on the kitchen light". However, it has some
limitations since everything looks like a light bulb.
Amazon provides a Smart Home API for richer home automation control. It takes The [Emulated Hue integration][emulated-hue-component] provides a simpler alternative to use utterances such as _"Alexa, turn on the kitchen light"_. However, it has some limitations since everything looks like a light bulb.
considerable effort to configure. The easy solution is to use
[Home Assistant Cloud](/integrations/cloud/).
However, config Amazon Alexa Smart Home Skill is not an easy job, you have to allow
your Home Assistant accessible from Internet, and you need to create Amazon Developer
account and an Amazon Web Service account.
<div class='note'> <div class='note'>
@ -33,13 +29,29 @@ For Home Assistant Cloud Users, documentation can be found [here](https://www.na
</div> </div>
### Requirements **Steps to Integrate an Amazon Alexa Smart Home Skill with Home Assistant**
- Amazon Developer Account. You can sign on [here](https://developer.amazon.com). - [Requirements](#requirements)
- An [AWS account](https://aws.amazon.com/free/) is need if you want to use Smart Home Skill API. Part of your Smart Home Skill will be hosted on [AWS Lambda](https://aws.amazon.com/lambda/pricing/). However you don't need worry the cost, AWS Lambda allow free to use up to 1 millions requests and 1GB outbound data transfer per month. - [Create an Amazon Alexa Smart Home Skill](#create-an-amazon-alexa-smart-home-skill)
- The Smart Home API also needs your Home Assistant instance to be accessible from the internet via HTTPS on port 443 using a certificate signed by [an Amazon approved certificate authority](https://ccadb-public.secure.force.com/mozilla/IncludedCACertificateReport), this is so account linking can take place. Read more on [our blog](/blog/2015/12/13/setup-encryption-using-lets-encrypt/) about how to set up encryption for Home Assistant. When running Hass.io using the [Duck DNS](/addons/duckdns/) add-on is the easiest method. - [Create an AWS Lambda Function](#create-an-aws-lambda-function)
- [Create an IAM Role for Lambda](#create-an-iam-role-for-lambda)
- [Add Code to the Lambda Function](#add-code-to-the-lambda-function)
- [Test the Lambda Function](#test-the-lambda-function)
- [Configure the Smart Home Service Endpoint](#configure-the-smart-home-service-endpoint)
- [Account Linking](#account-linking)
- [Alexa Smart Home Component Configuration](#alexa-smart-home-component-configuration)
- [Supported Integrations](#supported-integrations)
- [Alexa Web-Based App](#alexa-web-based-app)
- [Troubleshooting](#troubleshooting)
- [Debugging](#debugging)
### Create Your Amazon Alexa Smart Home Skill ## Requirements
- The Alexa Smart Home API requires your Home Assistant instance to be accessible from the internet via HTTPS on port 443 using an SSL/TLS certificate. A self-signed certificate will work, but a certificate signed by [an Amazon approved certificate authority](https://ccadb-public.secure.force.com/mozilla/IncludedCACertificateReport) is recommended. Read more on [our blog](/blog/2015/12/13/setup-encryption-using-lets-encrypt/) about how to set up encryption for Home Assistant. When running Hass.io using the [Duck DNS](/addons/duckdns/) add-on is the easiest method.
- Amazon Developer Account. Sign up [here](https://developer.amazon.com).
- An [Amazon Web Services (AWS)](https://aws.amazon.com/free/) account is required to host the Lambda function for your Alexa Smart Home Skill. [AWS Lambda](https://aws.amazon.com/lambda/pricing/) is free to use for up to 1-million requests and 1GB outbound data transfer per month.
## Create an Amazon Alexa Smart Home Skill
- Sign in [Alexa Developer Console][alexa-dev-console], you can create your free account on the sign in page. - Sign in [Alexa Developer Console][alexa-dev-console], you can create your free account on the sign in page.
- Go to `Alexa Skills` page if you are not, click `Create Skill` button to start the process. - Go to `Alexa Skills` page if you are not, click `Create Skill` button to start the process.
@ -53,13 +65,13 @@ For Home Assistant Cloud Users, documentation can be found [here](https://www.na
- In next screen, make sure *v3* is selected in `Payload version`. - In next screen, make sure *v3* is selected in `Payload version`.
- Now, you have created a skeleton of Smart Home skill. Next step we will do some "real" developer work. You can keep Alex Developer Console opened, we need change the skill configuration later. - Now, you have created a skeleton of Smart Home skill. Next step we will do some "real" developer work. You can keep Alex Developer Console opened, we need change the skill configuration later.
### Create Your Lambda Function ## Create an AWS Lambda Function
Alexa Smart Home skill will trigger a AWS Lambda function to process the request, we will write a small piece of code hosted as an Lambda function basically redirect the request to your Home Assistant instance, then Alexa integration integration in Home Assistant will process the request and send back the response. Your Lambda function will delivery the response back to Alexa. Alexa Smart Home skill will trigger a AWS Lambda function to process the request, we will write a small piece of code hosted as an Lambda function basically redirect the request to your Home Assistant instance, then Alexa integration integration in Home Assistant will process the request and send back the response. Your Lambda function will delivery the response back to Alexa.
<div class='info'> <div class='info'>
There already are some great tutorials and solutions in our community to achieve same goal "Create your Alexa Smart Home Skill to connect Home Assistant", for example: [Haaska](https://github.com/mike-grant/haaska/wiki). There already are some great tutorials and solutions in our community to achieve same goal "Create your Alexa Smart Home Skill to connect Home Assistant", for example: [haaska](https://github.com/mike-grant/haaska/wiki).
You can follow this document or others, but you cannot mixed-match different solutions since they may have different design. You can follow this document or others, but you cannot mixed-match different solutions since they may have different design.
@ -69,7 +81,7 @@ Amazon also provided a [step-by-step guide](https://developer.amazon.com/docs/sm
OK, let's go. You first need sign in your [AWS console](https://console.aws.amazon.com/), if you don't have an AWS account yet, you can create a new user [here](https://aws.amazon.com/free/) with 12-month free tire benefit. You don't need worry the cost if your account already pass the first 12 months, AWS provides up to 1 million Lambda request, 1GB outbound data and all inbound data for free, every month, all users. See [Lambda pricing](https://aws.amazon.com/lambda/pricing/) for details. OK, let's go. You first need sign in your [AWS console](https://console.aws.amazon.com/), if you don't have an AWS account yet, you can create a new user [here](https://aws.amazon.com/free/) with 12-month free tire benefit. You don't need worry the cost if your account already pass the first 12 months, AWS provides up to 1 million Lambda request, 1GB outbound data and all inbound data for free, every month, all users. See [Lambda pricing](https://aws.amazon.com/lambda/pricing/) for details.
#### Create an IAM Role for Lambda ### Create an IAM Role for Lambda
First thing you need to do after sing in [AWS console](https://console.aws.amazon.com/) is to create an IAM Role for Lambda execution. AWS has very strict access control, you have to specific define and assign the permissions. First thing you need to do after sing in [AWS console](https://console.aws.amazon.com/) is to create an IAM Role for Lambda execution. AWS has very strict access control, you have to specific define and assign the permissions.
@ -84,7 +96,7 @@ First thing you need to do after sing in [AWS console](https://console.aws.amazo
- You can skip `Add tags` page, click `Next: Review`. - You can skip `Add tags` page, click `Next: Review`.
- Give your new role a name, such as `AWSLambdaBasicExecutionRole-SmartHome`, then click `Create role` button. You should be able to find your new role in the roles list now. - Give your new role a name, such as `AWSLambdaBasicExecutionRole-SmartHome`, then click `Create role` button. You should be able to find your new role in the roles list now.
#### Create a Lambda function and add code ### Add Code to the Lambda Function
Next you need create a Lambda function. Next you need create a Lambda function.
@ -100,7 +112,7 @@ Next you need create a Lambda function.
- Click `Create function`, then you can config detail of Lambda function. - Click `Create function`, then you can config detail of Lambda function.
- Under `Configuration` tab, expand `Designer`, then click `Alexa Smart Home` in the left part of the panel to add a Alexa Smart Home trigger to your Lambda function. - Under `Configuration` tab, expand `Designer`, then click `Alexa Smart Home` in the left part of the panel to add a Alexa Smart Home trigger to your Lambda function.
- Scroll down little bit, you need input the `Skill ID` from the skill you created in previous step. (tips: you may need switch back to Alexa Developer Console to copy the `Skill ID`. - Scroll down little bit, you need input the `Skill ID` from the skill you created in previous step. (tips: you may need switch back to Alexa Developer Console to copy the `Skill ID`.
- Click your Lambda Function icon in the middle of the diagram, scroll down you will see a `Function code` window. - Click your Lambda function icon in the middle of the diagram, scroll down you will see a `Function code` window.
- Clear the example code, copy the Python script from: [https://gist.github.com/matt2005/744b5ef548cc13d88d0569eea65f5e5b](https://gist.github.com/matt2005/744b5ef548cc13d88d0569eea65f5e5b) (modified code to support Alexa's proactive mode, see details below) - Clear the example code, copy the Python script from: [https://gist.github.com/matt2005/744b5ef548cc13d88d0569eea65f5e5b](https://gist.github.com/matt2005/744b5ef548cc13d88d0569eea65f5e5b) (modified code to support Alexa's proactive mode, see details below)
- Scroll down a little bit, you will find `Environment variables`, you need add 4 environment variables: - Scroll down a little bit, you will find `Environment variables`, you need add 4 environment variables:
* BASE_URL *(required)*: your Home Assistant instance's Internet accessible URL with port if needed. *Do not include the trailing `/`*. * BASE_URL *(required)*: your Home Assistant instance's Internet accessible URL with port if needed. *Do not include the trailing `/`*.
@ -115,9 +127,9 @@ Next you need create a Lambda function.
- Now scroll up to the top, click `Save` button. - Now scroll up to the top, click `Save` button.
- You need copy the ARN displayed in the top of the page, which is the identify of this Lambda function. You will need this ARN to continue Alexa Smart Home skill configuration later. - You need copy the ARN displayed in the top of the page, which is the identify of this Lambda function. You will need this ARN to continue Alexa Smart Home skill configuration later.
#### Test the Lambda function ### Test the Lambda Function
Now, you have created the Lambda function, before you can test it, you have to set up your Home Assistant. Put following minimal configuration to your configuration.yaml, it will exposures all of your supported device and automation to Alexa. Check the [configuration section](#alexa-component-configuration) if you want more control of the exposure. Now, you have created the Lambda function, before you can test it, you have to set up your Home Assistant. Put following minimal configuration to your configuration.yaml, it will exposures all of your supported device and automation to Alexa. Check the [configuration section](#alexa-smart-home-component-configuration) if you want more control of the exposure.
```yaml ```yaml
alexa: alexa:
@ -152,9 +164,9 @@ Click `Test` button. If you don't have `LONG_LIVED_ACCESS_TOKEN`, you will get a
Now, you can login to your Home Assistant and [generate a long-lived access token][generate-long-lived-access-token]. After you put your long-lived access token to the `Environment variable`, do not forget click `Save` button before you `Test` again. Now, you can login to your Home Assistant and [generate a long-lived access token][generate-long-lived-access-token]. After you put your long-lived access token to the `Environment variable`, do not forget click `Save` button before you `Test` again.
This time, you will get a list of your devices as the response. 🎉 This time, you will get a list of your devices in the response. 🎉
### Config the Smart Home Service Endpoint ## Configure the Smart Home Service Endpoint
Now removed the long-lived access token if you want, copied the ARN of your Lambda function, then back to [Alexa Developer Console][alexa-dev-console]. You will finish the configuration of the Smart Home skill. Now removed the long-lived access token if you want, copied the ARN of your Lambda function, then back to [Alexa Developer Console][alexa-dev-console]. You will finish the configuration of the Smart Home skill.
@ -163,7 +175,7 @@ Now removed the long-lived access token if you want, copied the ARN of your Lamb
- Click `SMART HOME` in the left navigation bar of build page. - Click `SMART HOME` in the left navigation bar of build page.
- Fill in `Default endpoint` under `2. Smart Home service endpoint` using the `ARN` you copied from your Lambda function configuration. - Fill in `Default endpoint` under `2. Smart Home service endpoint` using the `ARN` you copied from your Lambda function configuration.
### Account Linking ## Account Linking
Alexa can link your Amazon account to your Home Assistant account. Therefore Home Assistant can make sure only authenticated Alexa request be able to access your home's devices. In order to link the account, you have to make sure your Home Assistant can be accessed from Internet. Alexa can link your Amazon account to your Home Assistant account. Therefore Home Assistant can make sure only authenticated Alexa request be able to access your home's devices. In order to link the account, you have to make sure your Home Assistant can be accessed from Internet.
@ -198,9 +210,9 @@ Alexa can link your Amazon account to your Home Assistant account. Therefore Hom
* A new window will open to direct you to your Home Assistant's login screen. * A new window will open to direct you to your Home Assistant's login screen.
* After you success login, you will be redirected back to Alexa app. * After you success login, you will be redirected back to Alexa app.
* You can discovery your devices now. * You can discovery your devices now.
- Now, you can ask your Echo or in Alexa App, *turn on bedroom* 🎉 - Now, you can ask your Echo or in Alexa App, _"Alexa, turn on bedroom"_ 🎉
### Alexa Component Configuration ## Alexa Smart Home Component Configuration
Example configuration: Example configuration:
@ -209,8 +221,8 @@ alexa:
smart_home: smart_home:
locale: en-US locale: en-US
endpoint: https://api.amazonalexa.com/v3/events endpoint: https://api.amazonalexa.com/v3/events
client_id: !secret alexa_client_id client_id: YOUR_SKILL_CLIENT_ID
client_secret: !secret alexa_client_secret client_secret: YOUR_SKILL_CLIENT_SECRET
filter: filter:
include_entities: include_entities:
- light.kitchen - light.kitchen
@ -221,13 +233,110 @@ alexa:
- switch.outside - switch.outside
entity_config: entity_config:
light.kitchen: light.kitchen:
name: Custom Name for Alexa name: "Custom Name for Alexa"
description: The light in the kitchen description: "The light in the kitchen"
switch.stairs: switch.stairs:
display_categories: LIGHT display_categories: LIGHT
``` ```
{% configuration %}
alexa:
description: Alexa configuration
required: true
type: map
keys:
smart_home:
description: Alexa Smart Home configuration
required: true
type: map
keys:
locale:
description: The locale of your Alexa devices. Supported locales are `de-DE`, `en-AU`, `en-CA`, `en-GB`, `en-IN`, `en-US`, `es-ES`, `es-MX`, `fr-CA`, `fr-FR`, `it-IT`, `ja-JP`. See [Alexa Locale](#alexa-locale) for additional information.
required: false
type: string
default: en-US
endpoint:
description: >-
To enable proactive events, you send a message to the Alexa event gateway, send it to the event endpoint that aligns with the geographic availability of your smart home skill. Following is the list of endpoints and the regions they cover. See [Proactive Events](#proactive-events) for more information.
* North America: `https://api.amazonalexa.com/v3/events`
* Europe: `https://api.eu.amazonalexa.com/v3/events`
* Far East: `https://api.fe.amazonalexa.com/v3/events`
required: false
type: string
client_id:
description: See [Proactive Events](#proactive-events) for more information.
required: false
type: string
client_secret:
description: See [Proactive Events](#proactive-events) for more information.
required: false
type: string
filter:
description: Filter domains and entities for Alexa.
required: true
type: map
keys:
include_domains:
description: List of domains to include (e.g., `light`).
required: false
type: list
exclude_domains:
description: List of domains to exclude (e.g., `light`).
required: false
type: list
include_entities:
description: List of entities to include (e.g., `light.attic`).
required: false
type: list
exclude_entities:
description: List of entities to include (e.g., `light.attic`).
required: false
type: list
entity_config:
description: Configuration for specific entities. All subordinate keys are the corresponding entity ids or the domains, e.g., `alarm_control_panel.woowoo`.
required: false
type: map
keys:
'`<ENTITY_ID>`':
description: Additional options for specific entities.
required: false
type: map
keys:
name:
description: Name of the entity to show in Amazon Alexa App.
required: false
type: string
description:
description: Description of the entity to show in Amazon Alexa App.
required: false
type: string
display_categories:
description: >-
Display category and iconography each entity is shown in the Alexa app. Separate each category with a comma. First category is primary. e.g., `MUSIC_SYSTEM,STREAMING_DEVICE,SPEAKER`. See [Alexa Display Categories](#alexa-display-categories) for a list of available categories.
required: false
type: string
{% endconfiguration %}
Set the `locale` to the locale of your Alexa devices. Supported locales are: `de-DE`, `en-AU`, `en-CA`, `en-GB`, `en-IN`, `en-US`, `es-ES`, `es-MX`, `fr-CA`, `fr-FR`, `it-IT`, `ja-JP`. Default is `en-US`. ### Alexa Locale
The `locale` should match the location and language used for your Amazon echo devices.
The supported locales are:
- `de-DE`
- `en-AU`
- `en-CA`
- `en-GB`
- `en-IN`
- `en-US`
- `es-ES`
- `es-MX`
- `fr-CA`
- `fr-FR`
- `it-IT`
- `ja-JP`
See [List of Capability Interfaces and Supported Locales][alexa-supported-locales].
### Proactive Events
The `endpoint`, `client_id` and `client_secret` are optional, and are only required if you want to enable Alexa's proactive mode (i.e. "Send Alexa Events" enabled). Please note the following if you want to enable proactive mode: The `endpoint`, `client_id` and `client_secret` are optional, and are only required if you want to enable Alexa's proactive mode (i.e. "Send Alexa Events" enabled). Please note the following if you want to enable proactive mode:
@ -235,19 +344,575 @@ The `endpoint`, `client_id` and `client_secret` are optional, and are only requi
- The `client_id` and `client_secret` are not the ones used by the skill that have been set up using "Login with Amazon" (in the [Alexa Developer Console][amazon-dev-console]: Build > Account Linking), but rather from the "Alexa Skill Messaging" (in the Alexa Developer Console: Build > Permissions > Alexa Skill Messaging). To get them, you need to enable the "Send Alexa Events" permission. - The `client_id` and `client_secret` are not the ones used by the skill that have been set up using "Login with Amazon" (in the [Alexa Developer Console][amazon-dev-console]: Build > Account Linking), but rather from the "Alexa Skill Messaging" (in the Alexa Developer Console: Build > Permissions > Alexa Skill Messaging). To get them, you need to enable the "Send Alexa Events" permission.
- If the "Send Alexa Events" permission was not enabled previously, you need to unlink and relink the skill using the Alexa App, or else Home Assistant will show the following error: "Token invalid and no refresh token available. Also, you need to restart your Home Assistant after each disabling/enabling the skill in Alexa." - If the "Send Alexa Events" permission was not enabled previously, you need to unlink and relink the skill using the Alexa App, or else Home Assistant will show the following error: "Token invalid and no refresh token available. Also, you need to restart your Home Assistant after each disabling/enabling the skill in Alexa."
### Alexa web-based app ### Configure Filter
By default, no entity will be excluded. To limit which entities are being exposed to Alexa, you can use the `filter` parameter. Keep in mind that only [supported components](#supported-integrations) can be added.
{% raw %}
```yaml
# Example filter to include specified domains and exclude specified entities
alexa:
smart_home:
filter:
include_domains:
- alarm_control_panel
- light
exclude_entities:
- light.kitchen_light
```
{% endraw %}
Filters are applied as follows:
1. No includes or excludes - pass all entities
2. Includes, no excludes - only include specified entities
3. Excludes, no includes - only exclude specified entities
4. Both includes and excludes:
* Include domain specified
- if domain is included, and entity not excluded, pass
- if domain is not included, and entity not included, fail
* Exclude domain specified
- if domain is excluded, and entity not included, fail
- if domain is not excluded, and entity not excluded, pass
- if both include and exclude domains specified, the exclude domains are ignored
* Neither include or exclude domain specified
- if entity is included, pass (as #2 above)
- if entity include and exclude, the entity exclude is ignored
See the [troubleshooting](#troubleshooting) if for issues setting up the integration.
### Alexa Display Categories
Configure a display category to override the display category and iconography each entity is shown in the Alexa app. This makes it easier to find and monitor devices.
```yaml
light.kitchen_light:
display_categories: LIGHT,SWITCH
```
<div class='note info'>
Devices such as cameras, doorbells, garage doors, and alarm control panels require specific display categories to provide all available features from Amazon Alexa. Overriding the default display category will limit features provided by Amazon Alexa.
</div>
See [Alexa Display Categories][alexa-display-categories] for a complete list
## Supported Platforms
Home Assistant supports the following integrations through Alexa using a Smart Home Skill. For Home Assistant Cloud Users, documentation can be found [here](https://www.nabucasa.com/config/amazon_alexa/).
The following integrations are currently supported:
- [Alarm Control Panel](#alarm-control-panel)
- [Alert](#alert-automation-group-input-boolean)
- [Automation](#alert-automation-group-input-boolean)
- [Binary Sensor](#binary-sensor)
- [Doorbell Announcement](#doorbell-announcement)
- [Presence Detection](#presence-detection-with-binary-sensor)
- [Climate](#climate)
- [Cover](#cover)
- [Garage Doors](#garage-doors)
- [Fan](#fan)
- [Fan Speed](#fan-speed)
- [Fan Direction](#fan-direction)
- [Fan Oscillation](#fan-oscillation)
- [Group](#alert-automation-group-input-boolean)
- [Input Boolean](#alert-automation-group-input-boolean)
- [Input Number](#input-number)
- [Image Processing](#image-processing)
- [Light](#light)
- [Lock](#lock)
- [Media Player](#media-player)
- [Channels](#change-channel)
- [Speakers](#speaker-volume)
- [Sound Mode & Equalizers](#equalizer-mode)
- [Inputs](#inputs)
- [Payback Control](#seek)
- [Scene](#scene)
- [Script](#script)
- [Sensor](#sensor)
- [Switch](#switch)
- [Timer](#timer)
- [Vacuum](#vacuum)
### Alarm Control Panel
Arm and disarm Alarm Control Panel entities. Ask Alexa for the state of the Alarm Control Panel entity.
* _"Alexa, arm my home in away mode."_
* _"Alexa, arm my home."_
* _"Alexa, disarm my home."_
* _"Alexa, is my home armed?"_
#### Arming
The Alarm Control Panel state must be in the `disarmed` state before arming. Alexa does not support switching from an armed state without first disarming, e.g., switching from `armed_home` to `armed_night`.
The Alarm Control Panel state `armed_custom_bypass` isn't supported by Alexa and is treated as `armed_home`.
<div class="note">
Alexa does not support arming with voice PIN at this time. Therefore if the Alarm Control Panel requires a `code` for arming or the `code_arm_required` attribute is `true`, the entity will not be exposed during discovery.
The Alarm Control Panel may default the `code_arm_required` attribute to `true` even if the platform does not support or require it. Use the [Entity Customization Tool](/docs/configuration/customizing-devices/#customization-using-the-ui) to override `code_arm_required` to `false` and expose the Alarm Control Panel during discovery.
</div>
#### Disarming
Users must opt-in to the disarm by voice feature in the Alexa App. Alexa will require a 4 digit voice personal identification number (PIN) for disarming. Configure a 4 digit PIN in the Alexa app, or use an existing 4 digit PIN code configured for the Alarm Control Panel.
<p class='img'>
<a href='/images/integrations/alexa/alexa_app_security_system_pin.png' target='_blank'>
<img height='460' src='/images/integrations/alexa/alexa_app_security_system_pin.png' alt='Screenshot: Alexa App Security System PIN'/></a>
</p>
To use the exiting code configured for the Alarm Control Panel the `code` must be 4 digits and the `code_format` attribute must be `FORMAT_NUMBER`. After discovery, the Alexa app will offer the ability to use the existing `code`, or create an additional 4 digit PIN to use with Alexa.
The existing code is never communicated to Alexa from Home Assistant. During disarming, Alexa will ask for a PIN. The PIN spoken to Alexa is relayed to Home Assistant and passed to the `alarm_control_panel.alarm_disarm` service. If the `alarm_control_panel.alarm_disarm` service fails for any reason, it is assumed the PIN was incorrect and reported to Alexa as an invalid PIN.
### Alert, Automation, Group, Input Boolean
Turn on and off Alerts, Automations, Groups, and Input Boolean entities as switches.
* _"Alexa, turn on the front door alert."_
* _"Alexa, turn off energy saving automations."_
* _"Alexa, Downstairs to on."_
### Binary Sensor
Requires [Proactive Events](#proactive-events) enabled.
Binary Sensors with a [`device_class`](/integrations/binary_sensor/#device-class) attribute of `door` `garage_door` `opening` `window` `motion` `presense` are supported.
|`device_class`|Alexa Sensor Type|
| :---: | :---: |
|`door`|Contact|
|`garage_door`|Contact|
|`opening`|Contact|
|`window`|Contact|
|`motion`|Motion|
|`presense`|Motion|
Ask Alexa for the state of a contact sensor.
* _"Alexa, is the bedroom window open?"_
#### Routines
Requires [Proactive Events](#proactive-events) enabled.
Alexa Routines can be triggered with Binary Sensors exposed as contact or motion sensors.
Use the [Entity Customization Tool](/docs/configuration/customizing-devices/#customization-using-the-ui) to override the `device_class` attribute to expose a `binary_sensor` to Alexa.
#### Doorbell Announcement
Requires [Proactive Events](#proactive-events) enabled.
Configure a `binary_sensor` with `display_category` of `DOORBELL` in the [`entity_config`](#entity_config) to gain access to the doorbell notification settings in the Alexa App.
```yaml
alexa:
smart_home:
entity_config:
binary_sensor.alexa_doorbell:
name: "Front Door"
description: "Doorbell Binary Sensor"
display_categories: DOORBELL
```
Alexa will announce on all echo devices _"Someone is at the [entity name]"_ when a `binary_sensor` state changes from `off` to `on`.
<div class='note info'>
Each Amazon Echo device will need the communication and announcements setting enabled, and the Do Not Disturb feature turned off.
</div>
<p class='img'>
<a href='/images/integrations/alexa/alexa_app_doorbell_announcement.png' target='_blank'>
<img height='460' src='/images/integrations/alexa/alexa_app_doorbell_announcement.png' alt='Screenshot: Alexa App Doorbell Notification'/></a>
</p>
#### Presence Detection with Binary Sensor
Requires [Proactive Events](#proactive-events) enabled.
Configure a `binary_sensor` that has a `device_class` attribute of `motion` or `presence` and configure `display_category` to `CAMERA` in the [`entity_config`](#entity_config) to gain access the presence detected notification settings in the Alexa App.
```yaml
alexa:
smart_home:
entity_config:
binary_sensor.driveway_presence:
name: "Driveway"
description: "Driveway Presence Sensor"
display_categories: CAMERA
```
Alexa will announce on all echo devices _"Person detected at [entity name]"_.
<div class="note">
Each Echo device will need the communication and Announcements setting enabled, and the Do Not Disturb feature turned off.
</div>
<p class='img'>
<a href='/images/integrations/alexa/alexa_app_person_detection.png' target='_blank'>
<img height='460' src='/images/integrations/alexa/alexa_app_person_detection.png' alt='Screenshot: Alexa App Person Detection Notification'/></a>
</p>
[Image Processing](#image-processing) entities also support this notification.
### Climate
Single, double, and triple set-point thermostats are supported. The temperature value from the thermostat will also be exposed at a separate [temperature sensor](#sensor).
#### Set Thermostat Temperature
* _"Alexa, set thermostat to 20."_
* _"Alexa, set the AC to 75."_
* _"Alexa, make it warmer in here."_
* _"Alexa, make it cooler in here."_
#### Thermostat Mode
* _"Alexa, set living room thermostat to automatic."_
- `DRY` is shown in Alexa app as `DEHUMIDIFY`
- `ECO` is handled as a `preset` in Home Assistant, and will not display in the Alexa app.
- `FAN_ONLY` is not supported by the Alexa voice model and is shown as `OFF` in the Alexa App.
To change the thermostat mode, the exact utterance must be used:
* _"Alexa, set [entity name] to [mode utterance]."_
If the climate entity supports on/off, use _"turn on"_ and _"turn off"_ utterances with the entity name or the mode utterance.
* _"Alexa, turn on the [mode utterance]."_
* _"Alexa, turn off the [entity name]."_
Alexa supports the following utterances value for climate thermostat mode:
|HA Climate Mode | Alexa Mode Utterances |
|--- |--- |
|`AUTO` | _"auto"_, _"automatic"_|
|`COOL` | _"cool"_, _"cooling"_|
|`HEAT` | _"heat"_, _"heating"_|
|`ECO` | _"eco"_, _"economical"_|
|`DRY` | _"dry"_, _"dehumidify"_|
|`OFF` | _"off"_|
### Cover
Covers should be configured with the appropriate `device_class`.
Covers with a `device_class` of `blind`, `shade`, `curtin` are shown as an Interior Blind in the Alexa App and Covers with a `window`, `awning`, or `shutter` will show as an Exterior Blind.
Covers with the `device_class` of `garage` are shown as a [Garage Door](#garage-doors) and support the Open by Voice PIN feature.
Use the [Entity Customization Tool](/docs/configuration/customizing-devices/#customization-using-the-ui) to override the `device_class` attribute to correctly expose a `cover` to Alexa.
#### Open/Close/Raise/Lower
Home Assistant configures covers with semantics that provide _"raise"_, _"lower"_, _"open"_, _"close"_ utterances for covers. In addition to semantics _"turn on"_ / _"turn off"_ utterances will also work.
* _"Alexa, open the garage door."_
* _"Alexa, close the curtain."_
* _"Alexa, lower the shades."_
* _"Alexa, raise the roof!"_
Semantics are assigned based on the features supported by the cover. If the cover supports tilt functionality, the semantics _"open"_ and _"close"_ are assigned to the tilt functionality, and the semantics _"raise"_ and _"lower"_ are assigned to the position functionality.
If the cover does not support tilt, all semantics _"raise"_, _"lower"_, _"open"_, _"close"_ are assigned to the position functionality.
#### Set Cover Position
Covers that support a set position can be controlled using percentages.
* _"Alexa, set the [entity name] position to thirty percent."_
* _"Alexa, increase [entity name] position by ten percent."_
* _"Alexa, decrease [entity name] position by twenty percent."_
|Locale|Friendly Name Synonyms|
|---|---|
|`en-US`|_"position"_, _"opening"_|
Currently, Alexa only supports friendly name synonyms for the `en-US` locale.
#### Set Cover Tilt
Covers that support tilt position can be controlled using percentages.
* _"Alexa, set the [entity name] tilt to thirty percent."_
* _"Alexa, increase [entity name] tilt by ten percent."_
* _"Alexa, decrease [entity name] tilt by twenty percent."_
|Locale|Friendly Name Synonyms|
|---|---|
|`en-US`|_"tilt"_, _"angle"_, _"direction"_|
Currently, Alexa only supports friendly name synonyms for the `en-US` locale.
#### Garage Doors
Covers with a `device_class` of `garage` support the Open by Voice PIN feature in the Alexa app. Configure a 4 digit PIN code to open the garage door in the Alexa app.
<p class='img'>
<a href='/images/integrations/alexa/alexa_app_garage_door_pin.png' target='_blank'>
<img height='460' src='/images/integrations/alexa/alexa_app_garage_door_pin.png' alt='Screenshot: Alexa App Garage Door Open by voice'/></a>
</p>
### Fan
Control fan speed, direction, and oscillation.
#### Fan Speed
The fan device must support the `speed` attribute. `speed` can be set using a percentage or a range value determined from the `speed_list` attribute.
* _"Alexa, set the fan speed to three."_
* _"Alexa, set the fan speed to fifty percent."_
* _"Alexa, set the fan power level to fifty percent."_
* _"Alexa, turn up the speed on the tower fan."_
* _"Alexa, set the air speed on the tower fan to maximum."_
The `speed_list` attribute is used to determine the range value. For example, using a `speed_list` consisting of `[off, low, medium, high]` the range values would be `0:off`, `1:low`, `2:medium`, `3:high`.
The following table lists the possible friendly name synonyms available for a fan with `speed_list: [off, low, medium, high]`.
|Fan Range|Friendly Name Synonyms|
|---|---|
|0|_"zero"_, _"off"_|
|1|_"one"_, _"thirty-three percent"_, _"low"_, _"minimum"_, _"min"_|
|2|_"two"_, _"sixty-six percent"_, _"medium"_|
|3|_"three"_, _"one hundred percent"_, _"high"_, _"maximum"_, _"max"_|
The following synonyms can be used for _"fan speed"_
|Locale|Friendly Name Synonyms|
|---|---|
|`en-US`|_"fan speed"_, _"airflow speed"_, _"wind speed"_, _"air speed"_, _"air velocity"_, _"power level"_|
Currently, Alexa only supports friendly name synonyms for the `en-US` locale.
#### Fan Direction
The fan device must support the `direction` attribute.
* _"Alexa, set the fan direction to forward."_
* _"Alexa, set the fan direction to reverse."_
#### Fan Oscillation
The fan device must support the `oscillating` attribute.
* _"Alexa, is oscillate on for the tower fan?"_
* _"Alexa, turn on swivel for the tower fan."_
* _"Alexa, turn on oscillation mode for the table fan."_
|Locale|Friendly Name Synonyms|
|---|---|
|`en-US`|_"oscillate"_, _"swivel"_, _"oscillation"_, _"spin"_, _"back and forth"_|
Currently, Alexa only supports friendly name synonyms for the `en-US` locale.
### Image Processing
Requires [Proactive Events](#proactive-events) enabled.
#### Presence Detection Notification
All `image_processing` entities support the presence detected notification settings in the Alexa App. Any state change will trigger the notification.
Alexa will announce on all echo devices _"Person detected at [entity name]"_.
<p class='img'>
<a href='/images/integrations/alexa/alexa_app_person_detection.png' target='_blank'>
<img height='460' src='/images/integrations/alexa/alexa_app_person_detection.png' alt='Screenshot: Alexa App Person Detection Notification'/></a>
</p>
<div class='note'>
Display category will default to `CAMERA` to enable presence detected notification settings in the Alexa App. Each Echo device will need the communication and Announcements setting enabled, and the Do Not Disturbed feature turned off.
</div>
### Input Number
Control an `input_number` entity with Alexa. Configures Alexa with the `min`, `max`, `step`, and `unit_of_measurement` attributes for the entity.
* _"Alexa, set [entity name] to forty five [unit of measurement]."_
* _"Alexa, increase the [entity name] by two."_
* _"Alexa, set the [entity name] to maximum."_
The following table lists the possible friendly name synonyms available for a Input Number with `min: -90, max: 90, step: 45, unit_of_measurement: degrees`.
|Fan Range|Friendly Name Synonyms|
|---|---|
|-90|_"negative ninety"_, _"minimum"_, _"min"_|
|-45|_"negative forty five"_|
|0|_"zero"_|
|45|_"forty five"_|
|90|_"ninety"_, _"maximum"_, _"max"_|
### Light
* _"Alexa, dim the bathroom light."_
* _"Alexa, set the bedroom light to fifty percent."_
### Lock
* _"Alexa, lock my front door."_
* _"Alexa, unlock the dungeon."_
#### Unlocking
To unlock, Alexa will require a 4 digit voice personal identification number (PIN) for unlocking. Configure a 4 digit PIN in the Alexa app to unlock locks.
### Media Player
#### Change Channel
* _"Alexa, change the channel to 200 on the Living Room TV."_
* _"Alexa, change the channel to PBS on the TV."_
* _"Alexa, next channel on the Living Room TV."_
* _"Alexa, channel up on the TV."_
* _"Alexa, channel down on the TV."_
#### Speaker Volume
* _"Alexa, set the volume of the speakers to 50."_
* _"Alexa, turn the volume down on the stereo by 20."_
* _"Alexa, turn the volume down on Living Room TV."_
* _"Alexa, mute speakers."_
* _"Alexa, unmute speakers."_
* _"Alexa, lower the volume on the stereo."_
* _"Alexa, volume up 20 on the speakers."_
#### Equalizer Mode
Supports changing the Media Player `sound_mode` from the preset `sound_mode_list`.
* _"Alexa, set mode to movie on the TV."_
Alexa only supports the following modes: `movie`, `music`, `night`, `sport`, `tv`.
#### Inputs
Supports changing the Media Player `source` from the preset `source_list`.
* _"Alexa, change the input to DVD on the Living Room TV."_
Home Assistant will attempt to translate the the `media_player` `source_list` into a valid `source` name for Alexa. Alexa only supports the following input names:
`AUX 1`, `AUX 2`, `AUX 3`, `AUX 4`, `AUX 5`, `AUX 6`, `AUX 7`, `BLURAY`, `CABLE`, `CD`, `COAX 1`, `COAX 2`, `COMPOSITE 1`, `DVD`, `GAME`, `HD RADIO`, `HDMI 1`, `HDMI 2`, `HDMI 3`, `HDMI 4`, `HDMI 5`, `HDMI 6`, `HDMI 7`, `HDMI 8`, `HDMI 9`, `HDMI 10`, `HDMI ARC`, `INPUT 1`, `INPUT 2`, `INPUT 3`, `INPUT 4`, `INPUT 5`, `INPUT 6`, `INPUT 7`, `INPUT 8`, `INPUT 9`, `INPUT 10`, `IPOD`, `LINE 1`, `LINE 2`, `LINE 3`, `LINE 4`, `LINE 5`, `LINE 6`, `LINE 7`, `MEDIA PLAYER`, `OPTICAL 1`, `OPTICAL 2`, `PHONO`, `PLAYSTATION`, `PLAYSTATION 3`, `PLAYSTATION 4`, `SATELLITE`, `SMARTCAST`, `TUNER`, `TV`, `USB DAC`, `VIDEO 1`, `VIDEO 2`, `VIDEO 3`, `XBOX`
#### Playback State
Requires [Proactive Events](#proactive-events) enabled.
#### Seek
* _"Alexa, skip 30 seconds on device."_
* _"Alexa, go back 10 seconds on device."_
### Scene
Activate scenes with scene name, or _"turn on"_ utterance. Home Assistant does not support deactivate or _"turn off"_ for scenes at this time.
* _"Alexa, Party Time."_
* _"Alexa, turn on Party Time."_
### Script
Run script with script name, or _"turn on"_ utterance. Deactivate a running script with _"turn off"_ utterance.
* _"Alexa, Party Time."_
* _"Alexa, turn on Party Time."_
* _"Alexa, turn off Party Time."_
### Sensor
Requires [Proactive Events](#proactive-events) enabled.
Only temperature sensors are configured at this time.
* _"Alexa, what's the temperature in the kitchen?"_
* _"Alexa, what's the upstairs temperature?"_
* _"Alexa, what's the temperature of my ex-girlfriend's heart?"_
### Switch
Support _"turn on"_ and _"turn off"_ utterances.
* _"Alexa, turn on the vacuum."_
* _"Alexa, turn off the lights."_
### Timer
Start, Pause, and Restart Timer entities in Home Assistant.
* _"Alexa, pause the microwave."_
* _"Alexa, hold the sous vide."_
* _"Alexa, restart the microwave."_
<div class="note">
To avoid issues with Alexa built in timer functionality. The timer entity can not include the word "timer" in the friendly name.
</div>
### Vacuum
Support _"turn on"_ and _"turn off"_ utterances. Pause and Resume
* _"Alexa, turn on the vacuum."_
* _"Alexa, pause the vacuum."_
* _"Alexa, restart the vacuum."_
## Alexa Web-Based App
The following is a list of regions and the corresponding URL for the web-based Alexa app: The following is a list of regions and the corresponding URL for the web-based Alexa app:
* United States: `https://alexa.amazon.com`
* United Kingdom: `https://alexa.amazon.co.uk`
* Germany: `https://alexa.amazon.de`
* Japan: `https://alexa.amazon.co.jp`
* Canada: `https://alexa.amazon.ca`
* Australia: `https://alexa.amazon.com.au`
* India: `https://alexa.amazon.in`
* Spain: `https://alexa.amazon.es`
* United States: <https://alexa.amazon.com> ## Troubleshooting
* United Kingdom: <https://alexa.amazon.co.uk>
* Germany: <https://alexa.amazon.de> ### Binary Sensor not available in Routine Trigger
* Japan: <https://alexa.amazon.co.jp>
* Canada: <https://alexa.amazon.ca> Binary Sensors with a [`device_class`](/integrations/binary_sensor/#device-class) attribute of `door` `garage_door` `opening` `window` `motion` `presense` are supported.
* Australia: <https://alexa.amazon.com.au>
* India: <https://alexa.amazon.in> Use the [Entity Customization Tool](/docs/configuration/customizing-devices/#customization-using-the-ui) to override the `device_class` attribute to expose a `binary_sensor` to Alexa.
* Spain: <https://alexa.amazon.es>
### Token Invalid and no Refresh Token Available
Disable and re-enable the skill using the Alexa App; then restart Home Assistant.
## Debugging
The Alexa integration will log additional information about state updates and other messages when the log level is set to `debug`. Add the relevant line below to the `configuration.yaml`:
If using Alexa with an Alexa Smart Home Skill and Lambda function such as haaska:
```yaml
logger:
default: info
logs:
homeassistant.components.alexa: debug
```
If using Home Assistant Cloud you also need to debug `hass_nubucasa.iot`:
```yaml
logger:
default: info
logs:
homeassistant.components.alexa: debug
hass_nabucasa.iot: debug
```
[alexa-dev-console]: https://developer.amazon.com/alexa/console/ask [alexa-dev-console]: https://developer.amazon.com/alexa/console/ask
[emulated-hue-component]: /integrations/emulated_hue/ [emulated-hue-component]: /integrations/emulated_hue/
[generate-long-lived-access-token]: https://developers.home-assistant.io/docs/en/auth_api.html#long-lived-access-token [generate-long-lived-access-token]: https://developers.home-assistant.io/docs/en/auth_api.html#long-lived-access-token
[alexa-display-categories]: https://developer.amazon.com/docs/alexa/device-apis/alexa-discovery.html#display-categories
[alexa-supported-locales]: https://developer.amazon.com/docs/alexa/device-apis/list-of-interfaces.html

View File

@ -21,7 +21,7 @@ There is currently support for the following device types within Home Assistant:
Install this [unofficial add-on](https://github.com/korylprince/hassio-apcupsd/) to use this integration with Hass.io. Keep in mind that we can't give you support for this add-on. Install this [unofficial add-on](https://github.com/korylprince/hassio-apcupsd/) to use this integration with Hass.io. Keep in mind that we can't give you support for this add-on.
After installation, follow the instructions on the Github page to configure the plugin. Then continue to follow the integration configurations below. After installation, follow the instructions on the GitHub page to configure the plugin. Then continue to follow the integration configurations below.
## Configuration ## Configuration

View File

@ -26,7 +26,7 @@ Currently, you must have Home Sharing enabled for this to work. Support for pair
To use this component, you must first install some system libraries and a compiler. For Debian or a similar system, this should be enough: To use this component, you must first install some system libraries and a compiler. For Debian or a similar system, this should be enough:
```shell ```shell
$ sudo apt-get install build-essential libssl-dev libffi-dev python-dev sudo apt-get install build-essential libssl-dev libffi-dev python-dev
``` ```
If you want to discover new devices automatically, just make sure you have `discovery:` in your `configuration.yaml` file. To manually add one or more Apple TVs to your installation, add the following to your `configuration.yaml` file: If you want to discover new devices automatically, just make sure you have `discovery:` in your `configuration.yaml` file. To manually add one or more Apple TVs to your installation, add the following to your `configuration.yaml` file:
@ -106,7 +106,7 @@ Just copy and paste the `login_id` from the device you want to add. For more det
If you, when playing media with `play_url`, get the following error message: If you, when playing media with `play_url`, get the following error message:
*“This AirPlay connection requires iOS 7.1 or later, OS X 10.10 or later, or iTunes 11.2 or later.”* “This AirPlay connection requires iOS 7.1 or later, macOS 10.10 or later, or iTunes 11.2 or later.”
then device authentication is required, open the developer tools by selecting the hammer icon in the sidebar. Once in the developer tools select **services**. then device authentication is required, open the developer tools by selecting the hammer icon in the sidebar. Once in the developer tools select **services**.

View File

@ -21,7 +21,7 @@ Depending on the operating system you're running, you have to configure the prop
- On other Linux systems: - On other Linux systems:
- Preferred solution: Install the `bluepy` and `btlewrap` library (via pip). When using a virtual environment, make sure to use install the library in the right one. - Preferred solution: Install the `bluepy` and `btlewrap` library (via pip). When using a virtual environment, make sure to use install the library in the right one.
- Fallback solution: Install `btlewrap` library (via pip) and `gatttool` via your package manager. Depending on the distribution, the package name might be: `bluez`, `bluetooth` or `bluez-deprecated`. - Fallback solution: Install `btlewrap` library (via pip) and `gatttool` via your package manager. Depending on the distribution, the package name might be: `bluez`, `bluetooth` or `bluez-deprecated`.
- Windows and MacOS are currently not supported by the `btlewrap` library. - Windows and macOS are currently not supported by the `btlewrap` library.
## Configuration ## Configuration

View File

@ -9,31 +9,31 @@ ha_release: 0.14
ha_iot_class: Local Push ha_iot_class: Local Push
--- ---
Integrates MySensors binary sensors into Home Assistant. See the [main component] for configuration instructions. Integrates MySensors binary sensors into Home Assistant. See the [main integration](/integrations/mysensors/) for configuration instructions.
The following sensor types are supported: The following sensor types are supported:
#### MySensors version 1.4 and higher ## MySensors version 1.4 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
-------------------|--------------------------------------- | -------- | --------- |
S_DOOR | V_TRIPPED | S_DOOR | V_TRIPPED |
S_MOTION | V_TRIPPED | S_MOTION | V_TRIPPED |
S_SMOKE | V_TRIPPED | S_SMOKE | V_TRIPPED |
#### MySensors version 1.5 and higher ## MySensors version 1.5 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
---------------|---------------------------------- | ------------ | --------- |
S_SPRINKLER | V_TRIPPED | S_SPRINKLER | V_TRIPPED |
S_WATER_LEAK | V_TRIPPED | S_WATER_LEAK | V_TRIPPED |
S_SOUND | V_TRIPPED | S_SOUND | V_TRIPPED |
S_VIBRATION | V_TRIPPED | S_VIBRATION | V_TRIPPED |
S_MOISTURE | V_TRIPPED | S_MOISTURE | V_TRIPPED |
For more information, visit the [serial api] of MySensors. For more information, visit the [serial API](https://www.mysensors.org/download) of MySensors.
### Example sketch ## Example sketch
```cpp ```cpp
/** /**
@ -80,6 +80,3 @@ void loop()
} }
} }
``` ```
[main component]: /integrations/mysensors/
[serial api]: https://www.mysensors.org/download

View File

@ -362,7 +362,7 @@ slots:
Information about how to install on Windows can be found [here](/integrations/broadlink#sensor#microsoft-windows-installation). Information about how to install on Windows can be found [here](/integrations/broadlink#sensor#microsoft-windows-installation).
### How to obtain IR/RF packets? ### How to obtain IR/RF packets
Choose Call Service from the Developer Tools. Choose the service `broadlink.learn` from the list of **Available services:**, write in "Service Data" JSON with 1 field "host":"your_broadlink_IP" and hit **CALL SERVICE**. Press the button on your remote with in 20 seconds. The packet will be printed as a persistent notification in the States page of the web interface. Choose Call Service from the Developer Tools. Choose the service `broadlink.learn` from the list of **Available services:**, write in "Service Data" JSON with 1 field "host":"your_broadlink_IP" and hit **CALL SERVICE**. Press the button on your remote with in 20 seconds. The packet will be printed as a persistent notification in the States page of the web interface.
@ -524,7 +524,7 @@ First get or learn all the remotes you want to add to Home Assistant in E-Contro
- Download and install Python 2.7 on your windows PC. - Download and install Python 2.7 on your windows PC.
- Run `pip install simplejson`. You must install simplejson in the same python version you will use to run the scripts. You can ensure that the current version is installed by attempting to install again and confirming that you see "Requirement already satisfied". - Run `pip install simplejson`. You must install simplejson in the same python version you will use to run the scripts. You can ensure that the current version is installed by attempting to install again and confirming that you see "Requirement already satisfied".
- Download and install [iBackup Viewer](https://www.imactools.com/iphonebackupviewer/). - Download and install [iBackup Viewer](https://www.imactools.com/iphonebackupviewer/).
- Download [these](https://github.com/NightRang3r/Broadlink-e-control-db-dump) github files. Make sure you place them in the \Python27 path in Windows. Be sure that the getBroadlinkSharedData.py from the download is in this directory. - Download [these](https://github.com/NightRang3r/Broadlink-e-control-db-dump) GitHub files. Make sure you place them in the \Python27 path in Windows. Be sure that the getBroadlinkSharedData.py from the download is in this directory.
3. Plug your iphone into your windows PC, open iTunes and create a non-encrypted backup of your device. 3. Plug your iphone into your windows PC, open iTunes and create a non-encrypted backup of your device.
@ -570,12 +570,12 @@ First get or learn all the remotes you want to add to Home Assistant in E-Contro
3. Hit "Learn New Command" and follow instructions on screen. 3. Hit "Learn New Command" and follow instructions on screen.
4. The "OnRawData Base64" is the value to be used with Home Assistant. 4. The "OnRawData Base64" is the value to be used with Home Assistant.
### Using Node-RED to obtain codes ### Using Node-RED to obtain codes
1. Install the Broadlink Control palette in Node-RED (click the Hamburger menu at top right corner> Settings> Palette> Install and type Broadlink. Click install on the node-red-contrib-broadlink-control. 1. Install the Broadlink Control palette in Node-RED (click the Hamburger menu at top right corner> Settings> Palette> Install and type Broadlink. Click install on the node-red-contrib-broadlink-control.
2. Once installed, verify that the new palette titled broadlink is available in the nodes menu. 2. Once installed, verify that the new palette titled broadlink is available in the nodes menu.
3. Drag the RM node to an empty flow and double click to configure the node. 3. Drag the RM node to an empty flow and double click to configure the node.
```bash ```bash
a. give your RM device a name for easy identification a. give your RM device a name for easy identification
b. click on the pencil to edit the device information b. click on the pencil to edit the device information
@ -583,29 +583,36 @@ First get or learn all the remotes you want to add to Home Assistant in E-Contro
d. enter the IP address of the Broadlink RM PRO or RM mini d. enter the IP address of the Broadlink RM PRO or RM mini
e. leave the Catalog field empty. e. leave the Catalog field empty.
``` ```
4. Click Update, and the device field should show the MAC address of the newly added device. If not, just select it. 4. Click Update, and the device field should show the MAC address of the newly added device. If not, just select it.
5. In the Action field, select Learn, then click Done. 5. In the Action field, select Learn, then click Done.
6. Drag an Inject node to the left of the RM node and link them. The type of inject doesn't matter. Leave it to the defaults. 6. Drag an Inject node to the left of the RM node and link them. The type of inject doesn't matter. Leave it to the defaults.
7. Drag a Template node on the Flow to the right of the RM node and link it to the RM node. 7. Drag a Template node on the Flow to the right of the RM node and link it to the RM node.
8. Double click the Template node to edit it, select: 8. Double click the Template node to edit it, select:
```bash ```bash
Property: msg.payload Property: msg.payload
Format: Mustache template Format: Mustache template
Template field: enter '{% raw %}{{payload.data}}{% endraw %}'. Template field: enter '{% raw %}{{payload.data}}{% endraw %}'.
Output as: Plain text Output as: Plain text
``` ```
9. Drag a Debug node to the right of the Template node and link them. 9. Drag a Debug node to the right of the Template node and link them.
10. Show the debug messages, deploy the flow and click on the inject button. 10. Show the debug messages, deploy the flow and click on the inject button.
11. A message will show in the debug window: 11. A message will show in the debug window:
```bash ```bash
3/23/2019, 9:56:53 AMnode: RM_Mini1 3/23/2019, 9:56:53 AMnode: RM_Mini1
msg : string[47] msg : string[47]
"Please tap the remote button within 30 seconds." "Please tap the remote button within 30 seconds."
``` ```
12. Point the IR remote control at the RM device and click the desired button for about 2 seconds. An array of numbers will show in the debug window. For example: 12. Point the IR remote control at the RM device and click the desired button for about 2 seconds. An array of numbers will show in the debug window. For example:
```bash ```bash
'38,0,132,3,19,18,19,18,19,18,19,17,20,54,20,54,20,54,19,18,19,18,19,18,19,17,20,17,20,17,20,54,20,17,19,18,19,18,19,18,19,17,20,17,20,54,20,17,20,54,19,55,19,54,20,54,20,54,19,55,19,0,6,6,150,146,20,54,20,54,20,54,19,18,19,18,19,18,19,17,20,17,20,54,20,54,19,55,19,18,19,17,20,17,20,17,20,17,20,17,20,54,19,18,19,18,19,18,19,17,20,17,20,17,20,54,19,18,19,55,19,54,20,54,20,54,20,54,19,55,19,0,6,6,150,146,20,54,20,54,19,55,19,18,19,17,20,17,20,17,20,17,20,54,19,55,19,54,20,17,20,17,20,17,20,17,20,17,19,18,19,55,19,17,20,17,20,17,20,17,20,17,19,18,19,55,19,18,19,54,20,54,20,54,19,55,19,54,20,54,20,0,6,5,150,146,20,54,20,54,20,54,19,18,19,18,19,18,19,17,20,17,20,54,20,54,19,55,19,18,19,17,20,17,20,17,20,17,20,17,20,54,19,18,19,18,19,18,19,17,20,17,20,17,20,54,19,18,19,55,19,54,20,54,20,54,19,55,19,54,20,0,6,6,149,147,20,54,19,55,19,54,20,17,20,17,20,17,20,17,20,17,19,55,19,54,20,54,20,17,20,17,20,17,19,18,19,18,19,18,19,54,20,17,20,17,20,17,20,17,19,18,19,18,19,54,20,17,20,54,20,54,20,54,19,...' '38,0,132,3,19,18,19,18,19,18,19,17,20,54,20,54,20,54,19,18,19,18,19,18,19,17,20,17,20,17,20,54,20,17,19,18,19,18,19,18,19,17,20,17,20,54,20,17,20,54,19,55,19,54,20,54,20,54,19,55,19,0,6,6,150,146,20,54,20,54,20,54,19,18,19,18,19,18,19,17,20,17,20,54,20,54,19,55,19,18,19,17,20,17,20,17,20,17,20,17,20,54,19,18,19,18,19,18,19,17,20,17,20,17,20,54,19,18,19,55,19,54,20,54,20,54,20,54,19,55,19,0,6,6,150,146,20,54,20,54,19,55,19,18,19,17,20,17,20,17,20,17,20,54,19,55,19,54,20,17,20,17,20,17,20,17,20,17,19,18,19,55,19,17,20,17,20,17,20,17,20,17,19,18,19,55,19,18,19,54,20,54,20,54,19,55,19,54,20,54,20,0,6,5,150,146,20,54,20,54,20,54,19,18,19,18,19,18,19,17,20,17,20,54,20,54,19,55,19,18,19,17,20,17,20,17,20,17,20,17,20,54,19,18,19,18,19,18,19,17,20,17,20,17,20,54,19,18,19,55,19,54,20,54,20,54,19,55,19,54,20,0,6,6,149,147,20,54,19,55,19,54,20,17,20,17,20,17,20,17,20,17,19,55,19,54,20,54,20,17,20,17,20,17,19,18,19,18,19,18,19,54,20,17,20,17,20,17,20,17,19,18,19,18,19,54,20,17,20,54,20,54,20,54,19,...'
``` ```
This is the code we need to transmit again to replicate the same remote function. This is the code we need to transmit again to replicate the same remote function.
### Using Node red to Transmit Codes ### Using Node red to Transmit Codes
@ -614,6 +621,7 @@ This is the code we need to transmit again to replicate the same remote function
2. In the Action field, select - Set from msg.payload -. 2. In the Action field, select - Set from msg.payload -.
3. Drag an Inject node and give it a meaningful name relevant to the remote control button function, like "TV On" or "TV Source". 3. Drag an Inject node and give it a meaningful name relevant to the remote control button function, like "TV On" or "TV Source".
4. Drag a template node and double click it to configure: 4. Drag a template node and double click it to configure:
```bash ```bash
Property: msg.payload Property: msg.payload
Format: Mustache template Format: Mustache template
@ -624,13 +632,16 @@ This is the code we need to transmit again to replicate the same remote function
}' }'
In the Output as field, "select Parsed JSON". In the Output as field, "select Parsed JSON".
``` ```
5. Click Done. 5. Click Done.
6. Drag a debug node and connect it to the output of the RM node. 6. Drag a debug node and connect it to the output of the RM node.
7. Connect the Inject node to the Template node, and the template node to the RM node. 7. Connect the Inject node to the Template node, and the template node to the RM node.
8. Click Deploy to activate the flow, and then click the inject button. The debug window should show a debug message. For example: 8. Click Deploy to activate the flow, and then click the inject button. The debug window should show a debug message. For example:
```bash ```bash
{"action":"send","data": [38,0,152,0,0,1,39,148,19,18,18,19,18,55,19,18,18,19,18,19,18,19,18,55,18,56,18,19,18,55,18,19,18,56,18,18,19,55,18,19,18,19,18,18,18,56,18,19,18,18,19,55,18,56,18,18,19,18,18,19,18,19,18,55,19,18,18,19,18,19,18,19,18,18,18,19,18,19,18,55,19,55,18,19,18,19,18,18,19,18,18,56,18,19,18,18,19,55,18,56,18,18,19,18,18,19,18,19,18,19,18,18,19,18,18,56,18,55,18,19,18,19,18,19,18,18,19,55,18,19,18,55,19,18,18,56,18,19,18,18,19,18,18,19,18,19,18,19,18,18,18,56,18,0,13,5],"status":"OK"} {"action":"send","data": [38,0,152,0,0,1,39,148,19,18,18,19,18,55,19,18,18,19,18,19,18,19,18,55,18,56,18,19,18,55,18,19,18,56,18,18,19,55,18,19,18,19,18,18,18,56,18,19,18,18,19,55,18,56,18,18,19,18,18,19,18,19,18,55,19,18,18,19,18,19,18,19,18,18,18,19,18,19,18,55,19,55,18,19,18,19,18,18,19,18,18,56,18,19,18,18,19,55,18,56,18,18,19,18,18,19,18,19,18,19,18,18,19,18,18,56,18,55,18,19,18,19,18,19,18,18,19,55,18,19,18,55,19,18,18,56,18,19,18,18,19,18,18,19,18,19,18,19,18,18,18,56,18,0,13,5],"status":"OK"}
``` ```
The "status" : "OK" at the end is a feedback that the Broadlink RM device is connected and has transmitted the payload. The "status" : "OK" at the end is a feedback that the Broadlink RM device is connected and has transmitted the payload.
Now you can add as many template nodes, each having a specific code, and add any type of input nodes to activate the template and transmit the code. Now you can add as many template nodes, each having a specific code, and add any type of input nodes to activate the template and transmit the code.
@ -641,7 +652,7 @@ It is also possible to obtain codes using `broadlink_cli` from [python-broadlink
First use discovery to find your Broadlink device: First use discovery to find your Broadlink device:
```bash ```bash
./broadlink_discovery $ ./broadlink_discovery
Discovering... Discovering...
########################################### ###########################################
RM2 RM2
@ -671,7 +682,7 @@ For old/awkward devices another possibility is to try to get codes by using data
Assuming that your (or similar) device is in one of these databases: Assuming that your (or similar) device is in one of these databases:
- https://sourceforge.net/p/lirc-remotes/code/ci/master/tree/ - <https://sourceforge.net/p/lirc-remotes/code/ci/master/tree/>
- https://github.com/probonopd/irdb/tree/master/ - <https://github.com/probonopd/irdb/tree/master/>
You can grab `irdb2broadlinkha.sh` from [irdb2broadlinkha](https://github.com/molexx/irdb2broadlinkha) project and try to convert codes to format suitable for Home Assistant. You can grab `irdb2broadlinkha.sh` from [irdb2broadlinkha](https://github.com/molexx/irdb2broadlinkha) project and try to convert codes to format suitable for Home Assistant.

View File

@ -9,24 +9,24 @@ ha_release: 0.29
ha_iot_class: Local Push ha_iot_class: Local Push
--- ---
Integrates MySensors HVAC into Home Assistant. See the [main component] for configuration instructions. Integrates MySensors HVAC into Home Assistant. See the [main integration](/integrations/mysensors/) for configuration instructions.
The following actuator types are supported: The following actuator types are supported:
##### MySensors version 1.5 and higher ## MySensors version 1.5 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
-------|----------------------------------------------------------------------------- | ------ | ------------------------------------------------------------------------------------ |
S_HVAC | V_HVAC_FLOW_STATE*, V_HVAC_SETPOINT_HEAT, V_HVAC_SETPOINT_COOL, V_HVAC_SPEED, V_TEMP | S_HVAC | V_HVAC_FLOW_STATE*, V_HVAC_SETPOINT_HEAT, V_HVAC_SETPOINT_COOL, V_HVAC_SPEED, V_TEMP |
V_HVAC_FLOW_STATE is mapped to the state of the Climate integration in Home Assistant as follows: V_HVAC_FLOW_STATE is mapped to the state of the Climate integration in Home Assistant as follows:
Home Assistant State | MySensors State | Home Assistant State | MySensors State |
---------------------|---------------- | -------------------- | --------------- |
HVAC_MODE_COOL | CoolOn | HVAC_MODE_COOL | CoolOn |
HVAC_MODE_HEAT | HeatOn | HVAC_MODE_HEAT | HeatOn |
HVAC_MODE_AUTO | AutoChangeOver | HVAC_MODE_AUTO | AutoChangeOver |
HVAC_MODE_OFF | Off | HVAC_MODE_OFF | Off |
Currently humidity, away_mode, aux_heat, swing_mode is not supported. This will be included in later versions as feasible. Currently humidity, away_mode, aux_heat, swing_mode is not supported. This will be included in later versions as feasible.
@ -36,9 +36,9 @@ You can use V_HVAC_SPEED to control the Speed setting of the Fan in the HVAC.
You can use V_TEMP to send the current temperature from the node to Home Assistant. You can use V_TEMP to send the current temperature from the node to Home Assistant.
For more information, visit the [serial api] of MySensors. For more information, visit the [serial API](https://www.mysensors.org/download) of MySensors.
### Example sketch for MySensors 2.x ## Example sketch for MySensors 2.x
```cpp ```cpp
/* /*
@ -183,7 +183,7 @@ void sendHeatpumpCommand() {
} }
``` ```
### Example sketch for MySensors 1.x ## Example sketch for MySensors 1.x
```cpp ```cpp
/* /*
@ -255,6 +255,3 @@ void incomingMessage(const MyMessage &message) {
} }
} }
``` ```
[main component]: /integrations/mysensors/
[serial api]: https://www.mysensors.org/download

View File

@ -9,27 +9,27 @@ ha_release: "0.30"
ha_iot_class: Local Push ha_iot_class: Local Push
--- ---
Integrates MySensors covers into Home Assistant. See the [main component] for configuration instructions. Integrates MySensors covers into Home Assistant. See the [main integration](/integrations/mysensors/) for configuration instructions.
The following actuator types are supported: The following actuator types are supported:
##### MySensors version 1.4 ## MySensors version 1.4
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
--------|-------------------------------------------- | ------- | ------------------------------------------- |
S_COVER | V_UP, V_DOWN, V_STOP, [V_DIMMER or V_LIGHT] | S_COVER | V_UP, V_DOWN, V_STOP, [V_DIMMER or V_LIGHT] |
##### MySensors version 1.5 and higher ## MySensors version 1.5 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
--------|------------------------------------------------- | ------- | ------------------------------------------------ |
S_COVER | V_UP, V_DOWN, V_STOP, [V_PERCENTAGE or V_STATUS] | S_COVER | V_UP, V_DOWN, V_STOP, [V_PERCENTAGE or V_STATUS] |
All V_TYPES above are required. Use V_PERCENTAGE (or V_DIMMER) if you know the exact position of the cover in percent, use V_STATUS (or V_LIGHT) if you don't. All V_TYPES above are required. Use V_PERCENTAGE (or V_DIMMER) if you know the exact position of the cover in percent, use V_STATUS (or V_LIGHT) if you don't.
For more information, visit the [serial api] of MySensors. For more information, visit the [serial API](https://www.mysensors.org/download/serial_api_20) of MySensors.
### Example sketch ## Example sketch
```cpp ```cpp
/* /*
@ -149,6 +149,3 @@ void receive(const MyMessage &message) {
} }
} }
``` ```
[main component]: /integrations/mysensors/
[serial api]: https://www.mysensors.org/download/serial_api_20

View File

@ -74,7 +74,7 @@ Available services: `configure` and `deconz.device_refresh`.
Set attribute of device in deCONZ using [REST-API](https://dresden-elektronik.github.io/deconz-rest-doc/rest/). Set attribute of device in deCONZ using [REST-API](https://dresden-elektronik.github.io/deconz-rest-doc/rest/).
| Service data attribute | Optional | Description | | Service data attribute | Optional | Description |
|-----------|----------|-------------| | ---------------------- | -------- | --------------------------------------------------------------------------- |
| `field` | No | String representing a specific device in deCONZ. | | `field` | No | String representing a specific device in deCONZ. |
| `entity` | No | String representing a specific Home Assistant entity of a device in deCONZ. | | `entity` | No | String representing a specific Home Assistant entity of a device in deCONZ. |
| `data` | No | Data is a JSON object with what data you want to alter. | | `data` | No | Data is a JSON object with what data you want to alter. |
@ -110,7 +110,7 @@ Remote controls (ZHASwitch category) will not be exposed as regular entities, bu
Typical values for switches, the event codes are 4 numbers where the first and last number are of interest here. Typical values for switches, the event codes are 4 numbers where the first and last number are of interest here.
| Switch code | Description | | Switch code | Description |
|-------------|-------------| | ----------- | -------------------- |
| 1XXX | Button #1 up to #8 | | 1XXX | Button #1 up to #8 |
| XXX1 | Button hold | | XXX1 | Button hold |
| XXX2 | Button short release | | XXX2 | Button short release |
@ -123,7 +123,7 @@ For the IKEA Tradfri remote the first digit equals, 1 for the middle button, 2 f
Specific gestures for the Aqara Magic Cube are: Specific gestures for the Aqara Magic Cube are:
| Gesture | Description | | Gesture | Description |
|---------|-------------| | ------- | ---------------------- |
| 0 | Awake | | 0 | Awake |
| 1 | Shake | | 1 | Shake |
| 2 | Free fall | | 2 | Free fall |
@ -313,7 +313,7 @@ class RemoteControl(hass.Hass):
{% endraw %} {% endraw %}
#### Appdaemon remote template #### Appdaemon Ikea Tradfri remote template
Community app from [Teachingbirds](https://community.home-assistant.io/u/teachingbirds/summary). This app uses an Ikea Tradfri remote to control Sonos speakers with play/pause, volume up and down, next and previous track. Community app from [Teachingbirds](https://community.home-assistant.io/u/teachingbirds/summary). This app uses an Ikea Tradfri remote to control Sonos speakers with play/pause, volume up and down, next and previous track.
@ -402,7 +402,7 @@ Note that devices in the climate platform identify as sensors, so there is a man
The `entity_id` name will be `climate.device_name`, where `device_name` is defined in deCONZ. The `entity_id` name will be `climate.device_name`, where `device_name` is defined in deCONZ.
#### Verified supported climate devices ### Verified supported climate devices
- Bitron Thermostat 902010/32 - Bitron Thermostat 902010/32
- Eurotronic SPZB0001 - Eurotronic SPZB0001
@ -443,7 +443,7 @@ The `entity_id` names will be `light.device_name`, where `device_name` is define
- Philips Hue White Ambiance A19 - Philips Hue White Ambiance A19
- Philips Hue Hue White ambiance Milliskin (recessed spotlight) LTW013 - Philips Hue Hue White ambiance Milliskin (recessed spotlight) LTW013
- Philips Hue LightStrip Plus - Philips Hue LightStrip Plus
- Busch Jaeger ZigBee Light Link univ. relai (6711 U) with ZigBee Light Link control element 6735-84 - Busch Jaeger Zigbee Light Link univ. relai (6711 U) with Zigbee Light Link control element 6735-84
- Xiaomi Aqara Smart Led Bulb (white) E27 ZNLDP12LM - Xiaomi Aqara Smart Led Bulb (white) E27 ZNLDP12LM
## Scene ## Scene
@ -484,10 +484,10 @@ The `entity_id` name will be `sensor.device_name`, where `device_name` is define
### deCONZ Daylight Sensor ### deCONZ Daylight Sensor
The deCONZ Daylight sensor is a special sensor built into the deCONZ software since version 2.05.12. It is represented in Home Assistant as a sensor called sensor.daylight. The sensor's state value is a string corresponding to the phase of daylight (descriptions below taken from https://github.com/mourner/suncalc, on which the deCONZ implementation is based): The deCONZ Daylight sensor is a special sensor built into the deCONZ software since version 2.05.12. It is represented in Home Assistant as a sensor called sensor.daylight. The sensor's state value is a string corresponding to the phase of daylight (descriptions below taken from <https://github.com/mourner/suncalc>, on which the deCONZ implementation is based):
| Sensor State | Description | | Sensor State | Description |
|--------------|-------------| | ------------- | ------------------------------------------------------------------------ |
| sunrise_start | sunrise (top edge of the sun appears on the horizon) | | sunrise_start | sunrise (top edge of the sun appears on the horizon) |
| sunrise_end | sunrise ends (bottom edge of the sun touches the horizon) | | sunrise_end | sunrise ends (bottom edge of the sun touches the horizon) |
| golden_hour_1 | morning golden hour (soft light, the best time for photography) | | golden_hour_1 | morning golden hour (soft light, the best time for photography) |

View File

@ -9,19 +9,19 @@ ha_release: 0.38
ha_iot_class: Local Push ha_iot_class: Local Push
--- ---
Integrates MySensors device trackers into Home Assistant. See the [main component] for configuration instructions. Integrates MySensors device trackers into Home Assistant. See the [main integration](/integrations/mysensors/) for configuration instructions.
The following sensor types are supported: The following sensor types are supported:
##### MySensors version 2.0 and higher ## MySensors version 2.0 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
-------------------|--------------------------------------- | ------ | ---------- |
S_GPS | V_POSITION | S_GPS | V_POSITION |
For more information, visit the [serial api] of MySensors. For more information, visit the [serial API](https://www.mysensors.org/download) of MySensors.
### MySensors 2.x example sketch ## MySensors 2.x example sketch
```cpp ```cpp
/** /**
@ -95,6 +95,3 @@ void loop()
} }
} }
``` ```
[main component]: /integrations/mysensors/
[serial api]: https://www.mysensors.org/download

View File

@ -22,7 +22,7 @@ There is currently support for the following device types within Home Assistant:
This is a fully event-based component. Any event sent by the Envisalink device will be immediately reflected within Home Assistant. This is a fully event-based component. Any event sent by the Envisalink device will be immediately reflected within Home Assistant.
As of 0.29, the alarm_trigger service is supported. It is possible to fire off an envisalink-based alarm directly from Home Assistant. For example, a newer zwave/zigbee sensor can now be integrated into a legacy alarm system using a Home Assistant automation. As of 0.29, the alarm_trigger service is supported. It is possible to fire off an envisalink-based alarm directly from Home Assistant. For example, a newer Z-Wave / Zigbee sensor can now be integrated into a legacy alarm system using a Home Assistant automation.
An `envisalink` section must be present in the `configuration.yaml` file and contain the following options as required: An `envisalink` section must be present in the `configuration.yaml` file and contain the following options as required:
@ -136,6 +136,6 @@ The following services are supported by Envisalink and can be used to script or
- **alarm_arm_home**: Arms the alarm in home mode. - **alarm_arm_home**: Arms the alarm in home mode.
- **alarm_arm_away**: Arms the alarm in standard away mode. - **alarm_arm_away**: Arms the alarm in standard away mode.
- **alarm_arm_night**: Arms the alarm in night mode. - **alarm_arm_night**: Arms the alarm in night mode.
- **alarm_trigger**: Trigger an alarm on the Envisalink connected alarm system. For example, a newer zwave/zigbee sensor can now be integrated into a legacy alarm system using a Home Assistant automation. - **alarm_trigger**: Trigger an alarm on the Envisalink connected alarm system. For example, a newer Z-Wave / Zigbee sensor can now be integrated into a legacy alarm system using a Home Assistant automation.
- **alarm_keypress**: Sends a string of up to 6 characters to the alarm. *Works with DSC panels, and confirmed to work with Honeywell Vista-20P (aka First Alert FA-168)* - **alarm_keypress**: Sends a string of up to 6 characters to the alarm. *Works with DSC panels, and confirmed to work with Honeywell Vista-20P (aka First Alert FA-168)*
- **invoke_custom_function**: Invokes a custom PGM function. *DSC alarms only* - **invoke_custom_function**: Invokes a custom PGM function. *DSC alarms only*

View File

@ -12,13 +12,13 @@ The `flic` platform allows you to receive click events from [flic](https://flic.
The platform does not directly interact with the buttons, *but communicates with a flic service* that manages the buttons. The service can run on the same instance as Home Assistant or any other reachable machine. The platform does not directly interact with the buttons, *but communicates with a flic service* that manages the buttons. The service can run on the same instance as Home Assistant or any other reachable machine.
#### Service setup ## Service setup
If you are using Hass.io, you can run the service locally by [installing](/hassio/installing_third_party_addons/) the flicd add-on from [pschmitt's repository](https://github.com/pschmitt/hassio-addons). If you are using Hass.io, you can run the service locally by [installing](/hassio/installing_third_party_addons/) the flicd add-on from [pschmitt's repository](https://github.com/pschmitt/hassio-addons).
For instructions on how to install the service manually, visit the GitHub repository of the service for [Linux](https://github.com/50ButtonsEach/fliclib-linux-hci), [OS X](https://github.com/50ButtonsEach/flic-service-osx) or [Windows](https://github.com/50ButtonsEach/fliclib-windows). For instructions on how to install the service manually, visit the GitHub repository of the service for [Linux](https://github.com/50ButtonsEach/fliclib-linux-hci), [macOS](https://github.com/50ButtonsEach/flic-service-osx) or [Windows](https://github.com/50ButtonsEach/fliclib-windows).
#### Configuration ## Configuration
To use your flic buttons in your installation, add the following to your `configuration.yaml` file: To use your flic buttons in your installation, add the following to your `configuration.yaml` file:
@ -55,15 +55,15 @@ timeout:
default: 3 default: 3
{% endconfiguration %} {% endconfiguration %}
#### Discovery ## Discovery
If discovery is enabled, you can add a new button by pressing it for at least 7 seconds. The button will be paired with the flic service and added to Home Assistant. Otherwise, you have to manually pair it with the flic service. The Home Assistant platform will not scan for new buttons and will only connect to buttons already paired. If discovery is enabled, you can add a new button by pressing it for at least 7 seconds. The button will be paired with the flic service and added to Home Assistant. Otherwise, you have to manually pair it with the flic service. The Home Assistant platform will not scan for new buttons and will only connect to buttons already paired.
#### Timeout ## Timeout
When the flic button is triggered while disconnected from flic service, it will queue all events and try to connect and transmit them as soon as possible. The timeout variable can be used to stop events from triggering if too much time passed between the action and the notification in Home Assistant. When the flic button is triggered while disconnected from flic service, it will queue all events and try to connect and transmit them as soon as possible. The timeout variable can be used to stop events from triggering if too much time passed between the action and the notification in Home Assistant.
#### Events ## Events
The flic integration fires `flic_click` events on the bus. You can capture the events and respond to them in automation scripts like this: The flic integration fires `flic_click` events on the bus. You can capture the events and respond to them in automation scripts like this:
@ -104,6 +104,6 @@ automation:
message: {% raw %}"flic {{ trigger.event.data.button_name }} was {{ trigger.event.data.click_type }} clicked"{% endraw %} message: {% raw %}"flic {{ trigger.event.data.button_name }} was {{ trigger.event.data.click_type }} clicked"{% endraw %}
``` ```
##### Ignoring Click Types ### Ignoring Click Types
For some purposes it might make sense to exclude a specific click type from triggering click events. For example when ignoring double clicks, pressing the button twice fast results in two `single` instead of a `double` click event. This is very useful for applications where you want to click fast. For some purposes it might make sense to exclude a specific click type from triggering click events. For example when ignoring double clicks, pressing the button twice fast results in two `single` instead of a `double` click event. This is very useful for applications where you want to click fast.

View File

@ -30,7 +30,7 @@ push_secret:
type: string type: string
{% endconfiguration %} {% endconfiguration %}
#### Getting the access token #### ## Getting the access token
After you have registered your APP on your [My Apps Page](https://foursquare.com/developers/apps) you get a `CLIENT_ID` and you have specified a After you have registered your APP on your [My Apps Page](https://foursquare.com/developers/apps) you get a `CLIENT_ID` and you have specified a
`REDIRECT_URL` which can be any URL you like, but since it will get your access token via an HTTP GET request, it should be a URL which will ignore the `access_token` HTTP GET variable. A good idea is to choose the URL of your Home Assistant. `REDIRECT_URL` which can be any URL you like, but since it will get your access token via an HTTP GET request, it should be a URL which will ignore the `access_token` HTTP GET variable. A good idea is to choose the URL of your Home Assistant.
@ -71,7 +71,7 @@ Parameters:
- **eventId** (*Optional*): The event the user is checking in to. - **eventId** (*Optional*): The event the user is checking in to.
- **shout** (*Optional*): A message about your check-in. The maximum length of this field is 140 characters. - **shout** (*Optional*): A message about your check-in. The maximum length of this field is 140 characters.
- **mentions** (*Optional*): Mentions in your check-in. This parameter is a semicolon-delimited list of mentions. A single mention is of the form "start,end,userid", where start is the index of the first character in the shout representing the mention, end is the index of the first character in the shout after the mention, and userid is the userid of the user being mentioned. If userid is prefixed with "fbu-", this indicates a Facebook userid that is being mention. Character indices in shouts are 0-based. - **mentions** (*Optional*): Mentions in your check-in. This parameter is a semicolon-delimited list of mentions. A single mention is of the form "start,end,userid", where start is the index of the first character in the shout representing the mention, end is the index of the first character in the shout after the mention, and userid is the userid of the user being mentioned. If userid is prefixed with "fbu-", this indicates a Facebook userid that is being mention. Character indices in shouts are 0-based.
- **broadcast** (*Optional*): "Who to broadcast this check-in to. Accepts a comma-delimited list of values: private (off the grid) or public (share with friends), Facebook share on Facebook, twitter share on twitter, followers share with followers (celebrity mode users only), If no valid value is found, the default is public." - **broadcast** (*Optional*): "Who to broadcast this check-in to. Accepts a comma-delimited list of values: private (off the grid) or public (share with friends), Facebook share on Facebook, Twitter share on twitter, followers share with followers (celebrity mode users only), If no valid value is found, the default is public."
- **ll** (*Optional*): Latitude and longitude of the user's location. Only specify this field if you have a GPS or other device reported location for the user at the time of check-in. - **ll** (*Optional*): Latitude and longitude of the user's location. Only specify this field if you have a GPS or other device reported location for the user at the time of check-in.
- **llAcc** (*Optional*): Accuracy of the user's latitude and longitude, in meters. - **llAcc** (*Optional*): Accuracy of the user's latitude and longitude, in meters.
- **alt** (*Optional*): Altitude of the user's location, in meters. - **alt** (*Optional*): Altitude of the user's location, in meters.

View File

@ -43,6 +43,7 @@ Optional, recommended for large KNX installations (>100 devices) and/or if you w
knx: knx:
config_file: '/path/to/xknx.yaml' config_file: '/path/to/xknx.yaml'
``` ```
{% configuration %} {% configuration %}
config_file: config_file:
description: The path for XKNX configuration file. description: The path for XKNX configuration file.
@ -108,7 +109,7 @@ fire_event:
type: boolean type: boolean
default: false default: false
fire_event_filter: fire_event_filter:
description: If `fire_event` is set `fire_event_filter` has to be specified. `fire_event_filter` defines a list of patterns for filtering KNX addresses. Only telegrams which match this pattern are sent to the HOme Assistant event bus. description: If `fire_event` is set `fire_event_filter` has to be specified. `fire_event_filter` defines a list of patterns for filtering KNX addresses. Only telegrams which match this pattern are sent to the Home Assistant event bus.
required: inclusive required: inclusive
type: [list, string] type: [list, string]
state_updater: state_updater:

View File

@ -9,31 +9,31 @@ ha_release: 0.13
ha_iot_class: Local Push ha_iot_class: Local Push
--- ---
Integrates MySensors lights into Home Assistant. See the [main component] for configuration instructions. Integrates MySensors lights into Home Assistant. See the [main integration](/integrations/mysensors/) for configuration instructions.
The following actuator types are supported: The following actuator types are supported:
##### MySensors version 1.4 ## MySensors version 1.4
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
---------|-------------- | -------- | --------------------- |
S_DIMMER | V_DIMMER\*, V_LIGHT\* | S_DIMMER | V_DIMMER\*, V_LIGHT\* |
##### MySensors version 1.5 and higher ## MySensors version 1.5 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
------------|------------- | ------------ | -------------------------------------------------------------- |
S_DIMMER | [V_DIMMER\* or V_PERCENTAGE\*], [V_LIGHT\* or V_STATUS\*] | S_DIMMER | [V_DIMMER\* or V_PERCENTAGE\*], [V_LIGHT\* or V_STATUS\*] |
S_RGB_LIGHT | V_RGB*, [V_LIGHT\* or V_STATUS\*], [V_DIMMER or V_PERCENTAGE] | S_RGB_LIGHT | V_RGB*, [V_LIGHT\* or V_STATUS\*], [V_DIMMER or V_PERCENTAGE] |
S_RGBW_LIGHT | V_RGBW*, [V_LIGHT\* or V_STATUS\*], [V_DIMMER or V_PERCENTAGE] | S_RGBW_LIGHT | V_RGBW*, [V_LIGHT\* or V_STATUS\*], [V_DIMMER or V_PERCENTAGE] |
V_TYPES with a star (\*) denote V_TYPES that should be sent at sketch startup. For an S_DIMMER, send both a V_DIMMER/V_PERCENTAGE and a V_LIGHT/V_STATUS message. For an S_RGB_LIGHT, send both a V_RGB and a V_LIGHT/V_STATUS message with a V_DIMMER/V_PERCENTAGE message being optional. Same principal applies for S_RGBW_LIGHT and V_RGBW. V_TYPES with a star (\*) denote V_TYPES that should be sent at sketch startup. For an S_DIMMER, send both a V_DIMMER/V_PERCENTAGE and a V_LIGHT/V_STATUS message. For an S_RGB_LIGHT, send both a V_RGB and a V_LIGHT/V_STATUS message with a V_DIMMER/V_PERCENTAGE message being optional. Same principal applies for S_RGBW_LIGHT and V_RGBW.
Sketch should acknowledge a command sent from controller with the same type. If command invokes a change to off state (including a V_PERCENTAGE, V_RGB, or V_RGBW message of zero), only a V_STATUS of zero message should be sent. See sketches below for examples. Sketch should acknowledge a command sent from controller with the same type. If command invokes a change to off state (including a V_PERCENTAGE, V_RGB, or V_RGBW message of zero), only a V_STATUS of zero message should be sent. See sketches below for examples.
For more information, visit the [serial api] of MySensors. For more information, visit the [serial API](https://www.mysensors.org/download) of MySensors.
### MySensors 1.x example sketch ## MySensors 1.x example sketch
```cpp ```cpp
/* /*
@ -108,7 +108,7 @@ void incomingMessage(const MyMessage &message) {
} }
``` ```
### MySensors 2.x example sketch ## MySensors 2.x example sketch
```cpp ```cpp
/* /*
@ -241,6 +241,3 @@ void send_status_message()
} }
} }
``` ```
[main component]: /integrations/mysensors/
[serial api]: https://www.mysensors.org/download

View File

@ -16,9 +16,9 @@ Note: you can assign an `rgbw`, `rgbww`, `white` and `dimmer` group to the same
An archive of the extensive API can be found [here](https://github.com/Fantasmos/LimitlessLED-DevAPI). An archive of the extensive API can be found [here](https://github.com/Fantasmos/LimitlessLED-DevAPI).
### Setup ## Setup
Before configuring Home Assistant, make sure you can control your bulbs or LEDs with the MiLight mobile application. Next, discover your bridge(s) IP address. You can do this via your router or a mobile application like Fing ([android](https://play.google.com/store/apps/details?id=com.overlook.android.fing&hl=en) or [iTunes](https://itunes.apple.com/us/app/fing-network-scanner/id430921107?mt=8)). Before configuring Home Assistant, make sure you can control your bulbs or LEDs with the MiLight mobile application. Next, discover your bridge(s) IP address. You can do this via your router or a mobile application like Fing ([Android](https://play.google.com/store/apps/details?id=com.overlook.android.fing&hl=en) or [iTunes](https://itunes.apple.com/us/app/fing-network-scanner/id430921107?mt=8)).
To add `limitlessled` to your installation, add the following to your `configuration.yaml` file: To add `limitlessled` to your installation, add the following to your `configuration.yaml` file:

View File

@ -24,7 +24,7 @@ Before configuring Home Assistant you need a Bluetooth backend and the MAC addre
- On other Linux systems: - On other Linux systems:
- Preferred solution: Install the `bluepy` library (via pip). When using a virtual environment, make sure to install the library in the right one. - Preferred solution: Install the `bluepy` library (via pip). When using a virtual environment, make sure to install the library in the right one.
 - Fallback solution: Install `gatttool` via your package manager. Depending on the distribution, the package name might be: `bluez`, `bluetooth`, `bluez-deprecated`  - Fallback solution: Install `gatttool` via your package manager. Depending on the distribution, the package name might be: `bluez`, `bluetooth`, `bluez-deprecated`
- On Windows and MacOS there is currently no support for the [miflora library](https://github.com/open-homeautomation/miflora/). - On Windows and macOS there is currently no support for the [miflora library](https://github.com/open-homeautomation/miflora/).
## Scan for devices ## Scan for devices

View File

@ -27,11 +27,10 @@ set api disabled=no port=8728
Web Frontend: Web Frontend:
Go to **IP** -> **Services** -> **api** and enable it. Go to **IP** -> **Services** -> **API** and enable it.
Make sure that port 8728 or the port you choose is accessible from your network. Make sure that port 8728 or the port you choose is accessible from your network.
To use a MikroTik router in your installation, add the following to your `configuration.yaml` file: To use a MikroTik router in your installation, add the following to your `configuration.yaml` file:
```yaml ```yaml
@ -85,7 +84,7 @@ arp_ping:
<div class='note info'> <div class='note info'>
As of version 6.43 of RouterOS Mikrotik introduced a new login method (`plain`) in addition to the old login method (`token`). With Version 6.45.1 the old `token` login method got deprecated. As of version 6.43 of RouterOS Mikrotik introduced a new login method (`plain`) in addition to the old login method (`token`). With Version 6.45.1 the old `token` login method got deprecated.
In order to support both login mechanisms, the new config option `login_method` has been introduced. In order to support both login mechanisms, the new configuration option `login_method` has been introduced.
</div> </div>
@ -118,7 +117,7 @@ To use this device tracker you need restricted privileges only. To enhance the s
/user set password="YOUR_PASSWORD" homeassistant /user set password="YOUR_PASSWORD" homeassistant
``` ```
## Using the additional configuration to the `mikrotik` entry in your `configuration.yaml` file: ## Using the additional configuration to the `mikrotik` entry in your `configuration.yaml` file
```yaml ```yaml
mikrotik: mikrotik:

View File

@ -19,7 +19,7 @@ Depending on the operating system you're running, you have to configure the prop
- On other Linux systems: - On other Linux systems:
- Preferred solution: Install the `bluepy` and `btlewrap` library (via pip). When using a virtual environment, make sure to use install the library in the right one. - Preferred solution: Install the `bluepy` and `btlewrap` library (via pip). When using a virtual environment, make sure to use install the library in the right one.
- Fallback solution: Install `btlewrap` library (via pip) and `gatttool` via your package manager. Depending on the distribution, the package name might be: `bluez`, `bluetooth` or `bluez-deprecated`. - Fallback solution: Install `btlewrap` library (via pip) and `gatttool` via your package manager. Depending on the distribution, the package name might be: `bluez`, `bluetooth` or `bluez-deprecated`.
- Windows and MacOS are currently not supported by the `btlewrap` library. - Windows and macOS are currently not supported by the `btlewrap` library.
## Configuration ## Configuration

View File

@ -12,7 +12,7 @@ ha_codeowners:
The [MySensors](https://www.mysensors.org) project combines devices like Arduino, ESP8266, Raspberry Pi, NRF24L01+ and RFM69 to build affordable sensor networks. This integration 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. The [MySensors](https://www.mysensors.org) project combines devices like Arduino, ESP8266, Raspberry Pi, NRF24L01+ and RFM69 to build affordable sensor networks. This integration 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.
### Configuration ## Configuration
Integrate your Serial, Ethernet (LAN) or MQTT 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:
@ -96,7 +96,7 @@ Not all features of MySensors 2.x are supported by Home Assistant yet. As more f
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.
```bash ```bash
$ ls /dev/ttyACM* ls /dev/ttyACM*
``` ```
If you are using the MQTT gateway, you also need to have the [MQTT component](/integrations/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](/integrations/mqtt/) configured in Home Assistant. See below for a minimum MQTT configuration:
@ -249,7 +249,8 @@ Message validation was introduced in version 0.52 of Home Assistant.
### Debug logging ### Debug logging
If you experience dropped messages or that a device is not added to Home Assistant, please turn on debug logging for the `mysensors` integration and the `mysensors` package. This will help you see what is going on. Make sure you use these logging settings to collect a log sample if you report an issue about the `mysensors` integration in our github issue tracker. If you experience dropped messages or that a device is not added to Home Assistant, please turn on debug logging for the `mysensors` integration and the `mysensors` package. This will help you see what is going on. Make sure you use these logging settings to collect a log sample if you report an issue about the `mysensors` integration in our GitHub issue tracker.
```yaml ```yaml
logger: logger:
default: info default: info
@ -258,7 +259,6 @@ logger:
mysensors: debug mysensors: debug
``` ```
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]: https://www.mysensors.org/download [MySensors library API]: https://www.mysensors.org/download

View File

@ -9,11 +9,11 @@ ha_release: 0.36
ha_iot_class: Local Push ha_iot_class: Local Push
--- ---
Integrates MySensors notifications into Home Assistant. See the [main component] for configuration instructions. Integrates MySensors notifications into Home Assistant. See the [main integration](/integrations/mysensors/) for configuration instructions.
Setting the `target` key in the service call will target the name of the MySensors device in Home Assistant. MySensors device names follow the notation: "[Sketch name] [Node id] [Child id]". Setting the `target` key in the service call will target the name of the MySensors device in Home Assistant. MySensors device names follow the notation: "[Sketch name] [Node id] [Child id]".
### Automation example ## Automation example
```yaml ```yaml
... ...
@ -28,11 +28,11 @@ The following sensor types are supported:
##### MySensors version 2.0 and higher ##### MySensors version 2.0 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
----------------|-------------------------- | ------ | ------ |
S_INFO | V_TEXT | S_INFO | V_TEXT |
For more information, visit the [api] page of MySensors. For more information, visit the [API](https://www.mysensors.org/download/) page of MySensors.
### Example sketch ### Example sketch
@ -91,6 +91,3 @@ For more information, visit the [api] page of MySensors.
} }
} }
``` ```
[main component]: /integrations/mysensors/
[api]: https://www.mysensors.org/download/

View File

@ -30,7 +30,7 @@ image_processing:
- **source** array (*Required*): List of image sources. - **source** array (*Required*): List of image sources.
- **entity_id** (*Required*): A camera entity id to get picture from. - **entity_id** (*Required*): A camera entity id to get picture from.
- **name** (*Optional*): This parameter allows you to override the name of your `image_processing` entity. - **name** (*Optional*): This parameter allows you to override the name of your `image_processing` entity.
- **classifier** (*Optional*): Dictionary of name to path to the classifier xml file. If this field is not provided, a face classifier will be downloaded from OpenCV's Github repo. - **classifier** (*Optional*): Dictionary of name to path to the classifier xml file. If this field is not provided, a face classifier will be downloaded from OpenCV's GitHub repo.
**classifier** may also be defined as a dictionary of names to classifier configurations: **classifier** may also be defined as a dictionary of names to classifier configurations:

View File

@ -90,7 +90,7 @@ data:
When the Home Assistant Roku integration is enabled and has found a Roku device, in the Home Assistant GUI the Roku media player will show a listing of the installed channels, or apps, under “source”. Select one and it will attempt to launch the channel on your Roku device. This action can also be automated, but it requires you to acquire an extra piece of information; the ```appID``` for the channel specific to your Roku. Although this information is gathered by the Roku integration, at the moment it is not exposed to the end user. This item might be added in a future release. For now though, you can easily get the information yourself. All you need to do is a simple GET API call on the same network as your device. When the Home Assistant Roku integration is enabled and has found a Roku device, in the Home Assistant GUI the Roku media player will show a listing of the installed channels, or apps, under “source”. Select one and it will attempt to launch the channel on your Roku device. This action can also be automated, but it requires you to acquire an extra piece of information; the ```appID``` for the channel specific to your Roku. Although this information is gathered by the Roku integration, at the moment it is not exposed to the end user. This item might be added in a future release. For now though, you can easily get the information yourself. All you need to do is a simple GET API call on the same network as your device.
The api calls are like this: The API calls are like this:
```txt ```txt
GET http:// ROKU_IP:8060/query/apps GET http:// ROKU_IP:8060/query/apps
@ -102,7 +102,7 @@ POST http://YOUR_ROKU_IP:8060/launch/837?contentID=YOUR_YOUTUBE_VIDEOS_CONTENT_I
More details can be found on the [Roku dev pages](https://developer.roku.com/docs/developer-program/discovery/external-control-api.md) More details can be found on the [Roku dev pages](https://developer.roku.com/docs/developer-program/discovery/external-control-api.md)
To use this in Home Assistant, for instance in an automation, the format is as follows. Note that ```source: ``` is the appID you discovered in the API call: To use this in Home Assistant, for instance in an automation, the format is as follows. Note that `source:` is the appID you discovered in the API call:
```yaml ```yaml
action: action:

View File

@ -17,7 +17,7 @@ The `rpi_gpio` integration is the base for all related GPIO platforms in Home As
The `rpi_gpio` binary sensor platform allows you to read sensor values of the GPIOs of your [Raspberry Pi](https://www.raspberrypi.org/). The `rpi_gpio` binary sensor platform allows you to read sensor values of the GPIOs of your [Raspberry Pi](https://www.raspberrypi.org/).
## Configuration ### Configuration
To use your Raspberry Pi's GPIO in your installation, add the following to your `configuration.yaml` file: To use your Raspberry Pi's GPIO in your installation, add the following to your `configuration.yaml` file:
@ -72,7 +72,7 @@ It uses two pins on the Raspberry Pi.
Although you do not need Andrews Hilliday's software controller when you run Home Assistant, he has written clear instructions on how to hook your garage door and sensors up to your Raspberry Pi, which can be found [here](https://github.com/andrewshilliday/garage-door-controller#hardware-setup). Although you do not need Andrews Hilliday's software controller when you run Home Assistant, he has written clear instructions on how to hook your garage door and sensors up to your Raspberry Pi, which can be found [here](https://github.com/andrewshilliday/garage-door-controller#hardware-setup).
## Configuration ### Configuration
To enable Raspberry Pi Covers in your installation, add the following to your `configuration.yaml` file: To enable Raspberry Pi Covers in your installation, add the following to your `configuration.yaml` file:
@ -145,13 +145,13 @@ cover:
## Remote Raspberry Pi Cover ## Remote Raspberry Pi Cover
If you don't have Home Assistant running on your Raspberry Pi and you want to use it as a remote cover instead, there is a project called [GarageQTPi](https://github.com/Jerrkawz/GarageQTPi) that will work remotely with the [MQTT Cover Component](/integrations/cover.mqtt/). Follow the Github instructions to install and configure GarageQTPi and once configured follow the Home Assistant instructions to configure the MQTT Cover. If you don't have Home Assistant running on your Raspberry Pi and you want to use it as a remote cover instead, there is a project called [GarageQTPi](https://github.com/Jerrkawz/GarageQTPi) that will work remotely with the [MQTT Cover Component](/integrations/cover.mqtt/). Follow the GitHub instructions to install and configure GarageQTPi and once configured follow the Home Assistant instructions to configure the MQTT Cover.
## Switch ## Switch
The `rpi_gpio` switch platform allows you to control the GPIOs of your [Raspberry Pi](https://www.raspberrypi.org/). The `rpi_gpio` switch platform allows you to control the GPIOs of your [Raspberry Pi](https://www.raspberrypi.org/).
## Configuration ### Configuration
To use your Raspberry Pi's GPIO in your installation, add the following to your `configuration.yaml` file: To use your Raspberry Pi's GPIO in your installation, add the following to your `configuration.yaml` file:

View File

@ -142,6 +142,7 @@ For example: for model `UN55NU7100`, the `UN55` would mean it's an LED, North Am
- MU6125 - Unable to see state and unable to control (Tested on UE58MU6125 on port 8001 and 8801) - MU6125 - Unable to see state and unable to control (Tested on UE58MU6125 on port 8001 and 8801)
- MU6300 - Port set to 8001, turning on works, status not working reliably, turning off is not permanent (it comes back on) - MU6300 - Port set to 8001, turning on works, status not working reliably, turning off is not permanent (it comes back on)
- MU6400 - Unable to see state and unable to control (using latest 1270 firmware. Had limited functionality on previous firmware) - MU6400 - Unable to see state and unable to control (using latest 1270 firmware. Had limited functionality on previous firmware)
- RU8000 - Turning on works, turning off does not work. State is correct but says on periodically but in reality is not. Nothing else works via port 8001.
- Q60 Turning on works, turning off does not work, State is always "off". - Q60 Turning on works, turning off does not work, State is always "off".
- Q6F Port set to 8001, turning on works, turning off does not work, status not working reliably. - Q6F Port set to 8001, turning on works, turning off does not work, status not working reliably.
- Q7F - State is always "off" and unable to control via port 8001. - Q7F - State is always "off" and unable to control via port 8001.

View File

@ -23,7 +23,7 @@ climate:
{% configuration %} {% configuration %}
api_key: api_key:
description: Your Sensibo API key (To get your API key visit <https://home.sensibo.com/me/api>). description: Your Sensibo API key (To get your API key visit `https://home.sensibo.com/me/api`).
required: true required: true
type: string type: string
id: id:
@ -38,7 +38,8 @@ then in the Sensibo app log you will be able to distinguish between actions
done in the app and actions done by Home Assistant. done in the app and actions done by Home Assistant.
</div> </div>
### Full config example ## Full config example
```yaml ```yaml
climate: climate:
- platform: sensibo - platform: sensibo
@ -48,11 +49,12 @@ climate:
- id2 - id2
``` ```
### Adding a quick switch example ## Adding a quick switch example
If you want a "Quick Switch" to turn your AC On / Off, you can do that using the following `Switch Template`: If you want a "Quick Switch" to turn your AC On / Off, you can do that using the following `Switch Template`:
{% raw %} {% raw %}
```yaml ```yaml
switch: switch:
- platform: template - platform: template
@ -71,4 +73,5 @@ switch:
entity_id: climate.ac entity_id: climate.ac
hvac_mode: off hvac_mode: off
``` ```
{% endraw %} {% endraw %}

View File

@ -9,7 +9,7 @@ ha_iot_class: Local Push
ha_release: 0.7 ha_release: 0.7
--- ---
Integrates MySensors sensors into Home Assistant. See the [main component] for configuration instructions. Integrates MySensors sensors into Home Assistant. See the [main integration](/integrations/mysensors/) for configuration instructions.
## Supported sensor types ## Supported sensor types
@ -17,46 +17,46 @@ The following sensor types are supported:
### MySensors version 1.4 and higher ### MySensors version 1.4 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
-------------------|--------------------------------------- | ------------------ | -------------------------------------- |
S_TEMP | V_TEMP | S_TEMP | V_TEMP |
S_HUM | V_HUM | S_HUM | V_HUM |
S_BARO | V_PRESSURE, V_FORECAST | S_BARO | V_PRESSURE, V_FORECAST |
S_WIND | V_WIND, V_GUST, V_DIRECTION | S_WIND | V_WIND, V_GUST, V_DIRECTION |
S_RAIN | V_RAIN, V_RAINRATE | S_RAIN | V_RAIN, V_RAINRATE |
S_UV | V_UV | S_UV | V_UV |
S_WEIGHT | V_WEIGHT, V_IMPEDANCE | S_WEIGHT | V_WEIGHT, V_IMPEDANCE |
S_POWER | V_WATT, V_KWH | S_POWER | V_WATT, V_KWH |
S_DISTANCE | V_DISTANCE | S_DISTANCE | V_DISTANCE |
S_LIGHT_LEVEL | V_LIGHT_LEVEL | S_LIGHT_LEVEL | V_LIGHT_LEVEL |
S_IR | V_IR_RECEIVE | S_IR | V_IR_RECEIVE |
S_WATER | V_FLOW, V_VOLUME | S_WATER | V_FLOW, V_VOLUME |
S_AIR_QUALITY | V_DUST_LEVEL | S_AIR_QUALITY | V_DUST_LEVEL |
S_CUSTOM | V_VAR1, V_VAR2, V_VAR3, V_VAR4, V_VAR5 | S_CUSTOM | V_VAR1, V_VAR2, V_VAR3, V_VAR4, V_VAR5 |
S_DUST | V_DUST_LEVEL | S_DUST | V_DUST_LEVEL |
S_SCENE_CONTROLLER | V_SCENE_ON, V_SCENE_OFF | S_SCENE_CONTROLLER | V_SCENE_ON, V_SCENE_OFF |
### MySensors version 1.5 and higher ### MySensors version 1.5 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
---------------|---------------------------------- | -------------- | --------------------------------- |
S_COLOR_SENSOR | V_RGB | S_COLOR_SENSOR | V_RGB |
S_MULTIMETER | V_VOLTAGE, V_CURRENT, V_IMPEDANCE | S_MULTIMETER | V_VOLTAGE, V_CURRENT, V_IMPEDANCE |
S_SOUND | V_LEVEL | S_SOUND | V_LEVEL |
S_VIBRATION | V_LEVEL | S_VIBRATION | V_LEVEL |
S_MOISTURE | V_LEVEL | S_MOISTURE | V_LEVEL |
S_LIGHT_LEVEL | V_LEVEL | S_LIGHT_LEVEL | V_LEVEL |
S_AIR_QUALITY | V_LEVEL (replaces V_DUST_LEVEL) | S_AIR_QUALITY | V_LEVEL (replaces V_DUST_LEVEL) |
S_DUST | V_LEVEL (replaces V_DUST_LEVEL) | S_DUST | V_LEVEL (replaces V_DUST_LEVEL) |
### MySensors version 2.0 and higher ### MySensors version 2.0 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
----------------|-------------------------- | --------------- | ------------------------- |
S_INFO | V_TEXT | S_INFO | V_TEXT |
S_GAS | V_FLOW, V_VOLUME | S_GAS | V_FLOW, V_VOLUME |
S_GPS | V_POSITION | S_GPS | V_POSITION |
S_WATER_QUALITY | V_TEMP, V_PH, V_ORP, V_EC | S_WATER_QUALITY | V_TEMP, V_PH, V_ORP, V_EC |
## Custom unit of measurement ## Custom unit of measurement
@ -64,7 +64,7 @@ Some sensor value types are not specific for a certain sensor type. These do not
By using V_UNIT_PREFIX, it's possible to set a custom unit for any sensor. The string value that is sent for V_UNIT_PREFIX will be used in preference to any other unit of measurement, for the defined sensors. V_UNIT_PREFIX can't be used as a stand-alone sensor value type. Sending a supported value type and value from the tables above is also required. V_UNIT_PREFIX is available with MySensors version 1.5 and later. By using V_UNIT_PREFIX, it's possible to set a custom unit for any sensor. The string value that is sent for V_UNIT_PREFIX will be used in preference to any other unit of measurement, for the defined sensors. V_UNIT_PREFIX can't be used as a stand-alone sensor value type. Sending a supported value type and value from the tables above is also required. V_UNIT_PREFIX is available with MySensors version 1.5 and later.
For more information, visit the [serial api] of MySensors. For more information, visit the [serial API](https://www.mysensors.org/download) of MySensors.
## Example sketches ## Example sketches
@ -179,6 +179,3 @@ void receive(const MyMessage &message) {
} }
} }
``` ```
[main component]: /integrations/mysensors/
[serial api]: https://www.mysensors.org/download

View File

@ -43,8 +43,9 @@ environment:
### Getting the DSN ### Getting the DSN
Follow these steps to get the DSN: Follow these steps to get the DSN:
- Go to **Projects**. - Go to **Projects**.
- Click **Create project**. - Click **Create project**.
- Fill out **Give your project a name** and **choose Assign a Team** fields and click Create project button. - Fill out **Give your project a name** and **choose Assign a Team** fields and click Create project button.
- Click **Get your DSN** link in top of the page. - Click **Get your DSN** link in top of the page.
- Your DSN is now visable and looks like https://sdasdasdasdsadsadas@sentry.io/sdsdfsdf - Your DSN is now visible and looks like <https://sdasdasdasdsadsadas@sentry.io/sdsdfsdf>

View File

@ -108,13 +108,13 @@ The integration will trigger an event when a device with the [button](https://sm
} }
``` ```
| Attribute | Description | Attribute | Description |
|---------------------------|------------------------------------------------------------------| | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
`component_id` | Describes which integration of the device triggered the event. `main` represents the parent device. For devices with child-devices, this attribute identifies the child that raised the event. | `component_id` | Describes which integration of the device triggered the event. `main` represents the parent device. For devices with child-devices, this attribute identifies the child that raised the event. |
`device_id` | The unique id of the device in SmartThings. This can be located in the Home Assistant device registry or in the [SmartThings Developer Workspace](https://smartthings.developer.samsung.com/workspace/). | `device_id` | The unique id of the device in SmartThings. This can be located in the Home Assistant device registry or in the [SmartThings Developer Workspace](https://smartthings.developer.samsung.com/workspace/). |
`location_id` | The unique id of the location the device is part of. This can be found in the config entry registry or in the [SmartThings Developer Workspace](https://smartthings.developer.samsung.com/workspace/). | `location_id` | The unique id of the location the device is part of. This can be found in the config entry registry or in the [SmartThings Developer Workspace](https://smartthings.developer.samsung.com/workspace/). |
`value` | Describes the action taken on the button. See the [button](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Button) capability reference for a list of possible values (not all are supported by every device). | `value` | Describes the action taken on the button. See the [button](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Button) capability reference for a list of possible values (not all are supported by every device). |
`name` | The name given to the device in SmartThings. | `name` | The name given to the device in SmartThings. |
Event data payloads are logged at the debug level, see [debugging](#debugging) for more information. Event data payloads are logged at the debug level, see [debugging](#debugging) for more information.
@ -138,16 +138,16 @@ Support for additional platforms will be added in the future.
The SmartThings Binary Sensor platform lets you view devices that have binary sensor-related capabilities. A Binary Sensor entity will be created for each attribute (below) supported by the device. The SmartThings Binary Sensor platform lets you view devices that have binary sensor-related capabilities. A Binary Sensor entity will be created for each attribute (below) supported by the device.
| Capability |Attribute |On-Value | Capability | Attribute | On-Value |
|-------------------|--------------|----------------| | ----------------------------------------------------------------------------------------------------------------------- | -------------- | ---------- |
| [`accelerationSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Acceleration-Sensor) | `acceleration` | `active` | [`accelerationSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Acceleration-Sensor) | `acceleration` | `active` |
| [`contactSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Contact-Sensor) | `contact` | `open` | [`contactSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Contact-Sensor) | `contact` | `open` |
| [`filterStatus`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Filter-Status) | `filterStatus` | `replace` | [`filterStatus`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Filter-Status) | `filterStatus` | `replace` |
| [`motionSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Motion-Sensor) | `motion` | `active` | [`motionSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Motion-Sensor) | `motion` | `active` |
| [`presenceSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Presence-Sensor) | `presence` | `present` | [`presenceSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Presence-Sensor) | `presence` | `present` |
| [`tamperAlert`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Tamper-Alert) | `tamper` | `detected` | [`tamperAlert`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Tamper-Alert) | `tamper` | `detected` |
| [`valve`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Valve) | `valve` | `open` | [`valve`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Valve) | `valve` | `open` |
| [`waterSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Water-Sensor) | `water` | `wet` | [`waterSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Water-Sensor) | `water` | `wet` |
### Climate ### Climate
@ -157,59 +157,59 @@ The SmartThings Climate platform lets you control devices that have air conditio
For a SmartThings Air Conditioner to be represented by the climate platform, it must have all of the following required capabilities: For a SmartThings Air Conditioner to be represented by the climate platform, it must have all of the following required capabilities:
| Capability |Climate Features | Capability | Climate Features |
|-------------------------------------|--------------------------------------------| | ------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [`airConditionerMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Air-Conditioner-Mode) (required) | `hvac mode`, `hvac action` | [`airConditionerMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Air-Conditioner-Mode) (required) | `hvac mode`, `hvac action` |
| `airConditionerFanMode` (required) | `fan mode` | `airConditionerFanMode` (required) | `fan mode` |
| [`temperatureMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Temperature-Measurement) (required) | `temperature` | [`temperatureMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Temperature-Measurement) (required) | `temperature` |
| [`thermostatCoolingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Cooling-Setpoint) (required) | `target temp` | [`thermostatCoolingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Cooling-Setpoint) (required) | `target temp` |
| [`demandResponseLoadControl`](https://docs.smartthings.com/en/latest/capabilities-reference.html#demand-response-load-control) | `drlc_status_duration` (state attribute), `drlc_status_level` (state attribute), `drlc_status_override` (state attribute), `drlc_status_start` (state attribute) | [`demandResponseLoadControl`](https://docs.smartthings.com/en/latest/capabilities-reference.html#demand-response-load-control) | `drlc_status_duration` (state attribute), `drlc_status_level` (state attribute), `drlc_status_override` (state attribute), `drlc_status_start` (state attribute) |
| [`powerConsumptionReport`](https://docs.smartthings.com/en/latest/capabilities-reference.html#power-consumption-report) | `power_consumption_end` (state attribute), `power_consumption_energy` (state attribute), `power_consumption_power` (state attribute), `power_consumption_start` (state attribute) | [`powerConsumptionReport`](https://docs.smartthings.com/en/latest/capabilities-reference.html#power-consumption-report) | `power_consumption_end` (state attribute), `power_consumption_energy` (state attribute), `power_consumption_power` (state attribute), `power_consumption_start` (state attribute) |
#### Thermostats #### Thermostats
For a SmartThings thermostat to be represented by the climate platform, it must have all the capabilities from either "set a" _or_ "set b": For a SmartThings thermostat to be represented by the climate platform, it must have all the capabilities from either "set a" _or_ "set b":
| Capability |Climate Features | Capability | Climate Features |
|-------------------------------------|--------------------------------------------| | ---------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- |
| [`thermostat`](https://docs.smartthings.com/en/latest/capabilities-reference.html#thermostat) (set a) | `hvac mode`, `hvac action`, `target temp high`, `target temp low` and `fan mode` | [`thermostat`](https://docs.smartthings.com/en/latest/capabilities-reference.html#thermostat) (set a) | `hvac mode`, `hvac action`, `target temp high`, `target temp low` and `fan mode` |
| [`thermostatMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Mode) (set b) | `hvac mode` | [`thermostatMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Mode) (set b) | `hvac mode` |
| [`thermostatCoolingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Cooling-Setpoint) (seb b) | `target temp low` | [`thermostatCoolingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Cooling-Setpoint) (seb b) | `target temp low` |
| [`thermostatHeatingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Heating-Setpoint) (set b) | `target temp high` | [`thermostatHeatingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Heating-Setpoint) (set b) | `target temp high` |
| [`temperatureMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Temperature-Measurement) (set b) | | [`temperatureMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Temperature-Measurement) (set b) |
| [`thermostatOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Operating-State) | `hvac action` | [`thermostatOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Operating-State) | `hvac action` |
| [`thermostatFanMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Fan-Mode) | `fan mode` | [`thermostatFanMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Fan-Mode) | `fan mode` |
| [`relativeHumidityMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Relative-Humidity-Measurement) | `humidity` (state attribute) | [`relativeHumidityMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Relative-Humidity-Measurement) | `humidity` (state attribute) |
### Cover ### Cover
The SmartThings Cover platform lets you control devices that have open/close related capabilities. For a device to be represented by the cover platform, it must have one of the capabilities from "set a" below. The SmartThings Cover platform lets you control devices that have open/close related capabilities. For a device to be represented by the cover platform, it must have one of the capabilities from "set a" below.
| Capability |Cover Features | Capability | Cover Features |
|-------------------------------------|--------------------------------------------| | ------------------------------------------------------------------------------------------------------------------------------ | --------------------------------- |
| [`doorControl`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Door-Control) (set a) | `open` and `close` | [`doorControl`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Door-Control) (set a) | `open` and `close` |
| [`garageDoorControl`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Garage-Door-Control) (seb a) | `open` and `close` | [`garageDoorControl`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Garage-Door-Control) (seb a) | `open` and `close` |
| [`windowShade`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Window-Shade) (set a) | `open` and `close` | [`windowShade`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Window-Shade) (set a) | `open` and `close` |
| [`switchLevel`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Switch-Level) | `position` | [`switchLevel`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Switch-Level) | `position` |
| [`battery`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Battery) | `battery_level` (state attribute) | [`battery`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Battery) | `battery_level` (state attribute) |
### Fan ### Fan
The SmartThings Fan platform lets you control devices that have fan-related capabilities. For a SmartThings device to be represented by the fan platform, it must have one or more of the capabilities below in addition to the [`switch`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Switch) capability. The SmartThings Fan platform lets you control devices that have fan-related capabilities. For a SmartThings device to be represented by the fan platform, it must have one or more of the capabilities below in addition to the [`switch`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Switch) capability.
| Capability |Fan Features | Capability | Fan Features |
|-------------------|------------------------------------------------------------| | --------------------------------------------------------------------------------------------------- | -------------------------------------------- |
| [`fanSpeed`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Fan-Speed) | `speed` (`off`, `low`, `medium`, and `high`) | [`fanSpeed`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Fan-Speed) | `speed` (`off`, `low`, `medium`, and `high`) |
### Light ### Light
The SmartThings Light platform lets you control devices that have light-related capabilities. For a SmartThings device to be represented by the light platform, it must have one or more of the capabilities below in addition to the [`switch`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Switch) capability. The SmartThings Light platform lets you control devices that have light-related capabilities. For a SmartThings device to be represented by the light platform, it must have one or more of the capabilities below in addition to the [`switch`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Switch) capability.
| Capability |Light Features | Capability | Light Features |
|-------------------|------------------------------------------------------------| | ------------------------------------------------------------------------------------------------------------------- | ----------------------------- |
| [`switchLevel`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Switch-Level) | `brightness` and `transition` | [`switchLevel`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Switch-Level) | `brightness` and `transition` |
| [`colorControl`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Color-Control) | `color` | [`colorControl`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Color-Control) | `color` |
| [`colorTemperature`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Color-Temperature) | `color_temp` | [`colorTemperature`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Color-Temperature) | `color_temp` |
### Lock ### Lock
@ -220,59 +220,59 @@ The SmartThings Lock platform lets you control devices that have the [`lock`](ht
The SmartThings Sensor platform lets your view devices that have sensor-related capabilities. A Sensor entity is created for each attribute (below) supported by the device. The SmartThings Sensor platform lets your view devices that have sensor-related capabilities. A Sensor entity is created for each attribute (below) supported by the device.
| Capability | Attributes | | Capability | Attributes |
|-------------------|---------------| | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------- |
| [`activityLightingMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Activity-Lighting-Mode) | `lightingMode` | [`activityLightingMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Activity-Lighting-Mode) | `lightingMode` |
| [`airConditionerMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Air-Conditioner-Mode) | `airConditionerMode` | [`airConditionerMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Air-Conditioner-Mode) | `airConditionerMode` |
| [`airQualitySensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Air-Quality-Sensory) | `airQuality` | [`airQualitySensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Air-Quality-Sensory) | `airQuality` |
| [`alarm`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Alarm) | `alarm` | [`alarm`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Alarm) | `alarm` |
| [`audioVolume`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Audio-Volume) | `volume` | [`audioVolume`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Audio-Volume) | `volume` |
| [`battery`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Battery) | `battery` | [`battery`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Battery) | `battery` |
| [`bodyMassIndexMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Body-Mass-Index-Measurement) | `bmiMeasurement` | [`bodyMassIndexMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Body-Mass-Index-Measurement) | `bmiMeasurement` |
| [`bodyWeightMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Body-Weight-Measurement) | `bodyWeightMeasurement` | [`bodyWeightMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Body-Weight-Measurement) | `bodyWeightMeasurement` |
| [`carbonDioxideMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Carbon-Dioxide-Measurement) | `carbonDioxide` | [`carbonDioxideMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Carbon-Dioxide-Measurement) | `carbonDioxide` |
| [`carbonMonoxideDetector`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Carbon-Monoxide-Detector) | `carbonMonoxide` | [`carbonMonoxideDetector`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Carbon-Monoxide-Detector) | `carbonMonoxide` |
| [`carbonMonoxideMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Carbon-Monoxide-Measurement) | `carbonMonoxideLevel` | [`carbonMonoxideMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Carbon-Monoxide-Measurement) | `carbonMonoxideLevel` |
| [`dishwasherOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Dishwasher-Operating-State) | `machineState`, `dishwasherJobState` and `completionTime` | [`dishwasherOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Dishwasher-Operating-State) | `machineState`, `dishwasherJobState` and `completionTime` |
| [`dryerMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Dryer-Mode) | `dryerMode` | [`dryerMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Dryer-Mode) | `dryerMode` |
| [`dryerOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Dryer-Operating-State) | `machineState`, `dryerJobState` and `completionTime` | [`dryerOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Dryer-Operating-State) | `machineState`, `dryerJobState` and `completionTime` |
| [`dustSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Dust-Sensor) | `fineDustLevel` and `dustLevel` | [`dustSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Dust-Sensor) | `fineDustLevel` and `dustLevel` |
| [`energyMeter`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Energy-Meter) | `energy` | [`energyMeter`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Energy-Meter) | `energy` |
| [`equivalentCarbonDioxideMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Equivalent-Carbon-Dioxide-Measurement) | `equivalentCarbonDioxideMeasurement` | [`equivalentCarbonDioxideMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Equivalent-Carbon-Dioxide-Measurement) | `equivalentCarbonDioxideMeasurement` |
| [`formaldehydeMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Formaldehyde-Measurement) | `formaldehydeLevel` | [`formaldehydeMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Formaldehyde-Measurement) | `formaldehydeLevel` |
| [`illuminanceMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Illuminance-Measurement) | `illuminance` | [`illuminanceMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Illuminance-Measurement) | `illuminance` |
| [`infraredLevel`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Infrared-Level) | `infraredLevel` | [`infraredLevel`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Infrared-Level) | `infraredLevel` |
| [`lock`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Lock) | `lock` | [`lock`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Lock) | `lock` |
| [`mediaInputSource`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Media-Input-Source) | `inputSource` | [`mediaInputSource`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Media-Input-Source) | `inputSource` |
| [`mediaPlaybackRepeat`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Media-Playback-Repeat) | `playbackRepeatMode` | [`mediaPlaybackRepeat`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Media-Playback-Repeat) | `playbackRepeatMode` |
| [`mediaPlaybackShuffle`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Media-Playback-Shuffle) | `playbackShuffle` | [`mediaPlaybackShuffle`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Media-Playback-Shuffle) | `playbackShuffle` |
| [`mediaPlayback`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Media-Playback) | `playbackStatus` | [`mediaPlayback`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Media-Playback) | `playbackStatus` |
| [`odorSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Odor-Sensor) | `odorLevel` | [`odorSensor`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Odor-Sensor) | `odorLevel` |
| [`ovenMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Oven-Mode) | `ovenMode` | [`ovenMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Oven-Mode) | `ovenMode` |
| [`ovenOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Oven-Operating-State) | `machineState`, `ovenJobState` and `completionTime` | [`ovenOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Oven-Operating-State) | `machineState`, `ovenJobState` and `completionTime` |
| [`ovenSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Oven-Setpoint) | `ovenSetpoint` | [`ovenSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Oven-Setpoint) | `ovenSetpoint` |
| [`powerMeter`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Power-Meter) | `power` | [`powerMeter`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Power-Meter) | `power` |
| [`powerSource`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Power-Source) | `powerSource` | [`powerSource`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Power-Source) | `powerSource` |
| [`refrigerationSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Refrigeration-Setpoint) | `refrigerationSetpoint` | [`refrigerationSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Refrigeration-Setpoint) | `refrigerationSetpoint` |
| [`relativeHumidityMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Relative-Humidity-Measurement) | `humidity` | [`relativeHumidityMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Relative-Humidity-Measurement) | `humidity` |
| [`robotCleanerCleaningMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Robot-Cleaner-CleaningMode) | `robotCleanerCleaningMode` | [`robotCleanerCleaningMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Robot-Cleaner-CleaningMode) | `robotCleanerCleaningMode` |
| [`robotCleanerMovement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Robot-Cleaner-Movement) | `robotCleanerMovement` | [`robotCleanerMovement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Robot-Cleaner-Movement) | `robotCleanerMovement` |
| [`robotCleanerTurboMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Robot-Cleaner-Turbo-Mode) | `robotCleanerTurboMode` | [`robotCleanerTurboMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Robot-Cleaner-Turbo-Mode) | `robotCleanerTurboMode` |
| [`signalStrength`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Signal-Strength) | `lqi` and `rssi` | [`signalStrength`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Signal-Strength) | `lqi` and `rssi` |
| [`smokeDetector`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Smoke-Detector) | `smoke` | [`smokeDetector`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Smoke-Detector) | `smoke` |
| [`temperatureMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Temperature-Measurement) | `temperature` | [`temperatureMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Temperature-Measurement) | `temperature` |
| [`thermostatCoolingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Cooling-Setpoint) | `coolingSetpoint` | [`thermostatCoolingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Cooling-Setpoint) | `coolingSetpoint` |
| [`thermostatFanMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Fan-Mode) | `thermostatFanMode` | [`thermostatFanMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Fan-Mode) | `thermostatFanMode` |
| [`thermostatHeatingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Heating-Setpoint) | `heatingSetpoint` | [`thermostatHeatingSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Heating-Setpoint) | `heatingSetpoint` |
| [`thermostatMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Mode) | `thermostatMode` | [`thermostatMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Mode) | `thermostatMode` |
| [`thermostatOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Operating-State) | `thermostatOperatingState` | [`thermostatOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Operating-State) | `thermostatOperatingState` |
| [`thermostatSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Setpoint) | `thermostatSetpoint` | [`thermostatSetpoint`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Thermostat-Setpoint) | `thermostatSetpoint` |
| [`threeAxis`](https://docs.smartthings.com/en/latest/capabilities-reference.html#three-axis) | `threeAxis` (as discrete sensors `X`, `Y` and `Z`) | [`threeAxis`](https://docs.smartthings.com/en/latest/capabilities-reference.html#three-axis) | `threeAxis` (as discrete sensors `X`, `Y` and `Z`) |
| [`tvChannel`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Tv-Channel) | `tvChannel` | [`tvChannel`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Tv-Channel) | `tvChannel` |
| [`tvocMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Tvoc-Measurement) | `tvocLevel` | [`tvocMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Tvoc-Measurement) | `tvocLevel` |
| [`ultravioletIndex`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Ultraviolet-Index) | `ultravioletIndex` | [`ultravioletIndex`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Ultraviolet-Index) | `ultravioletIndex` |
| [`voltageMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Voltage-Measurement) | `voltage` | [`voltageMeasurement`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Voltage-Measurement) | `voltage` |
| [`washerMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Washer-Mode) | `washerMode` | [`washerMode`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Washer-Mode) | `washerMode` |
| [`washerOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Washer-Operating-State) | `machineState`, `washerJobState` and `completionTime` | [`washerOperatingState`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Washer-Operating-State) | `machineState`, `washerJobState` and `completionTime` |
### Scene ### Scene
@ -282,10 +282,10 @@ The SmartThings Scene platform lets you activate scenes defined in SmartThings w
The SmartThings Switch platform lets you control devices that have the [`switch`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Switch) capability that are not already represented by a more specific platform. The following optional capabilities will provide energy and power utilization information: The SmartThings Switch platform lets you control devices that have the [`switch`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Switch) capability that are not already represented by a more specific platform. The following optional capabilities will provide energy and power utilization information:
| Capability |Switch Features | Capability | Switch Features |
|-------------------------------------|--------------------------------------------| | --------------------------------------------------------------------------------------------------------- | ------------------------------------------------------- |
| [`energyMeter`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Energy-Meter) | energy consumption (`today_energy_kwh` state attribute) | [`energyMeter`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Energy-Meter) | energy consumption (`today_energy_kwh` state attribute) |
| [`powerMeter`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Power-Meter) | power consumption (`current_power_w` state attribute) | [`powerMeter`](https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Power-Meter) | power consumption (`current_power_w` state attribute) |
## Troubleshooting ## Troubleshooting

View File

@ -128,7 +128,7 @@ contact:
required: false required: false
type: string type: string
issue_report_channels: issue_report_channels:
description: "The reporting channel for issues. Valid values are email, issue_mail, twitter or ml" description: "The reporting channel for issues. Valid values are `email`, `issue_mail`, `twitter` or `ml`"
required: true required: true
type: list type: list
state: state:

View File

@ -9,7 +9,7 @@ ha_iot_class: Local Push
ha_release: 0.11 ha_release: 0.11
--- ---
Integrates MySensors switches into Home Assistant. See the [main component] for configuration instructions. Integrates MySensors switches into Home Assistant. See the [main integration](/integrations/mysensors/) for configuration instructions.
## Supported actuator types ## Supported actuator types
@ -17,43 +17,43 @@ The following actuator types are supported:
### MySensors version 1.4 and higher ### MySensors version 1.4 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
---------|------------------- | -------- | ------------------ |
S_DOOR | V_ARMED | S_DOOR | V_ARMED |
S_MOTION | V_ARMED | S_MOTION | V_ARMED |
S_SMOKE | V_ARMED | S_SMOKE | V_ARMED |
S_LIGHT | V_LIGHT | S_LIGHT | V_LIGHT |
S_LOCK | V_LOCK_STATUS | S_LOCK | V_LOCK_STATUS |
S_IR | V_IR_SEND, V_LIGHT | S_IR | V_IR_SEND, V_LIGHT |
### MySensors version 1.5 and higher ### MySensors version 1.5 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
-------------|---------------------- | ------------ | --------------------- |
S_LIGHT | V_STATUS | S_LIGHT | V_STATUS |
S_BINARY | [V_STATUS or V_LIGHT] | S_BINARY | [V_STATUS or V_LIGHT] |
S_SPRINKLER | V_STATUS | S_SPRINKLER | V_STATUS |
S_WATER_LEAK | V_ARMED | S_WATER_LEAK | V_ARMED |
S_SOUND | V_ARMED | S_SOUND | V_ARMED |
S_VIBRATION | V_ARMED | S_VIBRATION | V_ARMED |
S_MOISTURE | V_ARMED | S_MOISTURE | V_ARMED |
### MySensors version 2.0 and higher ### MySensors version 2.0 and higher
S_TYPE | V_TYPE | S_TYPE | V_TYPE |
----------------|--------- | --------------- | -------- |
S_WATER_QUALITY | V_STATUS | S_WATER_QUALITY | V_STATUS |
All V_TYPES for each S_TYPE above are required to activate the actuator for the platform. Use either V_LIGHT or V_STATUS depending on library version for cases where that V_TYPE is required. All V_TYPES for each S_TYPE above are required to activate the actuator for the platform. Use either V_LIGHT or V_STATUS depending on library version for cases where that V_TYPE is required.
For more information, visit the [serial api] of MySensors. For more information, visit the [serial API](https://www.mysensors.org/download) of MySensors.
## Services ## Services
The MySensors switch platform exposes a service to change an IR code attribute for an IR switch device and turn the switch on. The IR switch will automatically be turned off after being turned on, if `optimistic` is set to `true` in the [config](/integrations/mysensors/#configuration) for the MySensors component. This will simulate a push button on a remote. If `optimistic` is `false`, the MySensors device will have to report its updated state to reset the switch. See the [example sketch](#ir-switch-sketch) for the IR switch below. The MySensors switch platform exposes a service to change an IR code attribute for an IR switch device and turn the switch on. The IR switch will automatically be turned off after being turned on, if `optimistic` is set to `true` in the [config](/integrations/mysensors/#configuration) for the MySensors component. This will simulate a push button on a remote. If `optimistic` is `false`, the MySensors device will have to report its updated state to reset the switch. See the [example sketch](#ir-switch-sketch) for the IR switch below.
| Service | Description | | Service | Description |
| ------- | ----------- | | ---------------------- | -------------------------------------------------------------------------------------------- |
| mysensors.send_ir_code | Set an IR code as a state attribute for a MySensors IR device switch and turn the switch on. | | mysensors.send_ir_code | Set an IR code as a state attribute for a MySensors IR device switch and turn the switch on. |
The service can be used as part of an automation script. For example: The service can be used as part of an automation script. For example:
@ -201,6 +201,3 @@ void incomingMessage(const MyMessage &message) {
} }
} }
``` ```
[main component]: /integrations/mysensors/
[serial api]: https://www.mysensors.org/download

View File

@ -141,9 +141,9 @@ data_template:
The integration has two caches. Both caches can be controlled with the `cache` option in the platform configuration or the service call `say`. A long time cache will be located on the file system. The in-memory cache for fast responses to media players will be auto-cleaned after a short period. The integration has two caches. Both caches can be controlled with the `cache` option in the platform configuration or the service call `say`. A long time cache will be located on the file system. The in-memory cache for fast responses to media players will be auto-cleaned after a short period.
## REST Api ## REST API
### POST /api/tts_get_url ### POST `/api/tts_get_url`
Returns an URL to the generated TTS file. Platform and message are required. Returns an URL to the generated TTS file. Platform and message are required.

View File

@ -40,7 +40,7 @@ watson_url:
description: "The endpoint to which the service will connect." description: "The endpoint to which the service will connect."
required: false required: false
type: string type: string
default: https://stream.watsonplatform.net/text-to-speech/api default: "`https://stream.watsonplatform.net/text-to-speech/api`"
watson_apikey: watson_apikey:
description: "Your secret apikey generated on the IBM Cloud admin console." description: "Your secret apikey generated on the IBM Cloud admin console."
required: true required: true

View File

@ -53,7 +53,7 @@ Withings supports multiple profiles per account. Each profile has a person's nam
- On the Withings site, choose the profile of the data you want to sync. - On the Withings site, choose the profile of the data you want to sync.
- Authorize the application. Your browser will redirect you to the redirect uri you provided during account setup. - Authorize the application. Your browser will redirect you to the redirect uri you provided during account setup.
- Note: If you get a browser error saying the site is inaccessible, you can modify the - Note: If you get a browser error saying the site is inaccessible, you can modify the
`http://domain` portion of the URL to something you know is accessible, locally or publically. For example, `http://localhost:8123`. `http://domain` portion of the URL to something you know is accessible, locally or publicly. For example, `http://localhost:8123`.
This occurs when the base URL provided by Home Assistant to Withings is not accessible to the outside world. This occurs when the base URL provided by Home Assistant to Withings is not accessible to the outside world.
Changing the domain will not affect how data is synchronized. Changing the domain will not affect how data is synchronized.
- Once authorized, the tab/window will close and the integration page will prompt to select a profile. Select the profile you chose while on the withings site. - Once authorized, the tab/window will close and the integration page will prompt to select a profile. Select the profile you chose while on the withings site.

View File

@ -14,7 +14,7 @@ The `wunderlist` integration allows you to create tasks in [Wunderlist](https://
Wunderlist API uses OAuth2, so you need to obtain a `client_id` and an `access_token`. Wunderlist API uses OAuth2, so you need to obtain a `client_id` and an `access_token`.
There are two ways: There are two ways:
1. Go to the [Wunderlist IOT app page](https://wunderlist-iot.herokuapp.com), log in with your Wunderlist account and accept the application permissions. 1. Go to the [Wunderlist IoT app page](https://wunderlist-iot.herokuapp.com), log in with your Wunderlist account and accept the application permissions.
It will print for you the `client_id` and the `access_token`. It will print for you the `client_id` and the `access_token`.
2. Or you can create your own application and `access_token` following the instructions at the [Wunderlist developer page](https://developer.wunderlist.com/). 2. Or you can create your own application and `access_token` following the instructions at the [Wunderlist developer page](https://developer.wunderlist.com/).
@ -44,8 +44,8 @@ This integration offers a new service domain `wunderlist` with the service `crea
You can call this service with the argument `list_name` the argument `name` and the optional parameter `starred` to create a new task. You can call this service with the argument `list_name` the argument `name` and the optional parameter `starred` to create a new task.
| Service data attribute | Optional | Description | Example | | Service data attribute | Optional | Description | Example |
|------------------------|----------|-------------|---------| | ---------------------- | -------- | ------------------------------ | --------------- |
| list_name | no | Name of the list | "Shopping list" | list_name | no | Name of the list | "Shopping list" |
| name | no | Name of the new task | "Spanish Jam" | | name | no | Name of the new task | "Spanish Jam" |
| starred | yes | Create the task starred or not | false | | starred | yes | Create the task starred or not | false |

View File

@ -18,7 +18,8 @@ There is currently support for the following device types within Home Assistant:
- **Light** - The yeelight platform for supporting lights. - **Light** - The yeelight platform for supporting lights.
- **Sensor** - The yeelight platform for supporting sensors. Currently only nightlight mode sensor, for ceiling lights. - **Sensor** - The yeelight platform for supporting sensors. Currently only nightlight mode sensor, for ceiling lights.
### Example configuration (Automatic) ## Example configuration (Automatic)
After the lights are connected to the WiFi network and have been detected in Home Assistant, the discovered names will be shown in the `Light` section of the `Overview` view. Add the following lines to your `customize.yaml` file: After the lights are connected to the WiFi network and have been detected in Home Assistant, the discovered names will be shown in the `Light` section of the `Overview` view. Add the following lines to your `customize.yaml` file:
```yaml ```yaml
@ -29,7 +30,7 @@ light.yeelight_color2_XXXXXXXXXXXX:
friendly_name: Downstairs Toilet friendly_name: Downstairs Toilet
``` ```
### Example configuration (Manual) ## Example configuration (Manual)
To enable those lights, add the following lines to your `configuration.yaml` file: To enable those lights, add the following lines to your `configuration.yaml` file:
@ -107,7 +108,8 @@ custom_effects:
type: list type: list
{% endconfiguration %} {% endconfiguration %}
#### Music mode ### Music mode
Per default the bulb limits the amount of requests per minute to 60, a limitation which can be bypassed by enabling the music mode. In music mode the bulb is commanded to connect back to a socket provided by the integration and it tries to keep the connection open, which may not be wanted in all use-cases. Per default the bulb limits the amount of requests per minute to 60, a limitation which can be bypassed by enabling the music mode. In music mode the bulb is commanded to connect back to a socket provided by the integration and it tries to keep the connection open, which may not be wanted in all use-cases.
**Also note that bulbs in music mode will not update their state to "unavailable" if they are disconnected, which can cause delays in Home Assistant. Bulbs in music mode may also not react to commands from Home Assistant the first time if the connection is dropped. If you experience this issue, turn the light off and back on again in the frontend and everything will return to normal.** **Also note that bulbs in music mode will not update their state to "unavailable" if they are disconnected, which can cause delays in Home Assistant. Bulbs in music mode may also not react to commands from Home Assistant the first time if the connection is dropped. If you experience this issue, turn the light off and back on again in the frontend and everything will return to normal.**
@ -149,7 +151,7 @@ This integration is tested to work with the following models. If you have a diff
| `ceiling4` | YLXD02YL | Yeelight Ceiling Light (Jiaoyue 650) | | `ceiling4` | YLXD02YL | Yeelight Ceiling Light (Jiaoyue 650) |
| `mono` | YLTD03YL | Yeelight Serene Eye-Friendly Desk Lamp | | `mono` | YLTD03YL | Yeelight Serene Eye-Friendly Desk Lamp |
## Platform Services ## Services
### Service `yeelight.set_mode` ### Service `yeelight.set_mode`
@ -203,7 +205,7 @@ Changes the light to the specified color temperature. If the light is off, it wi
### Service `yeelight.set_color_flow_scene` ### Service `yeelight.set_color_flow_scene`
Starts a color flow. Difference between this and [yeelight.start_flow](#service-yeelightstart_flow), this service call uses different Yeelight api call. If the light was off, it will be turned on. There might be some firmware differences, in handling complex flows, etc. Starts a color flow. Difference between this and [yeelight.start_flow](#service-yeelightstart_flow), this service call uses different Yeelight API call. If the light was off, it will be turned on. There might be some firmware differences, in handling complex flows, etc.
| Service data attribute | Optional | Description | | Service data attribute | Optional | Description |
|---------------------------|----------|---------------------------------------------------------------------------------------------| |---------------------------|----------|---------------------------------------------------------------------------------------------|
@ -261,14 +263,14 @@ This example shows how you can add your custom effects in your configuration. To
Possible transitions are `RGBTransition`, `HSVTransition`, `TemperatureTransition`, `SleepTransition`. Possible transitions are `RGBTransition`, `HSVTransition`, `TemperatureTransition`, `SleepTransition`.
Where the array values are as per the following: Where the array values are as per the following:
- RGBTransition: [red, green, blue, duration, brightness] with red / green / blue being an integer between 0 and 255, duration being in milliseconds (minimum of 50) and final brightness to transition to 0-100 (%)
- HSVTransition: [hue, saturation, duration, brightness] with hue being an integer between 0 and 359, saturation 0 -100, duration in milliseconds (minimum 50) and final brightness 0-100 (%) - RGBTransition: [red, green, blue, duration, brightness] with red / green / blue being an integer between 0 and 255, duration being in milliseconds (minimum of 50) and final brightness to transition to 0-100 (%).
- TemperatureTransition: [temp, duration, brightness] with temp being the final color temperature between 1700 and 6500, duration in milliseconds (minimum 50) and final brightness to transition to 0-100 (%) - HSVTransition: [hue, saturation, duration, brightness] with hue being an integer between 0 and 359, saturation 0 -100, duration in milliseconds (minimum 50) and final brightness 0-100 (%).
- SleepTransition: [duration] with duration being in integer for effect time in milliseconds (minimum 50) - TemperatureTransition: [temp, duration, brightness] with temp being the final color temperature between 1700 and 6500, duration in milliseconds (minimum 50) and final brightness to transition to 0-100 (%).
- SleepTransition: [duration] with duration being in integer for effect time in milliseconds (minimum 50).
More info about transitions and their expected parameters can be found in [python-yeelight documentation](https://yeelight.readthedocs.io/en/stable/flow.html). More info about transitions and their expected parameters can be found in [python-yeelight documentation](https://yeelight.readthedocs.io/en/stable/flow.html).
```yaml ```yaml
yeelight: yeelight:
devices: devices:

View File

@ -135,7 +135,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Adapt to new yarl API ([@tinloaf] - [#10527]) ([tts.google docs]) - Adapt to new yarl API ([@tinloaf] - [#10527]) ([tts.google docs])
- Update nederlandse_spoorwegen.py to include platform information ([@hmmbob] - [#10494]) ([sensor.nederlandse_spoorwegen docs]) - Update nederlandse_spoorwegen.py to include platform information ([@hmmbob] - [#10494]) ([sensor.nederlandse_spoorwegen docs])
- Pin yarl ([@tinloaf] - [#10528]) - Pin yarl ([@tinloaf] - [#10528])
- Support configuration of region (no service url neccessary ([@molobrakos] - [#10513]) ([volvooncall docs]) - Support configuration of region (no service url necessary ([@molobrakos] - [#10513]) ([volvooncall docs])
- Fix import in tests ([@andrey-git] - [#10525]) - Fix import in tests ([@andrey-git] - [#10525])
- Update axis.py ([@Kane610] - [#10412]) ([axis docs]) - Update axis.py ([@Kane610] - [#10412]) ([axis docs])
- Add attribute to show who last un/set alarm (SPC) ([@mbrrg] - [#9906]) ([spc docs]) ([alarm_control_panel.spc docs]) ([binary_sensor.spc docs]) - Add attribute to show who last un/set alarm (SPC) ([@mbrrg] - [#9906]) ([spc docs]) ([alarm_control_panel.spc docs]) ([binary_sensor.spc docs])
@ -186,7 +186,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Change generic thermostat to control heating on mode change Off -> Auto ([@milanvo] - [#10601]) ([climate.generic_thermostat docs]) - Change generic thermostat to control heating on mode change Off -> Auto ([@milanvo] - [#10601]) ([climate.generic_thermostat docs])
- Improve WUnderground config validation ([@milanvo] - [#10573]) ([sensor.wunderground docs]) - Improve WUnderground config validation ([@milanvo] - [#10573]) ([sensor.wunderground docs])
- update hbmqtt to 0.9.1 ([@masarliev] - [#10611]) - update hbmqtt to 0.9.1 ([@masarliev] - [#10611])
- Allow to pass YandexTTS options via sevice call ([@andrey-git] - [#10578]) ([tts docs]) ([tts.yandextts docs]) - Allow to pass YandexTTS options via service call ([@andrey-git] - [#10578]) ([tts docs]) ([tts.yandextts docs])
- Snapcast: bump version and enable reconnect. ([@janLo] - [#10626]) ([media_player.snapcast docs]) - Snapcast: bump version and enable reconnect. ([@janLo] - [#10626]) ([media_player.snapcast docs])
- Fix async missing decorators ([@armills] - [#10628]) - Fix async missing decorators ([@armills] - [#10628])
- Alexa slot synonym fix ([@devspacenine] - [#10614]) - Alexa slot synonym fix ([@devspacenine] - [#10614])

View File

@ -56,7 +56,7 @@ Yahoo! has discontinued their financial service. To fill this gap we have now th
- Fix allday events in custom_calendars ([@maxlaverse] - [#11272]) ([calendar.caldav docs]) - Fix allday events in custom_calendars ([@maxlaverse] - [#11272]) ([calendar.caldav docs])
- Fix unpredictable entity names in concord232 binary_sensor ([@rwa] - [#11292]) ([binary_sensor.concord232 docs]) - Fix unpredictable entity names in concord232 binary_sensor ([@rwa] - [#11292]) ([binary_sensor.concord232 docs])
- Fix leak sensors always showing Unknown until Wet ([@OverloadUT] - [#11313]) ([binary_sensor.isy994 docs]) - Fix leak sensors always showing Unknown until Wet ([@OverloadUT] - [#11313]) ([binary_sensor.isy994 docs])
- Don't block on sevice call for alexa ([@pvizeli] - [#11358]) ([alexa.smart_home docs]) - Don't block on service call for alexa ([@pvizeli] - [#11358]) ([alexa.smart_home docs])
- iOS 10 should be served javascript_version:es5 ([@mnoorenberghe] - [#11387]) - iOS 10 should be served javascript_version:es5 ([@mnoorenberghe] - [#11387])
## If you need help... ## If you need help...

View File

@ -116,7 +116,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Service for setting a fixed scene of Xiaomi MIIO lights ([@syssi] - [#10819]) ([light.xiaomi_miio docs]) - Service for setting a fixed scene of Xiaomi MIIO lights ([@syssi] - [#10819]) ([light.xiaomi_miio docs])
- Homematic ip tilt covers ([@steffenslavetinsky] - [#11650]) ([cover.homematic docs]) - Homematic ip tilt covers ([@steffenslavetinsky] - [#11650]) ([cover.homematic docs])
- plant - check history for min_brightness ([@ChristianKuehnel] - [#9534]) ([plant docs]) - plant - check history for min_brightness ([@ChristianKuehnel] - [#9534]) ([plant docs])
- add generic rollershutter agian, was missing in last merge ([@philklei] - [#11788]) ([tahoma docs]) - add generic rollershutter again, was missing in last merge ([@philklei] - [#11788]) ([tahoma docs])
- Additional attributes and services of the Xiaomi Air Purifier introduced ([@syssi] - [#11249]) ([fan.xiaomi_miio docs]) ([light.xiaomi_miio docs]) ([switch.xiaomi_miio docs]) ([vacuum.xiaomi_miio docs]) - Additional attributes and services of the Xiaomi Air Purifier introduced ([@syssi] - [#11249]) ([fan.xiaomi_miio docs]) ([light.xiaomi_miio docs]) ([switch.xiaomi_miio docs]) ([vacuum.xiaomi_miio docs])
- flux led version 0.20 ([@danielhiversen] - [#11791]) - flux led version 0.20 ([@danielhiversen] - [#11791])
- Hyperion: fix ([@starkillerOG] - [#11793]) ([light.hyperion docs]) - Hyperion: fix ([@starkillerOG] - [#11793]) ([light.hyperion docs])

View File

@ -188,7 +188,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- added media_stop ([@jodur] - [#12100]) ([media_player.vlc docs]) - added media_stop ([@jodur] - [#12100]) ([media_player.vlc docs])
- Goalfeed channel ([@craigjmidwinter] - [#12086]) ([goalfeed docs]) - Goalfeed channel ([@craigjmidwinter] - [#12086]) ([goalfeed docs])
- Update jinja2 to 2.10 ([@arsaboo] - [#12118]) - Update jinja2 to 2.10 ([@arsaboo] - [#12118])
- Downgrade Sonarr and Radarr 'Host is not avaliable' errors to warnings ([@timmo001] - [#12119]) ([sensor.radarr docs]) ([sensor.sonarr docs]) - Downgrade Sonarr and Radarr 'Host is not available' errors to warnings ([@timmo001] - [#12119]) ([sensor.radarr docs]) ([sensor.sonarr docs])
- Fixes away_mode error on startup ([@ciotlosm] - [#12121]) ([climate.generic_thermostat docs]) - Fixes away_mode error on startup ([@ciotlosm] - [#12121]) ([climate.generic_thermostat docs])
- except vol.MultipleInvalid in Broadlink #11795 ([@danielhiversen] - [#12107]) ([sensor.broadlink docs]) - except vol.MultipleInvalid in Broadlink #11795 ([@danielhiversen] - [#12107]) ([sensor.broadlink docs])
- Adds SUPPORT_TARGET_TEMPERATURE_HIGH and SUPPORT_TARGET_TEMPERATURE_LOW support ([@hawk259] - [#12110]) ([climate.ecobee docs]) - Adds SUPPORT_TARGET_TEMPERATURE_HIGH and SUPPORT_TARGET_TEMPERATURE_LOW support ([@hawk259] - [#12110]) ([climate.ecobee docs])

View File

@ -91,7 +91,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Remove crazy JSON encoding things that are no longer used ([@balloob] - [#13029]) ([http docs]) ([websocket_api docs]) - Remove crazy JSON encoding things that are no longer used ([@balloob] - [#13029]) ([http docs]) ([websocket_api docs])
- Disable Monkey Patch for 3.6.3+ ([@OttoWinter] - [#13150]) - Disable Monkey Patch for 3.6.3+ ([@OttoWinter] - [#13150])
- Upgrade Sphinx to 1.7.1 ([@fabaff] - [#13127]) - Upgrade Sphinx to 1.7.1 ([@fabaff] - [#13127])
- upgrade tibber libary to 0.4.0 to use aiohttp 3.0 ([@danielhiversen] - [#13164]) ([sensor.tibber docs]) - upgrade tibber library to 0.4.0 to use aiohttp 3.0 ([@danielhiversen] - [#13164]) ([sensor.tibber docs])
- Change iglo port to cv.port validator ([@jesserockz] - [#13163]) ([light.iglo docs]) - Change iglo port to cv.port validator ([@jesserockz] - [#13163]) ([light.iglo docs])
- deConz rewrite to use async await syntax ([@Kane610] - [#13151]) ([deconz docs]) ([binary_sensor.deconz docs]) ([light.deconz docs]) ([scene.deconz docs]) ([sensor.deconz docs]) - deConz rewrite to use async await syntax ([@Kane610] - [#13151]) ([deconz docs]) ([binary_sensor.deconz docs]) ([light.deconz docs]) ([scene.deconz docs]) ([sensor.deconz docs])
- Upgrade holidays to 0.9.4 ([@OttoWinter] - [#13167]) ([binary_sensor.workday docs]) - Upgrade holidays to 0.9.4 ([@OttoWinter] - [#13167]) ([binary_sensor.workday docs])

View File

@ -17,7 +17,7 @@ This release includes a database migration to allow us to store context in the d
<a href='/integrations/#version/0.76'><img src='/images/blog/2018-08-0.76/components.png' style='border: 0;box-shadow: none;'></a> <a href='/integrations/#version/0.76'><img src='/images/blog/2018-08-0.76/components.png' style='border: 0;box-shadow: none;'></a>
The auth system is entering release candidate status 🎉. If nothing major is found, it will be enabled by default starting the next release (0.77) with backwards compatability modus turned on. If you want to get ahead of the pack, you can already easily enable it now: The auth system is entering release candidate status 🎉. If nothing major is found, it will be enabled by default starting the next release (0.77) with backwards compatibility modus turned on. If you want to get ahead of the pack, you can already easily enable it now:
```yaml ```yaml
homeassistant: homeassistant:
@ -28,7 +28,7 @@ homeassistant:
# - type: legacy_api_password # - type: legacy_api_password
``` ```
For iOS users, your frontend should be a lot faster. We had an issue that forced us to serve the frontend in compatability mode, which is slower. We haven't been able to solve [the issue](https://bugs.webkit.org/show_bug.cgi?id=174629), but found a workaround. Race on 🏎. For iOS users, your frontend should be a lot faster. We had an issue that forced us to serve the frontend in compatibility mode, which is slower. We haven't been able to solve [the issue](https://bugs.webkit.org/show_bug.cgi?id=174629), but found a workaround. Race on 🏎.
Warning. If you are using the internal MQTT broker, we've had to make a change how the password is set. In the past it would automatically start the broker with the user `homeassistant` and a password equal to the API password. This is no longer the case and you need to configure it yourself now: Warning. If you are using the internal MQTT broker, we've had to make a change how the password is set. In the past it would automatically start the broker with the user `homeassistant` and a password equal to the API password. This is no longer the case and you need to configure it yourself now:
@ -90,7 +90,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Keenetic NDMS: user needs to have access to the TelNet interface ([@foxel] - [#15511]) ([device_tracker docs]) (breaking change) - Keenetic NDMS: user needs to have access to the TelNet interface ([@foxel] - [#15511]) ([device_tracker docs]) (breaking change)
- openweathermap: wind speed is now correctly in km/h (fixes #15710) ([@fabaff] - [#15740]) ([weather.openweathermap docs]) (breaking change) - openweathermap: wind speed is now correctly in km/h (fixes #15710) ([@fabaff] - [#15740]) ([weather.openweathermap docs]) (breaking change)
- Remove Telstra notifiy component: This API has been decomissioned on the 31st of May 2018 by Telstra ([@dgomes] - [#15757]) ([notify docs]) (breaking change) - Remove Telstra notifiy component: This API has been decommissioned on the 31st of May 2018 by Telstra ([@dgomes] - [#15757]) ([notify docs]) (breaking change)
- deCONZ - support for power plugs. Power plugs that are of type "On/Off plug-in unit" and "Smart plug" (Osram and Innr among others) will now be switches instead of lights. Entities will be found as switch.entity_id instead of light.entity_id. ([@Kane610] - [#15752]) ([deconz docs]) ([light.deconz docs]) ([switch.deconz docs]) (breaking change) (new-platform) - deCONZ - support for power plugs. Power plugs that are of type "On/Off plug-in unit" and "Smart plug" (Osram and Innr among others) will now be switches instead of lights. Entities will be found as switch.entity_id instead of light.entity_id. ([@Kane610] - [#15752]) ([deconz docs]) ([light.deconz docs]) ([switch.deconz docs]) (breaking change) (new-platform)
- HTTP: Make sure use_x_forward_for and trusted_proxies must be configured together ([@awarecan] - [#15804]) ([http docs]) (breaking change) - HTTP: Make sure use_x_forward_for and trusted_proxies must be configured together ([@awarecan] - [#15804]) ([http docs]) (breaking change)
- Velbus: Breaking changes include auto-discovery support so that you don't need to specify modules manually anymore in the configuration file, but just load the velbus component which will automatically load the switch and binary_sensor platforms. In addition, the fan and light platforms are removed since these should be modeled with template platform based on velbus switches. ([@thomasdelaet] - [#13742]) ([velbus docs]) ([binary_sensor.velbus docs]) ([switch.velbus docs]) (breaking change) - Velbus: Breaking changes include auto-discovery support so that you don't need to specify modules manually anymore in the configuration file, but just load the velbus component which will automatically load the switch and binary_sensor platforms. In addition, the fan and light platforms are removed since these should be modeled with template platform based on velbus switches. ([@thomasdelaet] - [#13742]) ([velbus docs]) ([binary_sensor.velbus docs]) ([switch.velbus docs]) (breaking change)
@ -129,7 +129,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Round precipitation forecast to 1 decimal place ([@priiduonu] - [#15759]) ([weather.openweathermap docs]) - Round precipitation forecast to 1 decimal place ([@priiduonu] - [#15759]) ([weather.openweathermap docs])
- Add a "Reviewed by Hound" badge ([@salbertson] - [#15767]) - Add a "Reviewed by Hound" badge ([@salbertson] - [#15767])
- Upgrade Mastodon.py to 1.3.1 ([@fabaff] - [#15766]) ([notify docs]) - Upgrade Mastodon.py to 1.3.1 ([@fabaff] - [#15766]) ([notify docs])
- This component API has been decomissioned on the 31st of May 2018 by Telstra ([@dgomes] - [#15757]) ([notify docs]) (breaking change) - This component API has been decommissioned on the 31st of May 2018 by Telstra ([@dgomes] - [#15757]) ([notify docs]) (breaking change)
- Fix docstrings ([@fabaff] - [#15770]) - Fix docstrings ([@fabaff] - [#15770])
- Update pynetgear to 0.4.1 (bugfixes) ([@MatMaul] - [#15768]) ([device_tracker docs]) - Update pynetgear to 0.4.1 (bugfixes) ([@MatMaul] - [#15768]) ([device_tracker docs])
- Opensky altitude ([@ioangogo] - [#15273]) ([sensor.opensky docs]) - Opensky altitude ([@ioangogo] - [#15273]) ([sensor.opensky docs])

View File

@ -130,7 +130,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- remove hangouts.users state, simplifies hangouts.conversations ([@hobbypunk90] - [#16191]) ([hangouts docs]) (beta fix) - remove hangouts.users state, simplifies hangouts.conversations ([@hobbypunk90] - [#16191]) ([hangouts docs]) (beta fix)
- Update aiohttp to version 3.4.0. ([@Swamp-Ig] - [#16198]) (beta fix) - Update aiohttp to version 3.4.0. ([@Swamp-Ig] - [#16198]) (beta fix)
- Revert changes to platforms using self.device ([@Kane610] - [#16209]) (beta fix) - Revert changes to platforms using self.device ([@Kane610] - [#16209]) (beta fix)
- homematic: Make device avilable again when UNREACH becomes False ([@klada] - [#16202]) ([homematic docs]) (beta fix) - homematic: Make device available again when UNREACH becomes False ([@klada] - [#16202]) ([homematic docs]) (beta fix)
- Change auth warning ([@balloob] - [#16216]) ([http docs]) (beta fix) - Change auth warning ([@balloob] - [#16216]) ([http docs]) (beta fix)
- rewrite hangouts to use intents instead of commands ([@hobbypunk90] - [#16220]) ([conversation docs]) ([hangouts docs]) (beta fix) - rewrite hangouts to use intents instead of commands ([@hobbypunk90] - [#16220]) ([conversation docs]) ([hangouts docs]) (beta fix)
- Fix device telldus ([@balloob] - [#16224]) ([tellduslive docs]) (beta fix) - Fix device telldus ([@balloob] - [#16224]) ([tellduslive docs]) (beta fix)
@ -142,7 +142,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Change log level to error when auth provider failed loading ([@awarecan] - [#16235]) (beta fix) - Change log level to error when auth provider failed loading ([@awarecan] - [#16235]) (beta fix)
- Blow up startup if init auth providers or modules failed ([@awarecan] - [#16240]) (beta fix) - Blow up startup if init auth providers or modules failed ([@awarecan] - [#16240]) (beta fix)
- Tweak MFA login flow ([@awarecan] - [#16254]) (beta fix) - Tweak MFA login flow ([@awarecan] - [#16254]) (beta fix)
- def device shouldnt call it self but self._device ([@Kane610] - [#16255]) ([media_player.plex docs]) (beta fix) - def device should not call it self but self._device ([@Kane610] - [#16255]) ([media_player.plex docs]) (beta fix)
## All changes ## All changes
@ -244,7 +244,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- remove hangouts.users state, simplifies hangouts.conversations ([@hobbypunk90] - [#16191]) ([hangouts docs]) (beta fix) - remove hangouts.users state, simplifies hangouts.conversations ([@hobbypunk90] - [#16191]) ([hangouts docs]) (beta fix)
- Update aiohttp to version 3.4.0. ([@Swamp-Ig] - [#16198]) (beta fix) - Update aiohttp to version 3.4.0. ([@Swamp-Ig] - [#16198]) (beta fix)
- Revert changes to platforms using self.device ([@Kane610] - [#16209]) (beta fix) - Revert changes to platforms using self.device ([@Kane610] - [#16209]) (beta fix)
- homematic: Make device avilable again when UNREACH becomes False ([@klada] - [#16202]) ([homematic docs]) (beta fix) - homematic: Make device available again when UNREACH becomes False ([@klada] - [#16202]) ([homematic docs]) (beta fix)
- Change auth warning ([@balloob] - [#16216]) ([http docs]) (beta fix) - Change auth warning ([@balloob] - [#16216]) ([http docs]) (beta fix)
- rewrite hangouts to use intents instead of commands ([@hobbypunk90] - [#16220]) ([conversation docs]) ([hangouts docs]) (beta fix) - rewrite hangouts to use intents instead of commands ([@hobbypunk90] - [#16220]) ([conversation docs]) ([hangouts docs]) (beta fix)
- Fix device telldus ([@balloob] - [#16224]) ([tellduslive docs]) (beta fix) - Fix device telldus ([@balloob] - [#16224]) ([tellduslive docs]) (beta fix)
@ -256,7 +256,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Change log level to error when auth provider failed loading ([@awarecan] - [#16235]) (beta fix) - Change log level to error when auth provider failed loading ([@awarecan] - [#16235]) (beta fix)
- Blow up startup if init auth providers or modules failed ([@awarecan] - [#16240]) (beta fix) - Blow up startup if init auth providers or modules failed ([@awarecan] - [#16240]) (beta fix)
- Tweak MFA login flow ([@awarecan] - [#16254]) (beta fix) - Tweak MFA login flow ([@awarecan] - [#16254]) (beta fix)
- def device shouldnt call it self but self._device ([@Kane610] - [#16255]) ([media_player.plex docs]) (beta fix) - def device should not call it self but self._device ([@Kane610] - [#16255]) ([media_player.plex docs]) (beta fix)
[#14516]: https://github.com/home-assistant/home-assistant/pull/14516 [#14516]: https://github.com/home-assistant/home-assistant/pull/14516
[#14557]: https://github.com/home-assistant/home-assistant/pull/14557 [#14557]: https://github.com/home-assistant/home-assistant/pull/14557

View File

@ -11,7 +11,7 @@ og_image: /images/blog/2018-12-release-84/components.png
<a href='/integrations/#version/0.84'><img src='/images/blog/2018-12-release-84/components.png' style='border: 0;box-shadow: none;'></a> <a href='/integrations/#version/0.84'><img src='/images/blog/2018-12-release-84/components.png' style='border: 0;box-shadow: none;'></a>
Time for the last release of the year. We were hoping to end the year with an enourmous bang and make Lovelace the default UI. However, in our final stretch we realized that to get to the experience that we wanted, we had to make more last minute changes than we felt comfortable making. If you are a Lovelace tester, please read the section for existing testers below. Time for the last release of the year. We were hoping to end the year with an enormous bang and make Lovelace the default UI. However, in our final stretch we realized that to get to the experience that we wanted, we had to make more last minute changes than we felt comfortable making. If you are a Lovelace tester, please read the section for existing testers below.
We want to wish everybody happy holidays and want to thank all our contributors to the code, the documentation and all the ones in the chat for making up our amazing community. We had a great year with a lot of accomplishments and are looking forward to see all the great stuff you all come up with in 2019. Cheers! 🥂 We want to wish everybody happy holidays and want to thank all our contributors to the code, the documentation and all the ones in the chat for making up our amazing community. We had a great year with a lot of accomplishments and are looking forward to see all the great stuff you all come up with in 2019. Cheers! 🥂

View File

@ -78,7 +78,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
## Breaking Changes ## Breaking Changes
- Targetting all entities in a domain by not sending an entity_id to a service is now deprecated. Instead, send `entity_id: all` if you want to target all. The old method will work for a couple of releases more, but will print a warning. Please migrate. ([@balloob] - [#19006]) (breaking change) - Targeting all entities in a domain by not sending an entity_id to a service is now deprecated. Instead, send `entity_id: all` if you want to target all. The old method will work for a couple of releases more, but will print a warning. Please migrate. ([@balloob] - [#19006]) (breaking change)
- The default interval of the weather component was aligned with the sensor component and is now 30 seconds instead of 15 seconds. ([@fabaff] - [#19186]) ([weather docs]) (breaking change) - The default interval of the weather component was aligned with the sensor component and is now 30 seconds instead of 15 seconds. ([@fabaff] - [#19186]) ([weather docs]) (breaking change)
- In order to fix the below bug, default entity_ids will change (for example, `sensor.17track_packages_delivered` will change to `sensor.seventeentrack_packages_delivered)`. ([@bachya] - [#19213]) ([sensor.seventeentrack docs]) (breaking change) - In order to fix the below bug, default entity_ids will change (for example, `sensor.17track_packages_delivered` will change to `sensor.seventeentrack_packages_delivered)`. ([@bachya] - [#19213]) ([sensor.seventeentrack docs]) (breaking change)
- Change `STATE_AUTO` to `STATE_HEAT` and `STATE_AWAY` to `STATE_ECO` to conform to climate DOMAIN standards. Change made to fix Alexa/Google Assistant support for this component. ([@marchingphoenix] - [#19242]) ([climate.eq3btsmart docs]) (breaking change) - Change `STATE_AUTO` to `STATE_HEAT` and `STATE_AWAY` to `STATE_ECO` to conform to climate DOMAIN standards. Change made to fix Alexa/Google Assistant support for this component. ([@marchingphoenix] - [#19242]) ([climate.eq3btsmart docs]) (breaking change)

View File

@ -164,11 +164,11 @@ Experiencing issues introduced by this release? Please report them in our [issue
- SmartThings Component Enhancements/Fixes ([@andrewsayre] - [#21085]) ([smartthings docs]) (beta fix) - SmartThings Component Enhancements/Fixes ([@andrewsayre] - [#21085]) ([smartthings docs]) (beta fix)
- Fix SmartThings Translation Error ([@andrewsayre] - [#21103]) ([smartthings docs]) (beta fix) - Fix SmartThings Translation Error ([@andrewsayre] - [#21103]) ([smartthings docs]) (beta fix)
- Fix track_change error in utility_meter ([@dgomes] - [#21134]) ([utility_meter docs]) (beta fix) - Fix track_change error in utility_meter ([@dgomes] - [#21134]) ([utility_meter docs]) (beta fix)
- Update pyEight for Python 3.7 Compatability ([@mezz64] - [#21161]) ([eight_sleep docs]) (beta fix) - Update pyEight for Python 3.7 Compatibility ([@mezz64] - [#21161]) ([eight_sleep docs]) (beta fix)
- Add power source to device and clean up zha listeners ([@dmulcahey] - [#21174]) ([zha docs]) (beta fix) - Add power source to device and clean up zha listeners ([@dmulcahey] - [#21174]) ([zha docs]) (beta fix)
- Fix for #19072 ([@sjabby] - [#21175]) ([light.flux_led docs]) (beta fix) - Fix for #19072 ([@sjabby] - [#21175]) ([light.flux_led docs]) (beta fix)
- Upgrade aioimaplib for Python 3.7 compatibility ([@amelchio] - [#21197]) ([sensor.imap docs]) (beta fix) - Upgrade aioimaplib for Python 3.7 compatibility ([@amelchio] - [#21197]) ([sensor.imap docs]) (beta fix)
- ordered by last occurence ([@dgomes] - [#21200]) ([system_log docs]) (beta fix) - ordered by last occurrence ([@dgomes] - [#21200]) ([system_log docs]) (beta fix)
- Set aioharmony version to 0.1.8 ([@ehendrix23] - [#21213]) ([harmony docs]) (breaking change) (beta fix) - Set aioharmony version to 0.1.8 ([@ehendrix23] - [#21213]) ([harmony docs]) (breaking change) (beta fix)
- Push pyads to 3.0.7 ([@carstenschroeder] - [#21216]) ([ads docs]) (beta fix) - Push pyads to 3.0.7 ([@carstenschroeder] - [#21216]) ([ads docs]) (beta fix)
- Refactor ZHA listeners into channels ([@dmulcahey] - [#21196]) ([zha docs]) (beta fix) - Refactor ZHA listeners into channels ([@dmulcahey] - [#21196]) ([zha docs]) (beta fix)
@ -350,11 +350,11 @@ Experiencing issues introduced by this release? Please report them in our [issue
- SmartThings Component Enhancements/Fixes ([@andrewsayre] - [#21085]) ([smartthings docs]) (beta fix) - SmartThings Component Enhancements/Fixes ([@andrewsayre] - [#21085]) ([smartthings docs]) (beta fix)
- Fix SmartThings Translation Error ([@andrewsayre] - [#21103]) ([smartthings docs]) (beta fix) - Fix SmartThings Translation Error ([@andrewsayre] - [#21103]) ([smartthings docs]) (beta fix)
- Fix track_change error in utility_meter ([@dgomes] - [#21134]) ([utility_meter docs]) (beta fix) - Fix track_change error in utility_meter ([@dgomes] - [#21134]) ([utility_meter docs]) (beta fix)
- Update pyEight for Python 3.7 Compatability ([@mezz64] - [#21161]) ([eight_sleep docs]) (beta fix) - Update pyEight for Python 3.7 Compatibility ([@mezz64] - [#21161]) ([eight_sleep docs]) (beta fix)
- Add power source to device and clean up zha listeners ([@dmulcahey] - [#21174]) ([zha docs]) (beta fix) - Add power source to device and clean up zha listeners ([@dmulcahey] - [#21174]) ([zha docs]) (beta fix)
- Fix for #19072 ([@sjabby] - [#21175]) ([light.flux_led docs]) (beta fix) - Fix for #19072 ([@sjabby] - [#21175]) ([light.flux_led docs]) (beta fix)
- Upgrade aioimaplib for Python 3.7 compatibility ([@amelchio] - [#21197]) ([sensor.imap docs]) (beta fix) - Upgrade aioimaplib for Python 3.7 compatibility ([@amelchio] - [#21197]) ([sensor.imap docs]) (beta fix)
- ordered by last occurence ([@dgomes] - [#21200]) ([system_log docs]) (beta fix) - ordered by last occurrence ([@dgomes] - [#21200]) ([system_log docs]) (beta fix)
- Set aioharmony version to 0.1.8 ([@ehendrix23] - [#21213]) ([harmony docs]) (breaking change) (beta fix) - Set aioharmony version to 0.1.8 ([@ehendrix23] - [#21213]) ([harmony docs]) (breaking change) (beta fix)
- Push pyads to 3.0.7 ([@carstenschroeder] - [#21216]) ([ads docs]) (beta fix) - Push pyads to 3.0.7 ([@carstenschroeder] - [#21216]) ([ads docs]) (beta fix)
- Refactor ZHA listeners into channels ([@dmulcahey] - [#21196]) ([zha docs]) (beta fix) - Refactor ZHA listeners into channels ([@dmulcahey] - [#21196]) ([zha docs]) (beta fix)

View File

@ -351,7 +351,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Avoid recorder thread crashing ([@balloob] - [#21668]) (beta fix) - Avoid recorder thread crashing ([@balloob] - [#21668]) (beta fix)
- check we have a tb ([@dgomes] - [#21670]) ([system_log docs]) (beta fix) - check we have a tb ([@dgomes] - [#21670]) ([system_log docs]) (beta fix)
- Fix ADS race condition ([@carstenschroeder] - [#21677]) ([ads docs]) (beta fix) - Fix ADS race condition ([@carstenschroeder] - [#21677]) ([ads docs]) (beta fix)
- resync hass that changes have occured ([@fredrike] - [#21705]) ([tellduslive docs]) (beta fix) - resync hass that changes have occurred ([@fredrike] - [#21705]) ([tellduslive docs]) (beta fix)
- Upgrade toonapilib to 3.2.1 ([@frenck] - [#21706]) ([toon docs]) (beta fix) - Upgrade toonapilib to 3.2.1 ([@frenck] - [#21706]) ([toon docs]) (beta fix)
[#18091]: https://github.com/home-assistant/home-assistant/pull/18091 [#18091]: https://github.com/home-assistant/home-assistant/pull/18091

View File

@ -24,7 +24,7 @@ We're still in the process of updating more cameras to support the stream compon
A BIG shout to [@awarecan], who has migrated our CI infrastructure to [CircleCI](https://www.circleci.com) and [Codecov](https://codecov.io/). CircleCI's advanced caching and code splitting controls has speed up tests significantly. Codecov tracks our code coverage and generates detailed reports for each contribution to see how well it is tested. A BIG shout to [@awarecan], who has migrated our CI infrastructure to [CircleCI](https://www.circleci.com) and [Codecov](https://codecov.io/). CircleCI's advanced caching and code splitting controls has speed up tests significantly. Codecov tracks our code coverage and generates detailed reports for each contribution to see how well it is tested.
And in case you missed the announcement, we will soon start working on [an official Android app](/blog/2019/04/01/android/). And in case it wasn't clear, our other announcement, that we would [occassionally show ads in the UI](https://twitter.com/home_assistant/status/1112752645763223552), was an April fools joke 😁. And in case you missed the announcement, we will soon start working on [an official Android app](/blog/2019/04/01/android/). And in case it wasn't clear, our other announcement, that we would [occasionally show ads in the UI](https://twitter.com/home_assistant/status/1112752645763223552), was an April fools joke 😁.
## Notable breaking change ## Notable breaking change
@ -272,7 +272,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- Tibber, Add price level ([@Danielhiversen] - [#22085]) ([tibber docs]) - Tibber, Add price level ([@Danielhiversen] - [#22085]) ([tibber docs])
- Fix AttributeError traceback with darksky ([@iamtpage] - [#22101]) ([darksky docs]) - Fix AttributeError traceback with darksky ([@iamtpage] - [#22101]) ([darksky docs])
- Add service description for services. ([@cgtobi] - [#21897]) - Add service description for services. ([@cgtobi] - [#21897])
- Handle occassional 502 Bad Gateway from SimpliSafe ([@bachya] - [#22131]) ([simplisafe docs]) - Handle occasional 502 Bad Gateway from SimpliSafe ([@bachya] - [#22131]) ([simplisafe docs])
- Loosen field retrieval from Pollen.com ([@bachya] - [#22132]) ([pollen docs]) - Loosen field retrieval from Pollen.com ([@bachya] - [#22132]) ([pollen docs])
- Handle possible exception during Ambient PWS reconnect ([@bachya] - [#22134]) ([ambient_station docs]) - Handle possible exception during Ambient PWS reconnect ([@bachya] - [#22134]) ([ambient_station docs])
- Additional sensors and fixed icons, attributes and device classes. ([@endor-force] - [#22139]) ([trafikverket_weatherstation docs]) - Additional sensors and fixed icons, attributes and device classes. ([@endor-force] - [#22139]) ([trafikverket_weatherstation docs])
@ -303,7 +303,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- add ZHA channel name property ([@Adminiuga] - [#22218]) ([zha docs]) - add ZHA channel name property ([@Adminiuga] - [#22218]) ([zha docs])
- Handle on/off through TemperatrureSetting trait. ([@Swamp-Ig] - [#21842]) ([google_assistant docs]) - Handle on/off through TemperatrureSetting trait. ([@Swamp-Ig] - [#21842]) ([google_assistant docs])
- Change .now() to .utcnow() ([@rdbahm] - [#22233]) ([season docs]) - Change .now() to .utcnow() ([@rdbahm] - [#22233]) ([season docs])
- Upgrade tibber libary, support solar production ([@Danielhiversen] - [#22261]) ([tibber docs]) - Upgrade tibber library, support solar production ([@Danielhiversen] - [#22261]) ([tibber docs])
- Upgrade sqlalchemy to 1.3.0 ([@fabaff] - [#22269]) ([recorder docs]) ([sql docs]) - Upgrade sqlalchemy to 1.3.0 ([@fabaff] - [#22269]) ([recorder docs]) ([sql docs])
- Plex: Avoid refreshing by both device and session methods ([@jjlawren] - [#22266]) ([plex docs]) - Plex: Avoid refreshing by both device and session methods ([@jjlawren] - [#22266]) ([plex docs])
- Bump androidtv to 0.0.13 ([@JeffLIrion] - [#22279]) ([androidtv docs]) - Bump androidtv to 0.0.13 ([@JeffLIrion] - [#22279]) ([androidtv docs])

View File

@ -81,7 +81,7 @@ We wrote about how we use Azure DevOps to automate the development of Home Assis
## Release 0.97.1 - August 9 ## Release 0.97.1 - August 9
A new breaking change was introduced with 0.97.1 to accomodate for the HaveIBeenPwned shutting down v2 of their API on August 18. The integration has been migrated to using v3. A new breaking change was introduced with 0.97.1 to accommodate for the HaveIBeenPwned shutting down v2 of their API on August 18. The integration has been migrated to using v3.
- Update HIBP sensor to use API v3 and API Key ([@aetaric] - [#25699]) ([haveibeenpwned docs]) (breaking change) - Update HIBP sensor to use API v3 and API Key ([@aetaric] - [#25699]) ([haveibeenpwned docs]) (breaking change)
- Update Cisco Mobility Express module version ([@fbradyirl] - [#25770]) ([cisco_mobility_express docs]) - Update Cisco Mobility Express module version ([@fbradyirl] - [#25770]) ([cisco_mobility_express docs])

View File

@ -71,7 +71,7 @@ For more background on this decision, see [ADR-006](https://github.com/home-assi
With this release we have deprecated integrations that rely on webscraping. These will be removed from Home Assistant in a future release. Our [scrape](/integrations/scrape/) integration will remain part of Home Assistant. With this release we have deprecated integrations that rely on webscraping. These will be removed from Home Assistant in a future release. Our [scrape](/integrations/scrape/) integration will remain part of Home Assistant.
Webscraping is fragile, breaks often requires frequent updates and there have been occassions where websites have banned our users. Webscraping is fragile, breaks often requires frequent updates and there have been occasions where websites have banned our users.
Users that rely on these integrations can continue using them as custom components. Users that rely on these integrations can continue using them as custom components.

View File

@ -279,7 +279,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
- **OpenTherm** - Move climate entity state to hvac_action attribute to comply with climate 1.0. May break e.g. automations. - ([@mvn23] - [#25931]) ([opentherm_gw docs]) - **OpenTherm** - Move climate entity state to hvac_action attribute to comply with climate 1.0. May break e.g. automations. - ([@mvn23] - [#25931]) ([opentherm_gw docs])
- **Genius Hub** - Users connecting to a Hub via the v1 API will need to specify a valid MAC address for the hub (see example YAML, below). Those using the v3 API will be unaffected. - **Genius Hub** - Users connecting to a Hub via the v1 API will need to specify a valid MAC address for the hub (see example YAML, below). Those using the v3 API will be unaffected.
This change is in preperation for for further changes, so the geniushub entities can be given more appropriate `entity_ids`. This change is in preparation for for further changes, so the geniushub entities can be given more appropriate `entity_ids`.
Some Sensor entities fro GeniusHub Issues have been renamed, and so will get a new entity ID: Some Sensor entities fro GeniusHub Issues have been renamed, and so will get a new entity ID:

View File

@ -0,0 +1,29 @@
---
layout: post
title: "Home Assistant Companion for Android 1.5.0"
description: "Today we're releasing a big update for our Android companion app including widgets, fullscreen and Android TV support."
date: 2020-01-28 00:00:00
date_formatted: "January 28, 2020"
author: Paulus Schoutsen
author_twitter: balloob
comments: true
categories: Release-Notes
---
Today we're releasing Home Assistant Companion for Android 1.5.0. This is a great release with some cool new features and new collaborators joining in on the fun!
Big thanks in this release goes to our Android lead [@JBassett] who has been squashing a ton of bugs, added support for the status bar to adopt the application theme and fixed finding existing Home Assistant instances on the network.
A cool new feature that has been added is a new home screen widget. Use it to quickly trigger your favorite scripts, scenes or any other service in Home Assistant. Thanks to [@KBerstene] for the initial implementation and [@JBassett] for polishing the configuration screen.
For all you people that want to run the Home Assistant app on a tablet on the wall, good news! Thanks to [@neopilou] there is now a new option to make the app full screen.
To get the most out of our apps for Android and iOS, check the [Home Assistant Companion website](https://companion.home-assistant.io/).
Enjoy the new release! Don't forget to leave a rating if you like the app, it will help other users find the app.
<a href="https://play.google.com/store/apps/details?id=io.homeassistant.companion.android"><img alt="Get it on Google Play" src="https://play.google.com/intl/en_gb/badges/static/images/badges/en_badge_web_generic.png" width="155" style='border: 0;box-shadow: none;'></a>
[@KBerstene]: https://github.com/KBerstene
[@JBassett]: https://github.com/JBassett
[@neopilou]: https://github.com/neopilou

View File

@ -197,7 +197,7 @@ curl -sL "https://raw.githubusercontent.com/home-assistant/hassio-installer/mast
- `qemux86` - `qemux86`
- `qemux86-64` - `qemux86-64`
See the [hassio-installer](https://github.com/home-assistant/hassio-installer) Github page for an up-to-date listing of supported machine types. See the [hassio-installer](https://github.com/home-assistant/hassio-installer) GitHub page for an up-to-date listing of supported machine types.
<div class='note'> <div class='note'>
When you use this installation method, the core SSH add-on may not function correctly. If that happens, use the community SSH add-on. Some of the documentation might not work for your installation either. When you use this installation method, the core SSH add-on may not function correctly. If that happens, use the community SSH add-on. Some of the documentation might not work for your installation either.

View File

@ -6,36 +6,36 @@ sidebar: false
This page contains only irrelevant and unhelpful information about Home Assistant. If you are going to prepare a talk about Home Assistant, perhaps some information mentioned here can be used for the intro. This page contains only irrelevant and unhelpful information about Home Assistant. If you are going to prepare a talk about Home Assistant, perhaps some information mentioned here can be used for the intro.
### Name ## Name
Isn't it obvious? Home Assistant is the good soul that is assisting you in your home. It's common to refer to Home Assistant simply as HA or `hass` (not to be confused with the German word "Hass", it's more like the abbreviation of **H**ome **A**ssistant **S**erver **S**ervice). [`hass`](/docs/tools/hass/) is also the name of the command-line part. Isn't it obvious? Home Assistant is the good soul that is assisting you in your home. It's common to refer to Home Assistant simply as HA or `hass` (not to be confused with the German word "Hass", it's more like the abbreviation of **H**ome **A**ssistant **S**erver **S**ervice). [`hass`](/docs/tools/hass/) is also the name of the command-line part.
### Website ## Website
The website [https://www.home-assistant.io](/) was launched on December 18, 2014 and contains documentation about the setup process, the platforms and integrations, and for the developers. The website [https://www.home-assistant.io](/) was launched on December 18, 2014 and contains documentation about the setup process, the platforms and integrations, and for the developers.
### Logo ## Logo
The current logo was created by [Jeremy Geltman](http://jeremygeltman.com/). Further details can be found in the [announcement](/blog/2015/03/08/new-logo/). The current logo was created by [Jeremy Geltman](http://jeremygeltman.com/). Further details can be found in the [announcement](/blog/2015/03/08/new-logo/).
### License ## License
Home Assistant is open source software and available under the [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0) license. Home Assistant is open source software and available under the [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0) license.
### Numbers ## Numbers
This sections just contains some random numbers of the Home Assistant eco-system. Sorry, only the main repository counts. This sections just contains some random numbers of the Home Assistant eco-system. Sorry, only the main repository counts.
| Description | 2015 | 2016 | 2017 | | Description | 2015 | 2016 | 2017 |
|---|---| | --------------------------------------------------------------------------- | ------- | --------- | ---------- |
| [Forum posts](https://community.home-assistant.io/) | 352 | 33004 | 171981 | | [Forum posts](https://community.home-assistant.io/) | 352 | 33004 | 171981 |
| [Forum topics](https://community.home-assistant.io/) | 83 | 4863 | 21512 | | [Forum topics](https://community.home-assistant.io/) | 83 | 4863 | 21512 |
| [Forum members](https://community.home-assistant.io/) | 92 | 3931 | 16663 | | [Forum members](https://community.home-assistant.io/) | 92 | 3931 | 16663 |
| [Github stars](https://github.com/home-assistant/home-assistant/stargazers) | 2519 | 5239 | 12074 | | [GitHub stars](https://github.com/home-assistant/home-assistant/stargazers) | 2519 | 5239 | 12074 |
| [Github forks](https://github.com/home-assistant/home-assistant/network) | 374 | 1424 | 3474 | | [GitHub forks](https://github.com/home-assistant/home-assistant/network) | 374 | 1424 | 3474 |
| Page views [ha.io](/) | 600,372 | 6,614,343 | 23,727,481 | | Page views [ha.io](/) | 600,372 | 6,614,343 | 23,727,481 |
### Commit per year ## Commit per year
The numbers below only covers the [main git repository](https://github.com/home-assistant/home-assistant/) and doesn't take the helpers ([home-assistant.io](https://github.com/home-assistant/home-assistant.io), [home-assistant-polymer](https://github.com/home-assistant/home-assistant-polymer), etc.) into account. The numbers below only covers the [main git repository](https://github.com/home-assistant/home-assistant/) and doesn't take the helpers ([home-assistant.io](https://github.com/home-assistant/home-assistant.io), [home-assistant-polymer](https://github.com/home-assistant/home-assistant-polymer), etc.) into account.
@ -47,13 +47,13 @@ The numbers below only covers the [main git repository](https://github.com/home-
2017: 3917 2017: 3917
``` ```
More details and statistics can be found on [Github](https://github.com/home-assistant/home-assistant/graphs/contributors). More details and statistics can be found on [GitHub](https://github.com/home-assistant/home-assistant/graphs/contributors).
### First commit ## First commit
The first commit in `git` was made on Sep 17, 2013 by [Paulus Schoutsen](https://github.com/balloob). The first commit in `git` was made on Sep 17, 2013 by [Paulus Schoutsen](https://github.com/balloob).
```bash ```txt
commit d55e4d53cccc9123d03f45c53441e7cbfc58e515 commit d55e4d53cccc9123d03f45c53441e7cbfc58e515
Author: Paulus Schoutsen <Paulus@PaulusSchoutsen.nl> Author: Paulus Schoutsen <Paulus@PaulusSchoutsen.nl>

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

View File

@ -30,10 +30,10 @@ description: "Changelog of the Lovelace UI."
- ❤️ [horizontal stack card]: New `title` option [#3839](https://github.com/home-assistant/home-assistant-polymer/pull/3839) @iantrich - ❤️ [horizontal stack card]: New `title` option [#3839](https://github.com/home-assistant/home-assistant-polymer/pull/3839) @iantrich
- ❤️ New `double_tap_action` option [#3879](https://github.com/home-assistant/home-assistant-polymer/pull/3879) @iantrich - ❤️ New `double_tap_action` option [#3879](https://github.com/home-assistant/home-assistant-polymer/pull/3879) @iantrich
- ❤️ New `confirmation` option for actions [#4006](https://github.com/home-assistant/home-assistant-polymer/pull/4006) @iantrich - ❤️ New `confirmation` option for actions [#4006](https://github.com/home-assistant/home-assistant-polymer/pull/4006) @iantrich
- ❤️ Theming: New CSS switch sytle: `switch-checked-color` [#4017](https://github.com/home-assistant/home-assistant-polymer/pull/4017) @iantrich - ❤️ Theming: New CSS switch style: `switch-checked-color` [#4017](https://github.com/home-assistant/home-assistant-polymer/pull/4017) @iantrich
- ❤️ Theming: New CSS switch sytle: `switch-unchecked-color` [#4017](https://github.com/home-assistant/home-assistant-polymer/pull/4017) @iantrich - ❤️ Theming: New CSS switch style: `switch-unchecked-color` [#4017](https://github.com/home-assistant/home-assistant-polymer/pull/4017) @iantrich
- ❤️ Theming: New CSS switch sytle: `switch-unchecked-button-color` [#4017](https://github.com/home-assistant/home-assistant-polymer/pull/4017) @iantrich - ❤️ Theming: New CSS switch style: `switch-unchecked-button-color` [#4017](https://github.com/home-assistant/home-assistant-polymer/pull/4017) @iantrich
- ❤️ Theming: New CSS switch sytle: `switch-unchecked-track-color` [#4017](https://github.com/home-assistant/home-assistant-polymer/pull/4017) @iantrich - ❤️ Theming: New CSS switch style: `switch-unchecked-track-color` [#4017](https://github.com/home-assistant/home-assistant-polymer/pull/4017) @iantrich
- 📣 Upgrade MDI icons to 4.5.95 [#3977](https://github.com/home-assistant/home-assistant-polymer/pull/3977) @bonanitech - 📣 Upgrade MDI icons to 4.5.95 [#3977](https://github.com/home-assistant/home-assistant-polymer/pull/3977) @bonanitech
- 📣 Display card errors in YAML instead of JSON [#4018](https://github.com/home-assistant/home-assistant-polymer/pull/4018) @iantrich - 📣 Display card errors in YAML instead of JSON [#4018](https://github.com/home-assistant/home-assistant-polymer/pull/4018) @iantrich
- ⚠️ revert lovelace selectable text [#4095](https://github.com/home-assistant/home-assistant-polymer/pull/4095) @iantrich - ⚠️ revert lovelace selectable text [#4095](https://github.com/home-assistant/home-assistant-polymer/pull/4095) @iantrich