Merge branch 'current' into next

This commit is contained in:
Fabian Affolter 2019-04-04 08:37:23 -04:00
commit 6c7cde5815
No known key found for this signature in database
GPG Key ID: E23CD2DD36A4397F
24 changed files with 947 additions and 1027 deletions

View File

@ -1,43 +0,0 @@
---
layout: page
title: "Concord232 Alarm Control Panel"
description: "Instructions on how to integrate Interlogix/GE Concord4 with RS-232 Automation Control Module into Home Assistant."
date: 2016-10-11 10:00
sidebar: true
comments: false
sharing: true
footer: true
logo: interlogix.png
ha_category: Alarm
ha_release: 0.31
---
The `concord232` platform provides integration with GE, Interlogix (and other brands) alarm panels that support the RS-232 Automation Control Panel interface module (or have it built in). Supported panels include Concord 4.
To use this platform, you will need to have the external concord232 client and server installed.
The server must be running on the device which is connected to the automation module's serial port.
The client must be installed on the machine running Home Assistant. These may often be the same machine, but do not have to be.
For additional details in setting up and testing the client and server, see <https://github.com/JasonCarter80/concord232>.
## {% linkable_title Configuration %}
To enable this platform in Home Assistant, add the following lines to your `configuration.yaml`:
```yaml
# Example configuration.yaml entry
alarm_control_panel:
- platform: concord232
```
{% configuration %}
host:
description: The host where the concord232 server process is running.
required: false
type: string
default: localhost
port:
description: The port where the Alarm panel is listening.
required: false
type: integer
default: 5007
{% endconfiguration %}

View File

@ -1,23 +1,35 @@
--- ---
layout: page layout: page
title: "aREST Binary Sensor" title: "aREST"
description: "Instructions on how to integrate aREST binary sensors within Home Assistant." description: "Instructions on how to integrate aREST within Home Assistant."
date: 2015-11-20 18:15 date: 2015-11-20 18:15
sidebar: true sidebar: true
comments: false comments: false
sharing: true sharing: true
footer: true footer: true
logo: arest.png logo: arest.png
ha_category: DIY ha_category:
- DIY
- Binary Sensor
- Sensor
- Switch
ha_iot_class: Local Polling ha_iot_class: Local Polling
ha_release: 0.9 ha_release: 0.9
redirect_from: redirect_from:
- /components/binary_sensor.arest/ - /components/binary_sensor.arest/
- /components/sensor.arest/
- /components/switch.arest/
--- ---
The `arest` binary sensor platform allows you to get all data from your devices (like Arduinos with an ethernet/wifi connection, the ESP8266, and the Raspberry Pi) running the [aREST](http://arest.io/) RESTful framework. There is currently support for the following device types within Home Assistant:
## {% linkable_title Configuration %} - [Binary Sensor](#binary-sensor)
- [Sensor](#sensor)
- [Switch](#switch)
## {% linkable_title Binary Sensor %}
The `arest` binary sensor platform allows you to get all data from your devices (like Arduinos with an ethernet/wifi connection, the ESP8266, and the Raspberry Pi) running the [aREST](http://arest.io/) RESTful framework.
To use your aREST binary sensor in your installation, add the following to your `configuration.yaml` file: To use your aREST binary sensor in your installation, add the following to your `configuration.yaml` file:
@ -65,3 +77,178 @@ binary_sensor:
<p class='note'> <p class='note'>
This sensor is not suitable for fast state changes because there is a high possibility that the change took place between two update cycle. This sensor is not suitable for fast state changes because there is a high possibility that the change took place between two update cycle.
</p> </p>
## {% linkable_title Sensor %}
The `arest` sensor platform allows you to get all data from your devices (like Arduinos with a Ethernet/Wifi connection, the ESP8266, and the Raspberry Pi) running the [aREST](http://arest.io/) RESTful framework.
To use your aREST enabled device in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: arest
resource: https://IP_ADDRESS
monitored_variables:
temperature:
name: temperature
pins:
A0:
name: Pin 0 analog
```
{% configuration %}
resource:
description: "IP address and schema of the device that is exposing an aREST API, e.g., https://192.168.1.10."
required: true
type: string
name:
description: Let you overwrite the name of the device.
required: false
default: aREST sensor
type: string
pins:
description: List of pins to monitor. Analog pins need a leading **A** for the pin number.
required: false
type: list
keys:
pin:
description: Pin number to use.
required: true
type: list
keys:
name:
description: The name of the variable you wish to monitor.
required: true
type: string
unit_of_measurement:
description: Defines the unit of measurement of the sensor, if any.
required: false
type: string
value_template:
description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload.
required: false
type: template
monitored_variables:
description: List of exposed variables.
required: false
type: list
keys:
variable:
description: Name of the variable to monitor.
required: true
type: list
keys:
name:
description: The name to use for the frontend.
required: false
type: string
unit_of_measurement:
description: Defines the units of measurement of the sensor, if any.
required: false
type: string
value_template:
description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload.
required: false
type: template
{% endconfiguration %}
The variables in the `monitored_variables` array must be available in the response of the device. As a starting point you could use the one of the example sketches (eg. [Ethernet](https://raw.githubusercontent.com/marcoschwartz/aREST/master/examples/Ethernet/Ethernet.ino) for an Arduino with Ethernet shield). In those sketches are two variables (`temperature` and `humidity`) available which will act as endpoints.
Accessing one of the endpoints (eg. http://192.168.1.10/temperature) will give you the value inside a JSON response.
```json
{"temperature": 23, "id": "sensor01", "name": "livingroom", "connected": true}
```
The root will give you a JSON response that contains all variables and their current values along with some device details.
```json
{
"variables" : {
"temperature" : 23,
"humidity" : 82
},
"id" : "sensor01",
"name" : "livingroom",
"connected" : true
}
```
`return_value` contains the sensor's data in a JSON response for a given pin (eg. http://192.168.1.10/analog/2/ or http://192.168.1.10/digital/7/).
```json
{"return_value": 34, "id": "sensor02", "name": "livingroom", "connected": true}
```
## {% linkable_title Switch %}
The `arest` switch platform allows you to toggle pins of your devices (like Arduino boards with an Ethernet/Wifi connection, ESP8266 based devices, and the Raspberry Pi) running the [aREST](http://arest.io/) RESTful framework.
To use your aREST enabled device with pins in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
switch:
- platform: arest
resource: http://IP_ADDRESS
pins:
11:
name: Fan
13:
name: Switch
invert: true
```
If you want to use custom functions, then add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
switch:
- platform: arest
resource: http://IP_ADDRESS
name: Office
functions:
function1:
name: Light Desk
```
{% configuration %}
resource:
description: IP address and schema of the device that is exposing an aREST API, e.g., `http://192.168.1.10` (no-trailing slash)
required: true
type: string
name:
description: Let you overwrite the name of the device. By default *name* from the device is used.
required: optional
type: string
pins:
description: An array with all used pins.
required: false
type: map
keys:
name:
description: The name of the pin to use in the frontend.
required: true
type: string
invert:
description: If the logic for on/off should be inverted.
required: false
type: boolean
default: false
functions:
description: An array with all used functions.
required: false
type: map
keys:
name:
description: The name to use in the frontend.
required: true
type: string
{% endconfiguration %}
You can still switch your pins with a web browser or a command line tool. Use the URL `http://192.168.1.10/digital/8/1` to set pin 8 to high/on, the JSON response will give you the feedback.
```json
{"message": "Pin D8 set to 1", "id": "sensor02", "name": "livingroom", "connected": true}
```

View File

@ -1,27 +1,69 @@
--- ---
layout: page layout: page
title: "Bbox Sensor" title: "Bbox"
description: "How to integrate Bbox Bandwidth measuring within Home Assistant." description: "Instructions on how to integrate Bouygues Bbox routers into Home Assistant."
date: 2016-10-22 01:00 date: 2016-10-22 01:00
sidebar: true sidebar: true
comments: false comments: false
sharing: true sharing: true
footer: true footer: true
logo: bbox.png logo: bbox.png
ha_category: Network ha_category:
- Network
- Sensor
- Presence Detection
ha_release: 0.31 ha_release: 0.31
ha_iot_class: Local Push ha_iot_class: Local Polling
redirect_from: redirect_from:
- /components/sensor.bbox/ - /components/sensor.bbox/
- /components/device_tracker.bbox/
--- ---
The `bbox` platform uses the [Bbox Modem Router](https://fr.wikipedia.org/wiki/Bbox/) from the French Internet provider Bouygues Telecom. Sensors are mainly bandwidth measures. The `bbox` platform uses the [Bbox Modem Router](https://fr.wikipedia.org/wiki/Bbox/) from the French Internet provider Bouygues Telecom. Sensors are mainly bandwidth measures.
There is currently support for the following device types within Home Assistant:
- [Presence Detection](#presence-detection)
- [Sensor](#sensor)
<p class='note warning'> <p class='note warning'>
Due to third party limitation, the sensors will only be available if Home Assistant and the Bbox are on the same local area network. You can check this by going to 192.168.1.254 with your web browser. Due to third party limitation, the sensors will only be available if Home Assistant and the Bbox are on the same local area network. You can check this by going to 192.168.1.254 with your web browser.
</p> </p>
## {% linkable_title Configuration %} ## {% linkable_title Presence Detection %}
The `bbox` platform offers presence detection by looking at connected devices to a [Bbox](https://fr.wikipedia.org/wiki/Bbox) based router from [Bouygues](https://www.bouyguestelecom.fr/), which is one of the main Internet provider in France.
Bbox is a generic name for different hardware routers. The platform has been tested with the following devices:
- Sagem F@st 5330b
### {% linkable_title Configuration %}
To use an Bbox router in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: bbox
```
{% configuration %}
host:
description: IP address of your Bbox device.
required: false
type: string
default: 192.168.1.254
{% endconfiguration %}
<p class='note warning'>
For now and due to third party limitation, the Bbox must be on the same local network as the Home Assistant installation.
</p>
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.
## {% linkable_title Sensor %}
To add Bbox sensors to your installation, add the following to your `configuration.yaml` file: To add Bbox sensors to your installation, add the following to your `configuration.yaml` file:
@ -55,4 +97,4 @@ monitored_variables:
description: Instant measure of the current used bandwidth for download. description: Instant measure of the current used bandwidth for download.
current_up_bandwidth: current_up_bandwidth:
description: Instant measure of the current used bandwidth for upload. description: Instant measure of the current used bandwidth for upload.
{% endconfiguration %} {% endconfiguration %}

View File

@ -1,93 +0,0 @@
---
layout: page
title: "myStrom Binary Sensor"
description: "Instructions on how to integrate myStrom buttons into Home Assistant."
date: 2017-04-14 08:15
sidebar: true
comments: false
sharing: true
footer: true
logo: mystrom.png
ha_category: Binary Sensor
ha_iot_class: Local Polling
ha_release: 0.45
---
The `mystrom` binary sensor platform allows you to use [myStrom Wifi Buttons](https://mystrom.ch/wifi-button/) with Home Assistant. The myStrom Wifi Buttons support three and the myStrom WiFi Button + four different push pattern:
- `single`: Short push (approx. 1/2 seconds)
- `double`: 2x sequential short pushes (within 2 seconds)
- `long`: Long push (approx. 2 seconds)
- `touch`: Touch of the button's surface (only affective for WiFi Button +)
The first usage of the pattern will create the binary sensor for the pattern. If the WiFi Button is pushed one time then a binary sensor for the `single` pattern will be created. The same applies for the other patterns. With the second usage of the pattern the binary sensors become fully functional.
The buttons will give you feedback with its built-in LED:
- white then green: Pattern was submitted successfully
- white then red: There is a problem with the communication
### {% linkable_title Setup of myStrom Buttons %}
You need to configure every button to make it work with Home Assistant. First connect the Wifi Buttons to your wireless network. Once a button is connected you have three minutes to set the actions for the push patterns if the button is not charging. The fastest way is to use `curl`. Check the [documentation](https://mystrom.ch/wp-content/uploads/REST_API_WBP.txt) of the WiFi Button for further details about the implementation (`http://` is replaced by `get://` or `post://`). `action` is the name of the corresponding push pattern (see above).
The endpoint that is receiving the data is `http://[IP address Home Assistant]:8123/api/mystrom`. If you have set an [`api_password`](/components/http/) then this needs to be included in the URL.
With `api_password:`
```
$ curl -d "[action]=get://[IP address Home Assistant]:8123/api/mystrom?api_password%3D[api_password]%26[action]%3D[ID of the button]" \
http://[IP address of the button]/api/v1/device/[MAC address of the button]
```
Without `api_password`:
```bash
$ curl -d "[action]=get://[IP address Home Assistant]:8123/api/mystrom?[action]%3D[ID of the button]" \
http://[IP address of the button]/api/v1/device/[MAC address of the button]
{
"[MAC address of the button]": {
"type": "button",
"battery": true,
"reachable": true,
"meshroot": false,
"charge": true,
"voltage": 4.292,
"fw_version": "2.56",
"single": "get://[IP address Home Assistant]:8123/api/mystrom?single=[id of the button]",
"double": "",
"long": "",
"touch": ""
}
}
```
A complete command to set the URL for a double click could look like the example below:
```bash
$ curl -d "double=get://192.168.1.3:8123/api/mystrom?double%3DButton1" http://192.168.1.12/api/v1/device/4D5F5D5CD553
```
With an `api_password`:
```bash
curl -d "double=get://192.168.1.3:8123/api/mystrom?api_password%3Dapi_password%26double%3DButton1" http://192.168.1.12/api/v1/device/4D5F5D5CD553
```
The command-line tool [`mystrom`](https://github.com/fabaff/python-mystrom) is a helper to configure myStrom buttons.
If you have set [`login_attempts_threshold`](/components/http/) and forget to include the `api_password` for an action and that action is triggered then after the threshold is reached will the button no longer work because it is banned. See [IP filtering and banning](/components/http/#ip-filtering-and-banning) about how to revert the banning.
## {% linkable_title Configuration %}
To use your myStrom WiFi Button in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
binary_sensor:
- platform: mystrom
```
<p class='note'>
The firmware version 2.56 doesn't support TLS/SSL. This means that you are only able to use the WiFi Buttons if you are using plain-text communication between Home Assistant and the clients/entities.
</p>

View File

@ -1,82 +0,0 @@
---
layout: page
title: NX584 zones
description: "Instructions on how to set up nx584 zones as sensors"
date: 2016-02-18 20:47
sidebar: true
comments: false
sharing: true
footer: true
logo: networx.png
ha_category: Binary Sensor
ha_iot_class: Local Push
ha_release: 0.14
---
The `nx584` platform provides integration with GE, Caddx, Interlogix (and other brands) alarm panels that support the NX584 interface module (or have it built in). Supported panels include NX4/6/8/8E. Actual integration is done through [pynx584](http://github.com/kk7ds/pynx584) which is required for this to work.
Enabling this sensor platform exposes all of your zones as binary sensors, which provides visibility through the UI as well as the ability to trigger automation actions instantly when something happens like a door opening, or a motion sensor trigger.
## {% linkable_title Configuration %}
To enable this feature, add the following lines to your `configuration.yaml`:
```yaml
# Example configuration.yaml entry
binary_sensor:
platform: nx584
```
{% configuration %}
host:
description: This is the host where the nx584 server process is running. If unset, it is assumed to be `localhost`, which will work if the server process is running on the same system as Home Assistant.
required: false
type: string
default: localhost
port:
description: The port where the server process is running.
required: false
type: integer
default: 5007
exclude_zones:
description: This is a list of zone numbers that should be excluded. Use this to avoid exposing a zone that is of no interest, unconnected, etc.
required: false
type: [list, integer]
zone_types:
description: This is a list of zone numbers mapped to zone types. Use this to designate zones as doors, motion sensors, smoke detectors, etc. See the list of available zone types relevant to alarm zones below.
required: false
type: map
keys:
opening:
description: Opening
motion:
description: Motion
gas:
description: Gas
smoke:
description: Smoke
moisture:
description: Moisture
safety:
description: Safety
{% endconfiguration %}
## {% linkable_title Full example %}
An extended configuration entry could look like this:
```yaml
# Full example configuration.yaml entry
binary_sensor:
platform: nx584
host: 192.168.1.10
port: 5007
exclude_zones:
- 3
- 5
zone_types:
1: opening
2: opening
4: motion
6: moisture
```

View File

@ -8,15 +8,22 @@ comments: false
sharing: true sharing: true
footer: true footer: true
logo: bom.png logo: bom.png
ha_category: Weather ha_category:
- Weather
- Sensor
ha_release: 0.36 ha_release: 0.36
ha_iot_class: Cloud Polling ha_iot_class: Cloud Polling
redirect_from: redirect_from:
- /components/weather.bom/ - /components/weather.bom/
- /components/sensor.bom/
--- ---
The `bom` weather platform uses the [Australian Bureau of Meteorology (BOM)](http://www.bom.gov.au) as a source for current (half-hourly) meteorological data. The `bom` weather platform uses the [Australian Bureau of Meteorology (BOM)](http://www.bom.gov.au) as a source for current (half-hourly) meteorological data.
There is currently support for the following device types within Home Assistant:
- [Sensor](#sensor)
## {% linkable_title Configuration %} ## {% linkable_title Configuration %}
To add the BOM weather platform to your installation, add the following to your `configuration.yaml` file: To add the BOM weather platform to your installation, add the following to your `configuration.yaml` file:
@ -33,13 +40,138 @@ name:
required: optional required: optional
type: string type: string
station: station:
description: "The station ID string. See the [`sensor.bom` docs](/components/sensor.bom/) for details on how to find the ID of a station." description: "The station ID string. See the [`sensor.bom` docs](#sensor) for details on how to find the ID of a station."
required: optional required: optional
type: string type: string
default: The closest station default: The closest station
{% endconfiguration %} {% endconfiguration %}
<p class='note'> <p class='note'>
This platform is an alternative to the [`bom`](/components/sensor.bom/) sensor. This platform is an alternative to the [`bom`](#sensor) sensor.
The weather platform is easier to configure but less customizable. The weather platform is easier to configure but less customizable.
</p> </p>
## {% linkable_title Sensor %}
The `bom` sensor platform uses the [Australian Bureau of Meteorology (BOM)](http://www.bom.gov.au) as a source for current (half-hourly) meteorological data.
- Each sensor will be given the `device_id` of "bom [optionalname] friendlyname units"
- A name is optional but if multiple BOM weather stations are used a name will be required.
- The sensor checks for new data every minute, starting 30 minutes after the timestamp of the most recent data as the data is updated every half-hour.
To add the BOM weather observation to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: bom
monitored_conditions:
- apparent_t
- cloud
- cloud_base_m
- cloud_oktas
- cloud_type_id
- cloud_type
- delta_t
- gust_kmh
- gust_kt
- air_temp
- dewpt
- local_date_time
- local_date_time_full
- press
- press_qnh
- press_msl
- press_tend
- rain_trace
- rel_hum
- sea_state
- swell_dir_worded
- swell_height
- swell_period
- vis_km
- weather
- wind_dir
- wind_spd_kmh
- wind_spd_kt
```
To get the station ID for any BOM station:
- Find your station on these maps: [NSW](http://www.bom.gov.au/nsw/observations/map.shtml), [QLD](http://www.bom.gov.au/qld/observations/map.shtml), [VIC](http://www.bom.gov.au/vic/observations/map.shtml), [WA](http://www.bom.gov.au/wa/observations/map.shtml), [SA](http://www.bom.gov.au/sa/observations/map.shtml), [TAS](http://www.bom.gov.au/tas/observations/map.shtml), [ACT](http://www.bom.gov.au/act/observations/canberramap.shtml), [NT](http://www.bom.gov.au/nt/observations/map.shtml).
- alternatively, from the [BOM website](http://www.bom.gov.au/), navigate to State -> Observations -> Latest Observations -> Choose the station.
- The URL will look like: http://www.bom.gov.au/products/IDx60801/[station].shtml
- For Adelaide, the URL will look like `http://www.bom.gov.au/products/IDS60801/IDS60801.94675.shtml`; the station ID is `IDS60801.94675`.
{% configuration %}
station:
description: The station ID string as identified from the BOM website.
required: false
type: string
default: If not given, defaults to the closest station based on location data in configuration.yaml.
name:
description: The name you would like to give to the weather station.
required: false
type: string
monitored_conditions:
description: A list of the conditions to monitor.
required: true
type: list
keys:
apparent_t:
description: Feels like temperature in C.
cloud:
description: Cloud cover.
cloud_base_m:
description: Cloud Base in m.
cloud_oktas:
description: Cloud Oktas.
cloud_type_id:
description: Cloud type ID.
cloud_type:
description: Cloud type description.
delta_t:
description: Delta temperature in C.
gust_kmh:
description: Wind gust in km/h.
gust_kt:
description: Wing gust in kt.
air_temp:
description: Air temperature in C.
dewpt:
description: Drew point in C.
press:
description: Pressure in mbar.
press_qnh:
description: Pressure in qnh.
press_msl:
description: Pressure in msl.
press_tend:
description: Pressure trend.
rain_trace:
description: Raing today in mm.
rel_hum:
description: Relative Humidity in %.
sea_state:
description: Sea state.
swell_dir_worded:
description: Swell direction.
swell_height:
description: Swell height in m.
swell_period:
description: Swell period.
vis_km:
description: Visibility in km.
weather:
description: Weather summary.
wind_dir:
description: Wind direction.
wind_spd_kmh:
description: Wind speed in km/h.
wind_spd_kt:
description: Wind speed in kt.
{% endconfiguration %}
<p class='note'>
This sensor is an alternative to the [`bom`](#configuration) weather platform.
The weather platform is easier to configure but less customisable.
</p>

View File

@ -1,52 +0,0 @@
---
layout: page
title: "Honeywell evohome/TCC Climate devices"
description: "Instructions on how to utilize a Honeywell evohome/TCC system within Home Assistant."
date: 2018-09-25 12:00
sidebar: true
comments: false
sharing: true
footer: true
logo: honeywell.png
ha_category: Climate
ha_release: 0.80
ha_iot_class: Cloud Polling
---
The `evohome` climate platform integrates your _non-US_ [Honeywell Total Connect Comfort (TCC)](https://international.mytotalconnectcomfort.com/Account/Login) system into Home Assistant. It has been tested with the Honeywell evohome multi-zone CH/DHW system, but other systems may also work.
It is distinct from - but related to - the [`honeywell`](/components/climate.honeywell/) climate platform, which also allows (limited) integration with Honeywell Connected thermostats; these two components may well be usable side-by-side, but YMMV.
The evohome evotouch Controller supports seven distict operating modes: Auto, AutoWithEco, Away, DayOff, HeatingOff, and Custom; AutoWithReset is a 7th, hidden, mode.
Currently, only the standard HA operating modes are supported; the evohome modes are mapped thus: 'Eco' (AutoWithEco), 'Off' (HeatingOff), and 'Auto' (all other evohome modes). 'Away' mode is supported separately, in the HA fashion.
The evohome Heating zones support only three operating modes: FollowSchedule, TemporaryOverride, and PermanentOverride. If the zone is in FollowSchedule mode, it inherits its `operating_mode` from the controller; the other modes are mapped to 'Manual' or 'Off'.
A device's actual operating mode can be tracked via its `device_state_attributes`, which includes a JSON data structure for current state called `status`. For example:
```json
{
'zoneId': '999999',
'temperatureStatus': {
'temperature': 21.5,
'isAvailable': true
},
'activeFaults': [],
'setpointStatus': {
'targetHeatTemperature': 17.5,
'setpointMode': 'FollowSchedule'
},
'name': 'Main Room'
}
```
This data can be accessed in automations, etc., via a value template:
{% raw %}
```
value_template: "{{ state_attr('climate.main_room', 'status').setpointStatus.setpointMode }}"
```
{% endraw %}
<p class='note'>
Full configuration details can be found on the main [evohome component](/components/evohome/) page.
</p>

View File

@ -1,24 +1,57 @@
--- ---
layout: page layout: page
title: "Concord232 Binary Sensor" title: "Concord232"
description: "Instructions on how to integrate Interlogix/GE Concord4 binary sensors into Home Assistant." description: "Instructions on how to integrate Interlogix/GE Concord4 into Home Assistant."
date: 2016-10-11 10:00 date: 2016-10-11 10:00
sidebar: true sidebar: true
comments: false comments: false
sharing: true sharing: true
footer: true footer: true
logo: interlogix.png logo: interlogix.png
ha_category: Binary Sensor ha_category:
- Alarm
- Binary Sensor
ha_release: 0.31 ha_release: 0.31
redirect_from: redirect_from:
- /components/binary_sensor.concord232/ - /components/binary_sensor.concord232/
- /components/alarm_control_panel.concord232/
--- ---
The `concord232` platform provides integration with GE, Interlogix (and other brands) alarm panels that support the RS-232 Automation Control Panel interface module (or have it built in). Supported panels include Concord 4. The `concord232` platform provides integration with GE, Interlogix (and other brands) alarm panels that support the RS-232 Automation Control Panel interface module (or have it built in). Supported panels include Concord 4.
## {% linkable_title Configuration %} To use this platform, you will need to have the external concord232 client and server installed. The server must be running on the device which is connected to the automation module's serial port. The client must be installed on the machine running Home Assistant. These may often be the same machine, but do not have to be. For additional details in setting up and testing the client and server, see <https://github.com/JasonCarter80/concord232>.
To enable this, add the following lines to your `configuration.yaml`: There is currently support for the following device types within Home Assistant:
- [Alarm](#alarm-control-panel)
- [Binary Sensor](#binary-sensor)
## {% linkable_title Alarm Control Panel %}
To enable the alarm control panel platform, add the following lines to your `configuration.yaml`:
```yaml
# Example configuration.yaml entry
alarm_control_panel:
- platform: concord232
```
{% configuration %}
host:
description: The host where the concord232 server process is running.
required: false
type: string
default: localhost
port:
description: The port where the Alarm panel is listening.
required: false
type: integer
default: 5007
{% endconfiguration %}
## {% linkable_title Binary Sensor %}
To enable the binary sensor platform, add the following lines to your `configuration.yaml`:
```yaml ```yaml
# Example configuration.yaml entry # Example configuration.yaml entry

View File

@ -1,47 +0,0 @@
---
layout: page
title: "Bbox"
description: "Instructions on how to integrate Bouygues Bbox routers into Home Assistant."
date: 2016-10-13 23:00
sidebar: true
comments: false
sharing: true
footer: true
logo: bbox.png
ha_category: Presence Detection
ha_release: 0.31
ha_iot_class: Local Polling
---
The `bbox` platform offers presence detection by looking at connected devices to a [Bbox](https://fr.wikipedia.org/wiki/Bbox) based router from [Bouygues](https://www.bouyguestelecom.fr/), which is one of the main Internet provider in France.
Bbox is a generic name for different hardware routers. The platform has been tested with the following devices:
- Sagem F@st 5330b
## {% linkable_title Configuration %}
To use an Bbox router in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: bbox
```
{% configuration %}
host:
description: IP address of your Bbox device.
required: false
type: string
default: 192.168.1.254
{% endconfiguration %}
<p class='note warning'>
For now and due to third party limitation, the Bbox must be on the same local network as the Home Assistant installation.
</p>
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.

View File

@ -1,46 +0,0 @@
---
layout: page
title: "Ping (ICMP)"
description: "Instructions on how to integrate Ping (ICMP)-based presence detection into Home Assistant."
date: 2017-01-06 08:00
sidebar: true
comments: false
sharing: true
footer: true
logo: home-assistant.png
ha_category: Network
ha_release: 0.36
ha_qa_scale: internal
---
The `ping` device tracker platform offers presence detection by using `ping` to send ICMP echo requests. This can be useful when devices are running a firewall and are blocking UDP or TCP packets but responding to ICMP requests (like Android phones). This tracker doesn't need to know the MAC address since the host can be on a different subnet. This makes this an option to detect hosts on a different subnet when `nmap` or other solutions don't work since `arp` doesn't work.
<p class='note'>
Please keep in mind that modern smart phones will usually turn off WiFi when they are idle. Simple trackers like this may not be reliable on their own.
</p>
## {% linkable_title Configuration %}
To use this presence detection in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: ping
hosts:
hostone: 192.168.2.10
```
{% configuration %}
hosts:
description: List of device names and their corresponding IP address or hostname.
required: true
type: list
count:
description: Number of packet used for each device (avoid false detection).
required: false
type: integer
{% endconfiguration %}
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.

View File

@ -8,16 +8,24 @@ comments: false
sharing: true sharing: true
footer: true footer: true
logo: honeywell.png logo: honeywell.png
ha_category: Hub ha_category:
- Hub
- Climate
ha_release: 0.80 ha_release: 0.80
ha_iot_class: Cloud Polling ha_iot_class: Cloud Polling
redirect_from:
- /components/climate.evohome/
--- ---
The `evohome` component is the main component to set up and integrate all _non-US_ [Honeywell Total Connect Comfort (TCC)](https://international.mytotalconnectcomfort.com/Account/Login) CH/DHW systems, primarily the Honeywell evohome multi-zone CH/DHW system. It does not support the home security functionality of TCC. The `evohome` component is the main component to set up and integrate all _non-US_ [Honeywell Total Connect Comfort (TCC)](https://international.mytotalconnectcomfort.com/Account/Login) CH/DHW systems, primarily the Honeywell evohome multi-zone CH/DHW system. It does not support the home security functionality of TCC.
It uses v2 of the [evohome-client](https://github.com/watchforstock/evohome-client) client library and so will let you control (only) EU/international systems. It _does not_ leverage the [somecomfort](https://github.com/kk7ds/somecomfort) client library as used by US-based systems; for those, you may find what you need at the [honeywell climate platform](/components/climate.honeywell/). It uses v2 of the [evohome-client](https://github.com/watchforstock/evohome-client) client library and so will let you control (only) EU/international systems. It _does not_ leverage the [somecomfort](https://github.com/kk7ds/somecomfort) client library as used by US-based systems; for those, you may find what you need at the [honeywell climate platform](/components/climate.honeywell/).
Currently, only Controllers and Heating zones are supported; support for DHW controllers will be added at a later time. More information is available on the [evohome climate platform](/components/climate.evohome/) page. Currently, only Controllers and Heating zones are supported; support for DHW controllers will be added at a later time. More information is available on the [evohome climate platform](#climate) page.
There is currently support for the following device types within Home Assistant:
- [Climate](#climate)
## {% linkable_title Configuration %} ## {% linkable_title Configuration %}
@ -53,3 +61,36 @@ scan_interval:
This is an IoT cloud-polling device, and the recommended minimum `scan_interval` is 300 seconds. Testing has indicated that this is a safe interval that - by itself - shouldn't cause you to be rate-limited by Honeywell. This is an IoT cloud-polling device, and the recommended minimum `scan_interval` is 300 seconds. Testing has indicated that this is a safe interval that - by itself - shouldn't cause you to be rate-limited by Honeywell.
## {% linkable_title Climate %}
It is distinct from - but related to - the [`honeywell`](/components/climate.honeywell/) climate platform, which also allows (limited) integration with Honeywell Connected thermostats; these two components may well be usable side-by-side, but YMMV.
The evohome evotouch Controller supports seven distict operating modes: Auto, AutoWithEco, Away, DayOff, HeatingOff, and Custom; AutoWithReset is a 7th, hidden, mode.
Currently, only the standard HA operating modes are supported; the evohome modes are mapped thus: 'Eco' (AutoWithEco), 'Off' (HeatingOff), and 'Auto' (all other evohome modes). 'Away' mode is supported separately, in the HA fashion.
The evohome Heating zones support only three operating modes: FollowSchedule, TemporaryOverride, and PermanentOverride. If the zone is in FollowSchedule mode, it inherits its `operating_mode` from the controller; the other modes are mapped to 'Manual' or 'Off'.
A device's actual operating mode can be tracked via its `device_state_attributes`, which includes a JSON data structure for current state called `status`. For example:
```json
{
'zoneId': '999999',
'temperatureStatus': {
'temperature': 21.5,
'isAvailable': true
},
'activeFaults': [],
'setpointStatus': {
'targetHeatTemperature': 17.5,
'setpointMode': 'FollowSchedule'
},
'name': 'Main Room'
}
```
This data can be accessed in automations, etc., via a value template:
{% raw %}
```
value_template: "{{ state_attr('climate.main_room', 'status').setpointStatus.setpointMode }}"
```
{% endraw %}

View File

@ -8,16 +8,28 @@ comments: false
sharing: true sharing: true
footer: true footer: true
logo: mystrom.png logo: mystrom.png
ha_category: Light ha_category:
- Light
- Binary Sensor
- Switch
ha_release: 0.43 ha_release: 0.43
ha_iot_class: Local Polling ha_iot_class: Local Polling
redirect_from: redirect_from:
- /components/light.mystrom/ - /components/light.mystrom/
- /components/binary_sensor.mystrom/
- /components/switch.mystrom/
--- ---
The `mystrom` light platform allows you to control your [myStrom](https://mystrom.ch/en/) WiFi Bulbs. The `mystrom` light platform allows you to control your [myStrom](https://mystrom.ch/en/) WiFi Bulbs.
There is currently support for the following device types within Home Assistant:
- [Binary Sensor](#binary-sensor)
- [Light](#light)
- [Switch](#switch)
## {% linkable_title Light %}
To use your myStrom WiFi Bulb in your installation, add the following to your `configuration.yaml` file: To use your myStrom WiFi Bulb in your installation, add the following to your `configuration.yaml` file:
```yaml ```yaml
@ -65,3 +77,147 @@ $ curl http://[IP_ADDRESS]/api/v1/device/[MAC_ADDRESS]
} }
``` ```
## {% linkable_title Binary Sensor %}
The `mystrom` binary sensor platform allows you to use [myStrom Wifi Buttons](https://mystrom.ch/wifi-button/) with Home Assistant. The myStrom Wifi Buttons support three and the myStrom WiFi Button + four different push pattern:
- `single`: Short push (approx. 1/2 seconds)
- `double`: 2x sequential short pushes (within 2 seconds)
- `long`: Long push (approx. 2 seconds)
- `touch`: Touch of the button's surface (only affective for WiFi Button +)
The first usage of the pattern will create the binary sensor for the pattern. If the WiFi Button is pushed one time then a binary sensor for the `single` pattern will be created. The same applies for the other patterns. With the second usage of the pattern the binary sensors become fully functional.
The buttons will give you feedback with its built-in LED:
- white then green: Pattern was submitted successfully
- white then red: There is a problem with the communication
To use your myStrom WiFi Button in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
binary_sensor:
- platform: mystrom
```
<p class='note'>
The firmware version 2.56 doesn't support TLS/SSL. This means that you are only able to use the WiFi Buttons if you are using plain-text communication between Home Assistant and the clients/entities.
</p>
### {% linkable_title Setup of myStrom Buttons %}
You need to configure every button to make it work with Home Assistant. First connect the Wifi Buttons to your wireless network. Once a button is connected you have three minutes to set the actions for the push patterns if the button is not charging. The fastest way is to use `curl`. Check the [documentation](https://mystrom.ch/wp-content/uploads/REST_API_WBP.txt) of the WiFi Button for further details about the implementation (`http://` is replaced by `get://` or `post://`). `action` is the name of the corresponding push pattern (see above).
The endpoint that is receiving the data is `http://[IP address Home Assistant]:8123/api/mystrom`. If you have set an [`api_password`](/components/http/) then this needs to be included in the URL.
With `api_password:`
```
$ curl -d "[action]=get://[IP address Home Assistant]:8123/api/mystrom?api_password%3D[api_password]%26[action]%3D[ID of the button]" \
http://[IP address of the button]/api/v1/device/[MAC address of the button]
```
Without `api_password`:
```bash
$ curl -d "[action]=get://[IP address Home Assistant]:8123/api/mystrom?[action]%3D[ID of the button]" \
http://[IP address of the button]/api/v1/device/[MAC address of the button]
{
"[MAC address of the button]": {
"type": "button",
"battery": true,
"reachable": true,
"meshroot": false,
"charge": true,
"voltage": 4.292,
"fw_version": "2.56",
"single": "get://[IP address Home Assistant]:8123/api/mystrom?single=[id of the button]",
"double": "",
"long": "",
"touch": ""
}
}
```
A complete command to set the URL for a double click could look like the example below:
```bash
$ curl -d "double=get://192.168.1.3:8123/api/mystrom?double%3DButton1" http://192.168.1.12/api/v1/device/4D5F5D5CD553
```
With an `api_password`:
```bash
curl -d "double=get://192.168.1.3:8123/api/mystrom?api_password%3Dapi_password%26double%3DButton1" http://192.168.1.12/api/v1/device/4D5F5D5CD553
```
The command-line tool [`mystrom`](https://github.com/fabaff/python-mystrom) is a helper to configure myStrom buttons.
If you have set [`login_attempts_threshold`](/components/http/) and forget to include the `api_password` for an action and that action is triggered then after the threshold is reached will the button no longer work because it is banned. See [IP filtering and banning](/components/http/#ip-filtering-and-banning) about how to revert the banning.
## {% linkable_title Switch %}
The `mystrom` switch platform allows you to control the state of your [myStrom](https://mystrom.ch/en/) switches. The built-in sensor is measuring the power consumption while the switch is on.
### {% linkable_title Setup %}
Make sure that you have enabled the REST API under **Advanced** in the web frontend of the switch.
<p class='img'>
<img src='{{site_root}}/images/components/mystrom/mystrom-advanced.png' />
</p>
To use your myStrom switch in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
switch:
- platform: mystrom
host: IP_ADRRESS
```
{% configuration %}
host:
description: "The IP address of your myStrom switch, e.g., `http://192.168.1.32`."
required: true
type: string
name:
description: The name to use when displaying this switch.
required: false
type: string
default: myStrom Switch
{% endconfiguration %}
Check if you are able to access the device located at `http://IP_ADRRESS`. The details about your switch is provided as a JSON response.
```bash
$ curl -X GET -H "Content-Type: application/json" http://IP_ADDRESS/report
{
"power": 0,
"relay": false
}
```
or change its state:
```bash
curl -G -X GET http://IP_ADDRESS/relay -d 'state=1'
```
### {% linkable_title Get the current power consumption %}
The switch is measuring the current power consumption. To expose this as a sensor use a [`template` sensor](/components/sensor.template/).
{% raw %}
```yaml
# Example configuration.yaml entry
sensor:
- platform: template
sensors:
power:
friendly_name: "Current Power"
unit_of_measurement: "W"
value_template: "{{ states.switch.office.attributes.current_power_w }}"
```
{% endraw %}

View File

@ -8,14 +8,22 @@ comments: false
sharing: true sharing: true
footer: true footer: true
logo: networx.png logo: networx.png
ha_category: Alarm ha_category:
- Alarm
- Binary Sensor
ha_release: 0.13 ha_release: 0.13
ha_iot_class: Local Push
redirect_from: redirect_from:
- /components/alarm_control_panel.nx584/ - /components/alarm_control_panel.nx584/
- /components/binary_sensor.nx584/
--- ---
The `nx584` platform provides integration with GE, Caddx, Interlogix (and other brands) alarm panels that support the NX584 interface module (or have it built in). Supported panels include NX4/6/8/8E. Actual integration is done through [pynx584](http://github.com/kk7ds/pynx584) which is required for this to work. The `nx584` platform provides integration with GE, Caddx, Interlogix (and other brands) alarm panels that support the NX584 interface module (or have it built in). Supported panels include NX4/6/8/8E. Actual integration is done through [pynx584](http://github.com/kk7ds/pynx584) which is required for this to work.
There is currently support for the following device types within Home Assistant:
- [Binary Sensor](#binary-sensor)
## {% linkable_title Configuration %} ## {% linkable_title Configuration %}
To enable this, add the following lines to your `configuration.yaml`: To enable this, add the following lines to your `configuration.yaml`:
@ -43,3 +51,69 @@ port:
type: integer type: integer
default: 5007 default: 5007
{% endconfiguration %} {% endconfiguration %}
## {% linkable_title Binary Sensor %}
Enabling this binary sensor platform exposes all of your zones as binary sensors, which provides visibility through the UI as well as the ability to trigger automation actions instantly when something happens like a door opening, or a motion sensor trigger.
To enable this feature, add the following lines to your `configuration.yaml`:
```yaml
# Example configuration.yaml entry
binary_sensor:
platform: nx584
```
{% configuration %}
host:
description: This is the host where the nx584 server process is running. If unset, it is assumed to be `localhost`, which will work if the server process is running on the same system as Home Assistant.
required: false
type: string
default: localhost
port:
description: The port where the server process is running.
required: false
type: integer
default: 5007
exclude_zones:
description: This is a list of zone numbers that should be excluded. Use this to avoid exposing a zone that is of no interest, unconnected, etc.
required: false
type: [list, integer]
zone_types:
description: This is a list of zone numbers mapped to zone types. Use this to designate zones as doors, motion sensors, smoke detectors, etc. See the list of available zone types relevant to alarm zones below.
required: false
type: map
keys:
opening:
description: Opening
motion:
description: Motion
gas:
description: Gas
smoke:
description: Smoke
moisture:
description: Moisture
safety:
description: Safety
{% endconfiguration %}
## {% linkable_title Full example %}
An extended configuration entry could look like this:
```yaml
# Full example configuration.yaml entry
binary_sensor:
platform: nx584
host: 192.168.1.10
port: 5007
exclude_zones:
- 3
- 5
zone_types:
1: opening
2: opening
4: motion
6: moisture
```

View File

@ -1,23 +1,32 @@
--- ---
layout: page layout: page
title: "Ping (ICMP) Binary sensor" title: "Ping (ICMP)"
description: "Instructions on how to integrate Ping (ICMP)-based binary sensors into Home Assistant." description: "Instructions on how to integrate Ping (ICMP)-based into Home Assistant."
date: 2017-04-11 08:00 date: 2017-04-11 08:00
sidebar: true sidebar: true
comments: false comments: false
sharing: true sharing: true
footer: true footer: true
logo: home-assistant.png logo: home-assistant.png
ha_category: Network ha_category:
- Network
- Binary Sensor
- Presence Detection
ha_release: 0.43 ha_release: 0.43
ha_qa_scale: internal ha_qa_scale: internal
redirect_from: redirect_from:
- /components/binary_sensor.ping/ - /components/binary_sensor.ping/
- /components/device_tracker.ping/
--- ---
The `ping` binary sensor platform allows you to use `ping` to send ICMP echo requests. This way you can check if a given host is online and determine the round trip times from your Home Assistant instance to that system. There is currently support for the following device types within Home Assistant:
## {% linkable_title Configuration %} - [Binary Sensor](#binary-sensor)
- [Presence Detection](#presence-detection)
## {% linkable_title Binary Sensor %}
The `ping` binary sensor platform allows you to use `ping` to send ICMP echo requests. This way you can check if a given host is online and determine the round trip times from your Home Assistant instance to that system.
To use this sensor in your installation, add the following to your `configuration.yaml` file: To use this sensor in your installation, add the following to your `configuration.yaml` file:
@ -66,3 +75,36 @@ binary_sensor:
<p class='note'> <p class='note'>
When run on Windows systems, the round trip time attributes are rounded to the nearest millisecond and the mdev value is unavailable. When run on Windows systems, the round trip time attributes are rounded to the nearest millisecond and the mdev value is unavailable.
</p> </p>
## {% linkable_title Presence Detection %}
The `ping` device tracker platform offers presence detection by using `ping` to send ICMP echo requests. This can be useful when devices are running a firewall and are blocking UDP or TCP packets but responding to ICMP requests (like Android phones). This tracker doesn't need to know the MAC address since the host can be on a different subnet. This makes this an option to detect hosts on a different subnet when `nmap` or other solutions don't work since `arp` doesn't work.
<p class='note'>
Please keep in mind that modern smart phones will usually turn off WiFi when they are idle. Simple trackers like this may not be reliable on their own.
</p>
### {% linkable_title Configuration %}
To use this presence detection in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: ping
hosts:
hostone: 192.168.2.10
```
{% configuration %}
hosts:
description: List of device names and their corresponding IP address or hostname.
required: true
type: list
count:
description: Number of packet used for each device (avoid false detection).
required: false
type: integer
{% endconfiguration %}
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.

View File

@ -1,6 +1,6 @@
--- ---
layout: page layout: page
title: "Sense HAT Light" title: "Sense HAT"
description: "Instructions on how to setup Sense HAT LED lights within Home Assistant." description: "Instructions on how to setup Sense HAT LED lights within Home Assistant."
date: 2017-04-29 16:00 date: 2017-04-29 16:00
sidebar: true sidebar: true
@ -8,16 +8,25 @@ comments: false
sharing: true sharing: true
footer: true footer: true
logo: sense-hat.png logo: sense-hat.png
ha_category: DIY ha_category:
- DIY
- Light
- Sensor
ha_iot_class: Assumed State ha_iot_class: Assumed State
ha_release: 0.44 ha_release: 0.44
redirect_from: redirect_from:
- /components/light.sensehat/ - /components/light.sensehat/
- /components/sensor.sensehat/
--- ---
The `sensehat` light platform lets you control the [Sense HAT](https://www.raspberrypi.org/products/sense-hat/) board's 8x8 RGB LED matrix on your Raspberry Pi from within Home Assistant. There is currently support for the following device types within Home Assistant:
## {% linkable_title Configuration %} - [Light](#light)
- [Sensor](#sensor)
## {% linkable_title Light %}
The `sensehat` light platform lets you control the [Sense HAT](https://www.raspberrypi.org/products/sense-hat/) board's 8x8 RGB LED matrix on your Raspberry Pi from within Home Assistant.
To add `sensehat` light to your installation, add the following to your `configuration.yaml` file: To add `sensehat` light to your installation, add the following to your `configuration.yaml` file:
@ -27,3 +36,170 @@ light:
- platform: sensehat - platform: sensehat
``` ```
## {% linkable_title Sensor %}
The `sensehat` sensor platform allows you to display information collected by a [Sense HAT](https://www.raspberrypi.org/products/sense-hat/) add-on board for Raspberry Pi.
To add this platform to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: sensehat
display_options:
- temperature
- humidity
- pressure
```
{% configuration %}
display_options:
description: List of details to monitor.
required: true
default: "`memory_free`"
type: list
keys:
temperature:
description: Temperature
humidity:
description: Humidity
pressure:
description: Pressure
name:
description: Change the name of te sensor, for in the frontend.
required: false
type: string
is_hat_attached:
description: Declaring that the SenseHAT _is_ physically on the Raspberry Pi.
required: false
default: true
type: boolean
{% endconfiguration %}
### {% linkable_title Customizing the Sense HAT data %}
#### {% linkable_title Format the sensor values %}
Add the following to your `sensor`:
{% raw %}
```yaml
# Example configuration.yaml entry
sensor:
- platform: sensehat
display_options:
- temperature
- humidity
- pressure
- platform: template
sensors:
sensehat_temperature:
value_template: '{{ states.sensor.temperature.state | round(1) }}'
unit_of_measurement: '°C'
sensehat_pressure:
value_template: '{{ states.sensor.pressure.state | round(1) }}'
unit_of_measurement: 'mb'
sensehat_humidity:
value_template: '{{ states.sensor.humidity.state | round(1) }}'
unit_of_measurement: '%'
```
{% endraw %}
#### {% linkable_title Give the values friendly names & icons %}
Add the following to your `customize`:
```yaml
# Example configuration.yaml entry
customize:
sensor.sensehat_temperature:
icon: mdi:thermometer
friendly_name: "Temperature"
sensor.sensehat_humidity:
icon: mdi:weather-rainy
friendly_name: "Humidity"
sensor.sensehat_pressure:
icon: mdi:gauge
friendly_name: "Pressure"
```
#### {% linkable_title Create a group %}
Add the following to your `groups`:
```yaml
# Example configuration.yaml entry
group:
sense_hat:
name: Sense HAT
entities:
- sensor.sensehat_temperature
- sensor.sensehat_humidity
- sensor.sensehat_pressure
```
Add the sense_hat group (_Kitchen for example_)
```yaml
# Example configuration.yaml entry
group:
kitchen:
- group.sense_hat
```
### {% linkable_title Directions for installing on Raspberry Pi All-In-One installer and HASSbian: %}
Here are the steps to make the _SenseHAT_ sensor work _successfully_ with the virtual environment versions.
#### {% linkable_title Install SenseHAT package to _homeassistant_venv_ %}
```bash
# switch to the homeassistant_venv environment
sudo -u homeassistant -H -s
source /srv/homeassistant/homeassistant_venv/bin/activate
# install the sense-hat lib
pip3 install sense-hat
# be patient, this will take a long while
```
#### {% linkable_title Return to `pi` %}
Type `exit` to quit out of the _homeassistant_venv_ back to your `pi` environment.
As all of the following steps should be under the `pi` user environment.
#### {% linkable_title Install _RTIMU_ %}
```bash
# pi user environment: Install RTIMU
pip3 install rtimulib
# pi user environment: Add _homeassistant_ user to the _input_, _video_ and the _i2c_ groups
sudo addgroup homeassistant input
sudo addgroup homeassistant i2c
sudo addgroup homeassistant video
# HA environment: Add symlink to RTIMU
ln -s /usr/lib/python3/dist-packages/RTIMU.cpython-35m-arm-linux-gnueabihf.so /srv/homeassistant/lib/python3.5/site-packages/
# pi user environment: Reboot Raspberry Pi to apply changes
sudo reboot
```
Unfortunately enabling the SenseHAT Sensor component for a Virtual Environment install of Home Assistant fails with errors.
_(The Raspberry Pi All-In-One installer and HASSbian both run Home Assistant in an virtual environment)._
These issues have been discussed in the repository issue [#5093](https://github.com/home-assistant/home-assistant/issues/5093)
This fix has been tested with a clean install of:
* [Raspbian Jessie - version January 2017](https://downloads.raspberrypi.org/raspbian/images/raspbian-2017-01-10/)
and
* [Home Assistant 0.37.1](/getting-started/installation-raspberry-pi-all-in-one/)
For setting up the Sense HAT's RGB LED matrix as lights within Home Assistant, please see the [Sense HAT light component](#light).

View File

@ -1,117 +0,0 @@
---
layout: page
title: "aREST Sensor"
description: "Instructions on how to integrate aREST sensors within Home Assistant."
date: 2015-09-07 18:15
sidebar: true
comments: false
sharing: true
footer: true
logo: arest.png
ha_category: DIY
ha_iot_class: Local Polling
ha_release: pre 0.7
---
The `arest` sensor platform allows you to get all data from your devices (like Arduinos with a Ethernet/Wifi connection, the ESP8266, and the Raspberry Pi) running the [aREST](http://arest.io/) RESTful framework.
## {% linkable_title Configuration %}
To use your aREST enabled device in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: arest
resource: https://IP_ADDRESS
monitored_variables:
temperature:
name: temperature
pins:
A0:
name: Pin 0 analog
```
{% configuration %}
resource:
description: "IP address and schema of the device that is exposing an aREST API, e.g., https://192.168.1.10."
required: true
type: string
name:
description: Let you overwrite the name of the device.
required: false
default: aREST sensor
type: string
pins:
description: List of pins to monitor. Analog pins need a leading **A** for the pin number.
required: false
type: list
keys:
pin:
description: Pin number to use.
required: true
type: list
keys:
name:
description: The name of the variable you wish to monitor.
required: true
type: string
unit_of_measurement:
description: Defines the unit of measurement of the sensor, if any.
required: false
type: string
value_template:
description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload.
required: false
type: template
monitored_variables:
description: List of exposed variables.
required: false
type: list
keys:
variable:
description: Name of the variable to monitor.
required: true
type: list
keys:
name:
description: The name to use for the frontend.
required: false
type: string
unit_of_measurement:
description: Defines the units of measurement of the sensor, if any.
required: false
type: string
value_template:
description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract a value from the payload.
required: false
type: template
{% endconfiguration %}
The variables in the `monitored_variables` array must be available in the response of the device. As a starting point you could use the one of the example sketches (eg. [Ethernet](https://raw.githubusercontent.com/marcoschwartz/aREST/master/examples/Ethernet/Ethernet.ino) for an Arduino with Ethernet shield). In those sketches are two variables (`temperature` and `humidity`) available which will act as endpoints.
Accessing one of the endpoints (eg. http://192.168.1.10/temperature) will give you the value inside a JSON response.
```json
{"temperature": 23, "id": "sensor01", "name": "livingroom", "connected": true}
```
The root will give you a JSON response that contains all variables and their current values along with some device details.
```json
{
"variables" : {
"temperature" : 23,
"humidity" : 82
},
"id" : "sensor01",
"name" : "livingroom",
"connected" : true
}
```
`return_value` contains the sensor's data in a JSON response for a given pin (eg. http://192.168.1.10/analog/2/ or http://192.168.1.10/digital/7/).
```json
{"return_value": 34, "id": "sensor02", "name": "livingroom", "connected": true}
```

View File

@ -1,137 +0,0 @@
---
layout: page
title: "BOM Australia Sensor"
description: "Instructions on how to integrate Bureau of Meteorology Australia weather conditions into Home Assistant."
date: 2016-09-13 18:00
sidebar: true
comments: false
sharing: true
footer: true
logo: bom.png
ha_category: Weather
ha_release: 0.29
ha_iot_class: Cloud Polling
---
The `bom` sensor platform uses the [Australian Bureau of Meteorology (BOM)](http://www.bom.gov.au) as a source for current (half-hourly) meteorological data.
- Each sensor will be given the `device_id` of "bom [optionalname] friendlyname units"
- A name is optional but if multiple BOM weather stations are used a name will be required.
- The sensor checks for new data every minute, starting 30 minutes after the timestamp of the most recent data as the data is updated every half-hour.
To add the BOM weather observation to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: bom
monitored_conditions:
- apparent_t
- cloud
- cloud_base_m
- cloud_oktas
- cloud_type_id
- cloud_type
- delta_t
- gust_kmh
- gust_kt
- air_temp
- dewpt
- local_date_time
- local_date_time_full
- press
- press_qnh
- press_msl
- press_tend
- rain_trace
- rel_hum
- sea_state
- swell_dir_worded
- swell_height
- swell_period
- vis_km
- weather
- wind_dir
- wind_spd_kmh
- wind_spd_kt
```
To get the station ID for any BOM station:
- Find your station on these maps: [NSW](http://www.bom.gov.au/nsw/observations/map.shtml), [QLD](http://www.bom.gov.au/qld/observations/map.shtml), [VIC](http://www.bom.gov.au/vic/observations/map.shtml), [WA](http://www.bom.gov.au/wa/observations/map.shtml), [SA](http://www.bom.gov.au/sa/observations/map.shtml), [TAS](http://www.bom.gov.au/tas/observations/map.shtml), [ACT](http://www.bom.gov.au/act/observations/canberramap.shtml), [NT](http://www.bom.gov.au/nt/observations/map.shtml).
- alternatively, from the [BOM website](http://www.bom.gov.au/), navigate to State -> Observations -> Latest Observations -> Choose the station.
- The URL will look like: http://www.bom.gov.au/products/IDx60801/[station].shtml
- For Adelaide, the URL will look like `http://www.bom.gov.au/products/IDS60801/IDS60801.94675.shtml`; the station ID is `IDS60801.94675`.
{% configuration %}
station:
description: The station ID string as identified from the BOM website.
required: false
type: string
default: If not given, defaults to the closest station based on location data in configuration.yaml.
name:
description: The name you would like to give to the weather station.
required: false
type: string
monitored_conditions:
description: A list of the conditions to monitor.
required: true
type: list
keys:
apparent_t:
description: Feels like temperature in C.
cloud:
description: Cloud cover.
cloud_base_m:
description: Cloud Base in m.
cloud_oktas:
description: Cloud Oktas.
cloud_type_id:
description: Cloud type ID.
cloud_type:
description: Cloud type description.
delta_t:
description: Delta temperature in C.
gust_kmh:
description: Wind gust in km/h.
gust_kt:
description: Wing gust in kt.
air_temp:
description: Air temperature in C.
dewpt:
description: Drew point in C.
press:
description: Pressure in mbar.
press_qnh:
description: Pressure in qnh.
press_msl:
description: Pressure in msl.
press_tend:
description: Pressure trend.
rain_trace:
description: Raing today in mm.
rel_hum:
description: Relative Humidity in %.
sea_state:
description: Sea state.
swell_dir_worded:
description: Swell direction.
swell_height:
description: Swell height in m.
swell_period:
description: Swell period.
vis_km:
description: Visibility in km.
weather:
description: Weather summary.
wind_dir:
description: Wind direction.
wind_spd_kmh:
description: Wind speed in km/h.
wind_spd_kt:
description: Wind speed in kt.
{% endconfiguration %}
<p class='note'>
This sensor is an alternative to the [`bom`](/components/weather.bom/) weather platform.
The weather platform is easier to configure but less customisable.
</p>

View File

@ -1,179 +0,0 @@
---
layout: page
title: "Sense HAT"
description: "Instructions on how to integrate Sense HAT within Home Assistant."
date: 2018-06-03 11:30
sidebar: true
comments: false
sharing: true
footer: true
logo: sense-hat.png
ha_category: DIY
ha_release: 0.35
ha_iot_class: Local Push
---
The `sensehat` sensor platform allows you to display information collected by a [Sense HAT](https://www.raspberrypi.org/products/sense-hat/) add-on board for Raspberry Pi.
## {% linkable_title Configuration %}
To add this platform to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: sensehat
display_options:
- temperature
- humidity
- pressure
```
{% configuration %}
display_options:
description: List of details to monitor.
required: true
default: "`memory_free`"
type: list
keys:
temperature:
description: Temperature
humidity:
description: Humidity
pressure:
description: Pressure
name:
description: Change the name of te sensor, for in the frontend.
required: false
type: string
is_hat_attached:
description: Declaring that the SenseHAT _is_ physically on the Raspberry Pi.
required: false
default: true
type: boolean
{% endconfiguration %}
## {% linkable_title Customizing the Sense HAT data %}
**Format the sensor values**
Add the following to your `sensor`:
{% raw %}
```yaml
# Example configuration.yaml entry
sensor:
- platform: sensehat
display_options:
- temperature
- humidity
- pressure
- platform: template
sensors:
sensehat_temperature:
value_template: '{{ states.sensor.temperature.state | round(1) }}'
unit_of_measurement: '°C'
sensehat_pressure:
value_template: '{{ states.sensor.pressure.state | round(1) }}'
unit_of_measurement: 'mb'
sensehat_humidity:
value_template: '{{ states.sensor.humidity.state | round(1) }}'
unit_of_measurement: '%'
```
{% endraw %}
**Give the values friendly names & icons**
Add the following to your `customize`:
```yaml
# Example configuration.yaml entry
customize:
sensor.sensehat_temperature:
icon: mdi:thermometer
friendly_name: "Temperature"
sensor.sensehat_humidity:
icon: mdi:weather-rainy
friendly_name: "Humidity"
sensor.sensehat_pressure:
icon: mdi:gauge
friendly_name: "Pressure"
```
**Create a group**
Add the following to your `groups`:
```yaml
# Example configuration.yaml entry
group:
sense_hat:
name: Sense HAT
entities:
- sensor.sensehat_temperature
- sensor.sensehat_humidity
- sensor.sensehat_pressure
```
Add the sense_hat group (_Kitchen for example_)
```yaml
# Example configuration.yaml entry
group:
kitchen:
- group.sense_hat
```
## {% linkable_title Directions for installing on Raspberry Pi All-In-One installer and HASSbian: %}
Here are the steps to make the _SenseHAT_ sensor work _successfully_ with the virtual environment versions.
### {% linkable_title Install SenseHAT package to _homeassistant_venv_ %}
```bash
# switch to the homeassistant_venv environment
sudo -u homeassistant -H -s
source /srv/homeassistant/homeassistant_venv/bin/activate
# install the sense-hat lib
pip3 install sense-hat
# be patient, this will take a long while
```
### {% linkable_title Return to `pi` %}
Type `exit` to quit out of the _homeassistant_venv_ back to your `pi` environment.
As all of the following steps should be under the `pi` user environment.
### {% linkable_title Install _RTIMU_ %}
```bash
# pi user environment: Install RTIMU
pip3 install rtimulib
# pi user environment: Add _homeassistant_ user to the _input_, _video_ and the _i2c_ groups
sudo addgroup homeassistant input
sudo addgroup homeassistant i2c
sudo addgroup homeassistant video
# HA environment: Add symlink to RTIMU
ln -s /usr/lib/python3/dist-packages/RTIMU.cpython-35m-arm-linux-gnueabihf.so /srv/homeassistant/lib/python3.5/site-packages/
# pi user environment: Reboot Raspberry Pi to apply changes
sudo reboot
```
Unfortunately enabling the SenseHAT Sensor component for a Virtual Environment install of Home Assistant fails with errors.
_(The Raspberry Pi All-In-One installer and HASSbian both run Home Assistant in an virtual environment)._
These issues have been discussed in the repository issue [#5093](https://github.com/home-assistant/home-assistant/issues/5093)
This fix has been tested with a clean install of:
* [Raspbian Jessie - version January 2017](https://downloads.raspberrypi.org/raspbian/images/raspbian-2017-01-10/)
and
* [Home Assistant 0.37.1](/getting-started/installation-raspberry-pi-all-in-one/)
For setting up the Sense HAT's RGB LED matrix as lights within Home Assistant, please see the [Sense HAT light component](/components/light.sensehat/).

View File

@ -1,86 +0,0 @@
---
layout: page
title: "aREST Switch"
description: "Instructions on how to integrate aREST switches within Home Assistant."
date: 2015-09-11 23:15
sidebar: true
comments: false
sharing: true
footer: true
logo: arest.png
ha_category: DIY
ha_iot_class: Local Polling
ha_release: 0.16
---
The `arest` switch platform allows you to toggle pins of your devices (like Arduino boards with an Ethernet/Wifi connection, ESP8266 based devices, and the Raspberry Pi) running the [aREST](http://arest.io/) RESTful framework.
## {% linkable_title Configuration %}
To use your aREST enabled device with pins in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
switch:
- platform: arest
resource: http://IP_ADDRESS
pins:
11:
name: Fan
13:
name: Switch
invert: true
```
If you want to use custom functions, then add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
switch:
- platform: arest
resource: http://IP_ADDRESS
name: Office
functions:
function1:
name: Light Desk
```
{% configuration %}
resource:
description: IP address and schema of the device that is exposing an aREST API, e.g., `http://192.168.1.10` (no-trailing slash)
required: true
type: string
name:
description: Let you overwrite the name of the device. By default *name* from the device is used.
required: optional
type: string
pins:
description: An array with all used pins.
required: false
type: map
keys:
name:
description: The name of the pin to use in the frontend.
required: true
type: string
invert:
description: If the logic for on/off should be inverted.
required: false
type: boolean
default: false
functions:
description: An array with all used functions.
required: false
type: map
keys:
name:
description: The name to use in the frontend.
required: true
type: string
{% endconfiguration %}
You can still switch your pins with a web browser or a command line tool. Use the URL `http://192.168.1.10/digital/8/1` to set pin 8 to high/on, the JSON response will give you the feedback.
```json
{"message": "Pin D8 set to 1", "id": "sensor02", "name": "livingroom", "connected": true}
```

View File

@ -1,80 +0,0 @@
---
layout: page
title: "myStrom Switch"
description: "Instructions on how to integrate myStrom switches into Home Assistant."
date: 2015-11-25 22:00
sidebar: true
comments: false
sharing: true
footer: true
logo: mystrom.png
ha_category: Switch
ha_release: 0.9
ha_iot_class: Local Polling
---
The `mystrom` switch platform allows you to control the state of your [myStrom](https://mystrom.ch/en/) switches. The built-in sensor is measuring the power consumption while the switch is on.
## {% linkable_title Setup %}
Make sure that you have enabled the REST API under **Advanced** in the web frontend of the switch.
<p class='img'>
<img src='{{site_root}}/images/components/mystrom/mystrom-advanced.png' />
</p>
## {% linkable_title Configuration %}
To use your myStrom switch in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
switch:
- platform: mystrom
host: IP_ADRRESS
```
{% configuration %}
host:
description: "The IP address of your myStrom switch, e.g., `http://192.168.1.32`."
required: true
type: string
name:
description: The name to use when displaying this switch.
required: false
type: string
default: myStrom Switch
{% endconfiguration %}
Check if you are able to access the device located at `http://IP_ADRRESS`. The details about your switch is provided as a JSON response.
```bash
$ curl -X GET -H "Content-Type: application/json" http://IP_ADDRESS/report
{
"power": 0,
"relay": false
}
```
or change its state:
```bash
curl -G -X GET http://IP_ADDRESS/relay -d 'state=1'
```
## {% linkable_title Get the current power consumption %}
The switch is measuring the current power consumption. To expose this as a sensor use a [`template` sensor](/components/sensor.template/).
{% raw %}
```yaml
# Example configuration.yaml entry
sensor:
- platform: template
sensors:
power:
friendly_name: "Current Power"
unit_of_measurement: "W"
value_template: "{{ states.switch.office.attributes.current_power_w }}"
```
{% endraw %}

View File

@ -1,26 +0,0 @@
---
layout: page
title: "Thinking Cleaner Switch"
description: "Instructions on how to integrate a ThinkingCleaner switches within Home Assistant."
date: 2016-04-10 17:24
sidebar: true
comments: false
sharing: true
footer: true
logo: thinkingcleaner.png
ha_category: Switch
ha_iot_class: Local Polling
ha_release: 0.18
---
The `thinkingcleaner` switch platform allows you to control your [Thinking Cleaner](http://www.thinkingcleaner.com) add-on.
To enable this switch in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
switch:
- platform: thinkingcleaner
```
This will automatically add switches for each Thinking Cleaner in your network.

View File

@ -1,20 +1,30 @@
--- ---
layout: page layout: page
title: "Thinking Cleaner sensor" title: "Thinking Cleaner"
description: "Instructions on how to integrate a ThinkingCleaner sensor within Home Assistant." description: "Instructions on how to integrate a ThinkingCleaner within Home Assistant."
date: 2016-04-10 17:24 date: 2016-04-10 17:24
sidebar: true sidebar: true
comments: false comments: false
sharing: true sharing: true
footer: true footer: true
logo: thinkingcleaner.png logo: thinkingcleaner.png
ha_category: Sensor ha_category:
- Sensor
- Switch
ha_iot_class: Local Polling ha_iot_class: Local Polling
ha_release: 0.18 ha_release: 0.18
redirect_from: redirect_from:
- /components/sensor.thinkingcleaner/ - /components/sensor.thinkingcleaner/
- /components/switch.thinkingcleaner/
--- ---
There is currently support for the following device types within Home Assistant:
- [Sensor](#sensor)
- [Switch](#switch)
## {% linkable_title Sensor %}
The `thinkingcleaner` sensor platform simple displays information about your [Thinking Cleaner](http://www.thinkingcleaner.com) add-on. The `thinkingcleaner` sensor platform simple displays information about your [Thinking Cleaner](http://www.thinkingcleaner.com) add-on.
To enable this sensor in your installation, add the following to your `configuration.yaml` file: To enable this sensor in your installation, add the following to your `configuration.yaml` file:
@ -26,3 +36,17 @@ sensor:
``` ```
This will automatically add sensors for each Thinking Cleaner in your network. This will automatically add sensors for each Thinking Cleaner in your network.
## {% linkable_title switch %}
The `thinkingcleaner` switch platform allows you to control your [Thinking Cleaner](http://www.thinkingcleaner.com) add-on.
To enable this switch in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
switch:
- platform: thinkingcleaner
```
This will automatically add switches for each Thinking Cleaner in your network.

View File

@ -16,6 +16,7 @@
<li><a href='https://data.home-assistant.io'>Data Science</a></li> <li><a href='https://data.home-assistant.io'>Data Science</a></li>
<li><a href='mailto:hello@home-assistant.io'>Contact</a> (no support!)</li> <li><a href='mailto:hello@home-assistant.io'>Contact</a> (no support!)</li>
<li><a href='/privacy/'>Privacy</a></li> <li><a href='/privacy/'>Privacy</a></li>
<li><a href='https://status.home-assistant.io'>System Status</a></li>
</ul> </ul>
</div> </div>

View File

@ -2,7 +2,7 @@
layout: post layout: post
title: "0.91: More streaming, better Zigbee, cameras with ESPHome" title: "0.91: More streaming, better Zigbee, cameras with ESPHome"
description: "Big update that brings goodies across the board." description: "Big update that brings goodies across the board."
date: 2019-03-27 00:11:03 date: 2019-04-03 00:11:03
date_formatted: "April 3, 2019" date_formatted: "April 3, 2019"
author: Paulus Schoutsen author: Paulus Schoutsen
author_twitter: balloob author_twitter: balloob
@ -17,7 +17,7 @@ It's time for release 0.91 and this release is all about streaming cameras. Home
- Support to ask Google Assistant to show your camera on its display or on a Chromecast - Support to ask Google Assistant to show your camera on its display or on a Chromecast
- Preload streams so that bringing up a stream on a device is super fast. This can be configured on a per camera basis via the camera more info dialog. - Preload streams so that bringing up a stream on a device is super fast. This can be configured on a per camera basis via the camera more info dialog.
Thanks to [@hunterjm] for all this work on this! ❤️ Check the latest release of the [Home Assistant podcast](https://hasspodcast.io/) for an interview with [@hunterjm] about streams in Home Assistant. Thanks to [@hunterjm] for all this work on this! ❤️ Check the latest release of the [Home Assistant podcast](https://hasspodcast.io/home-assistant-podcast-47-0-91-and-streaming-cameras-everywhere-with-jason/) for an interview with [@hunterjm] about streams in Home Assistant.
We're still in the process of updating more cameras to support the stream component. If you want to try it today, the easiest approach is to configure a [generic camera][generic docs] with a `stream_source` or buy a camera that supports the standard ONVIF protocol. We're still in the process of updating more cameras to support the stream component. If you want to try it today, the easiest approach is to configure a [generic camera][generic docs] with a `stream_source` or buy a camera that supports the standard ONVIF protocol.