Skip to content

Commit 31f1027

Browse files
authored
Merge pull request home-assistant#843 from home-assistant/next
0.27
2 parents 3e84f46 + e5ef5e7 commit 31f1027

File tree

96 files changed

+2314
-125
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+2314
-125
lines changed

source/_components/alarm_control_panel.manual.markdown

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ alarm_control_panel:
2222
code: PASSCODE
2323
pending_time: 60
2424
trigger_time: 120
25+
disarm_after_trigger: true
2526
```
2627
2728
Configuration variables:
@@ -30,7 +31,7 @@ Configuration variables:
3031
- **code** (*Optional*): If defined, specifies a code to enable or disable the alarm in the frontend.
3132
- **pending_time** (*Optional*): The time in seconds of the pending time before arming the alarm. Default is 60 seconds.
3233
- **trigger_time** (*Optional*): The time in seconds of the trigger time in which the alarm is firing. Default is 120 seconds.
33-
34+
- **disarm_after_trigger** (*Optional*): If true, the alarm will automatically disarm after it has been triggered instead of returning to the previous state.
3435
3536
## {% linkable_title Examples %}
3637
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
---
2+
layout: page
3+
title: "FFmpeg Binary Sensor"
4+
description: "Instructions how to integrate a varius ffmpeg based binary sensor"
5+
date: 2016-08-25 08:00
6+
sidebar: true
7+
comments: false
8+
sharing: true
9+
footer: true
10+
logo: ffmpeg.png
11+
ha_category: Binary Sensor
12+
ha_release: 0.27
13+
ha_iot_class: "Local Polling"
14+
---
15+
16+
17+
The `ffmpeg` platform allows you to use every video or audio feed with [FFmpeg](http://www.ffmpeg.org/) for various sensors in Home Assistant. Available are: **noise**, **motion**. If the `ffmpeg` process is brocken, the sensor going to unavailable. It exists a service to restart a instance with *binary_sensor.ffmpeg_restart*.
18+
19+
<p class='note'>
20+
You need a `ffmpeg` binary in your system path. On Debain 8 you can install it from backports. If you want Hardware support on a Raspberry Pi you need to build it from sourceby ourself. Windows binary are avilable on [FFmpeg](http://www.ffmpeg.org/) homepage.
21+
</p>
22+
23+
### {% linkable_title Noise %}
24+
25+
To enable your FFmpeg with noise detection in your installation, add the following to your `configuration.yaml` file:
26+
27+
```yaml
28+
# Example configuration.yaml entry
29+
camera:
30+
- platform: ffmpeg
31+
tool: noise
32+
input: FFMPEG_SUPPORTED_INPUT
33+
name: FFmpeg Noise
34+
ffmpeg_bin: /usr/bin/ffmpeg
35+
peak: -30
36+
duration: 1
37+
reset: 20
38+
```
39+
40+
Configuration variables:
41+
42+
- **input** (*Required*): A ffmpeg compatible input file, stream or feed.
43+
- **tool** (*Required*): Is fix set to `noise`.
44+
- **name** (*Optional*): This parameter allows you to override the name of your camera.
45+
- **ffmpeg_bin** (*Optional*): Default `ffmpeg`.
46+
- **peak** (*Optional*): Default -30. A peak of dB to detect it as noise. 0 is very loud and -100 is low.
47+
- **duration** (*Optional*): Default 1 seconds. How long need the noise over the peak to trigger the state.
48+
- **reset** (*Optional*): Defaults to 20 seconds. The time to reset the state after none new noise is over the peak.
49+
- **extra_arguments** (*Optional*): Extra option they will pass to `ffmpeg`, like audio frequence filtering.
50+
- **output** (*Optional*): Allow you to send the audio output of this sensor to a icecast server or other ffmpeg supported output, eg. to stream with sonos after state is trigger.
51+
52+
For playing with values:
53+
54+
```bash
55+
$ ffmpeg -i YOUR_INPUT -vn -filter:a silencedetect=n=-30dB:d=1 -f null -
56+
```
57+
58+
### {% linkable_title Motion %}
59+
60+
FFmpeg don't have a motion detection filter so it use a scene filter to detect a new scene/motion. In fact you can set how big a object or size of image they need change to detect a motion. The option 'changes' is the percent value of change between frames. You can add a denoise filter to video if you want a realy small value for 'changes'.
61+
62+
To enable your FFmpeg with motion detection in your installation, add the following to your `configuration.yaml` file:
63+
64+
```yaml
65+
# Example configuration.yaml entry
66+
camera:
67+
- platform: ffmpeg
68+
tool: motion
69+
input: FFMPEG_SUPPORTED_INPUT
70+
name: FFmpeg Motion
71+
ffmpeg_bin: /usr/bin/ffmpeg
72+
changes: 10
73+
reset: 20
74+
# group feature / default not in use
75+
repeat: 0
76+
repeat_time: 0
77+
78+
```
79+
80+
Configuration variables:
81+
82+
- **input** (*Required*): A ffmpeg compatible input file, stream or feed.
83+
- **tool** (*Required*): Is fix set to `motion`.
84+
- **name** (*Optional*): This parameter allows you to override the name of your camera.
85+
- **ffmpeg_bin** (*Optional*): Default `ffmpeg`.
86+
- **changes** (*Optional*): Default 10 percent. A lower value is more sensitive. I use 4 / 3.5 on my cameras. It describe how much of two frames need to change to detect it as motion. See on descripton.
87+
- **reset** (*Optional*): Default 20 seconds. The time to reset the state after none new motion is detect.
88+
- **repeat** (*Optional*): Default 0 repeats (deactivate). How many motion need to detect in *repeat_time* to trigger a motion.
89+
- **repeat_time** (*Optional*): Default 0 seconds (deactivate). The time to repeats before it trigger a motion.
90+
- **extra_arguments** (*Optional*): Extra option they will pass to ffmpeg. i.e. video denoise filtering.
91+
92+
For playing with values (changes/100 is the scene value on ffmpeg):
93+
94+
```bash
95+
$ ffmpeg -i YOUR_INPUT -an -filter:v select=gt(scene\,0.1) -f framemd5 -
96+
```

source/_components/camera.generic.markdown

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,13 @@ footer: true
1010
ha_category: Camera
1111
logo: camcorder.png
1212
ha_release: pre 0.7
13+
ha_iot_class: "depends"
1314
---
1415

1516

16-
The `generic` camera platform allows you to integrate any IP camera into Home Assistant. It supports fetching images from a url with optional HTTP authentication.
17+
The `generic` camera platform allows you to integrate any IP camera or other url into Home Assistant. Templates can be used to generate the urls on the fly.
1718

18-
Home Assistant will serve the images via its server, making it possible to view your IP camera's while outside of your network. The endpoint is `/api/camera_proxy/camera.[name]?time=[timestamp]`.
19+
Home Assistant will serve the images via its server, making it possible to view your IP camera's while outside of your network. The endpoint is `/api/camera_proxy/camera.[name]`.
1920

2021
To enable this camera in your installation, add the following to your `configuration.yaml` file:
2122

@@ -27,11 +28,24 @@ camera:
2728
name: my sample camera
2829
username: USERNAME
2930
password: PASSWORD
31+
authentication: basic
32+
limit_refetch_to_url_change: true
3033
```
3134
3235
Configuration variables:
3336
34-
- **still_image_url** (*Required*): The URL your camera serves the image on, eg. http://192.168.1.21:2112/
37+
- **still_image_url** (*Required*): The URL your camera serves the image on, eg. http://192.168.1.21:2112/. Can be a [template].
3538
- **name** (*Optional*): This parameter allows you to override the name of your camera.
3639
- **username** (*Optional*): The username for accessing your camera.
3740
- **password** (*Optional*): The password for accessing your camera.
41+
- **authentication** (*Optional*): `basic` (default) or `digest` auth for requests.
42+
- **limit_refetch_to_url_change** (*Optional*): true/false value (default: false). Limits refetching of the remote image to when the url changes. Only relevant if using a template to fetch the remote image.
43+
44+
<p class='img'>
45+
<a href='/cookbook/google_maps_card/'>
46+
<img src='/images/components/camera/generic-google-maps.png' alt='Screenshot showing Google Maps integration in Home Assistant front end.'>
47+
Example showing the Generic camera platform pointing at a dynamic Google Map image.
48+
</a>
49+
</p>
50+
51+
[template]: /topics/templating/

source/_components/camera.mjpeg.markdown

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ camera:
2727
name: my sample camera
2828
username: USERNAME
2929
password: PASSWORD
30+
authentication: basic
3031
```
3132
3233
Configuration variables:
@@ -35,7 +36,8 @@ Configuration variables:
3536
- **name** (*Optional*): This parameter allows you to override the name of your camera.
3637
- **username** (*Optional*): The username for accessing your camera.
3738
- **password** (*Optional*): The password for accessing your camera.
38-
39+
- **authentication** (*Optional*): `basic` (default) or `digest` auth for requests.
40+
-
3941
<p class='note'>
4042
There is a <a href="https://github.com/shazow/urllib3/issues/800" target="_blank">known issue in urllib3</a> that you will get error messages in your logs like <code>[StartBoundaryNotFoundDefect(), MultipartInvariantViolationDefect()], unparsed data: ''</code> but the component still works fine. You can ignore the messages.
4143
</p>
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
layout: page
3+
title: "Ecobee Thermostat"
4+
description: "Instructions how to setup the Ecobee thermostats within Home Assistant."
5+
date: 2016-08-26 18:00
6+
sidebar: true
7+
comments: false
8+
sharing: true
9+
footer: true
10+
logo: ecobee.png
11+
ha_category: Climate
12+
ha_release: 0.9
13+
---
14+
15+
To get your Ecobee thermostats working with Home Assistant, follow the instructions for the general [Ecobee component](/components/ecobee/).
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
---
2+
layout: page
3+
title: "EQ3 Bluetooth Smart Thermostats"
4+
description: "Instructions how to integrate EQ3 Bluetooth Smart Thermostats into Home Assistant."
5+
date: 2016-04-18 22:00
6+
sidebar: true
7+
comments: false
8+
sharing: true
9+
footer: true
10+
logo: eq3.gif
11+
ha_category: Climate
12+
ha_iot_class: "Local Poll"
13+
---
14+
15+
16+
The `eq3btsmart` climate platform allows you to integrate EQ3 Bluetooth Smart Thermostats.
17+
18+
The only functionality is to set the temperature, there doesn't seem to be any way to query the temperature sensor or battery level ([read more](https://forum.fhem.de/index.php/topic,39308.15.html)).
19+
20+
Setup is a bit more cumbersome than for most other thermostats. It has to be paired first:
21+
22+
```bash
23+
bluetoothctl
24+
scan on
25+
<Wait for the thermostat to be found, which looks like this: [NEW] Device 00:11:22:33:44:55 CC-RT-BLE>
26+
scan off
27+
<Set the thermostat to pairing mode.>
28+
pair <MAC>
29+
trust <MAC>
30+
disconnect <MAC>
31+
exit
32+
```
33+
34+
Then check with gatttool if the connection works as expected:
35+
36+
```bash
37+
gatttool -b 00:11:22:33:44:55 -I
38+
[00:11:22:33:44:55][LE]> connect
39+
Attempting to connect to 00:11:22:33:44:55
40+
Connection successful
41+
[00:11:22:33:44:55][LE]> char-write-req 0x0411 03
42+
Characteristic value was written successfully
43+
Notification handle = 0x0421 value: 02 01 09 14 04 2d
44+
[00:11:22:33:44:55][LE]> disconnect
45+
[00:11:22:33:44:55][LE]> exit
46+
```
47+
48+
Important: For gatttool or homeassistant to work, the thermostat needs to be disconnected from bluetoothd, so I found it best to modify the hass-daemon startscript by adding:
49+
50+
```bash
51+
/usr/bin/bt-device -d CC-RT-BLE
52+
```
53+
54+
to the start function of /etc/init.d/hass-daemon.
55+
56+
57+
```yaml
58+
# Example configuration.yaml entry
59+
climate:
60+
platform: eq3btsmart
61+
devices:
62+
room1:
63+
mac: '00:11:22:33:44:55'
64+
```
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
---
2+
layout: page
3+
title: "Generic Thermostat"
4+
description: "Turn Home Assistant into a thermostat"
5+
date: 2015-03-23 19:59
6+
sidebar: true
7+
comments: false
8+
sharing: true
9+
footer: true
10+
logo: heat-control.png
11+
ha_category: Climate
12+
---
13+
14+
15+
The `generic_thermostat` climate platform is a thermostat implemented in Home Assistant. It uses a sensor and a switch connected to a heater under the hood. If the measured temperature is cooler then the target temperature, the heater will be turned on and turned off when required temperature is reached.
16+
17+
```yaml
18+
# Example configuration.yaml entry
19+
climate:
20+
platform: heat_control
21+
name: Study
22+
heater: switch.study_heater
23+
target_sensor: sensor.study_temperature
24+
min_temp: 15
25+
max_temp: 21
26+
target_temp: 15
27+
min_cycle_duration:
28+
# At least one of these must be specified:
29+
days: 2
30+
hours: 1
31+
minutes: 10
32+
seconds: 5
33+
milliseconds: 20
34+
```
35+
36+
Configuration variables:
37+
38+
- **name** (*Required*): Name of thermostat
39+
- **heater** (*Required*: `entity_id` for heater switch, must be a toggle device.
40+
- **target_sensor** (*Required*): `entity_id` for a temperature sensor, target_sensor.state must be temperature.
41+
- **min_temp** (*Optional*): Set minimum set point available (default: 7)
42+
- **max_temp** (*Optional*): Set maximum set point available (default: 35)
43+
- **target_temp** (*Required*): Set intital target temperature. Failure to set this variable will result in target temperature being set to null on startup.
44+
- **ac_mode** (*Optional*): Set the switch specified in the *heater* option to be treated as a cooling device instead of a heating device.
45+
- **min_cycle_duration** (*Optional*): Set a minimum amount of time that the switch specified in the *heater* option must be in it's current state prior to being switched either off or on.
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
---
2+
layout: page
3+
title: "Heatmiser Thermostat"
4+
description: "Instructions how to integrate Heatmiser thermostats within Home Assistant."
5+
date: 2015-12-11 12:35
6+
sidebar: true
7+
comments: false
8+
sharing: true
9+
footer: true
10+
logo: heatmiser.png
11+
ha_category: Climate
12+
ha_release: "0.10"
13+
---
14+
15+
16+
The `heatmiser` climate platform let you control [Heatmiser DT/DT-E/PRT/PRT-E](http://www.heatmisershop.co.uk/heatmiser-slimline-programmable-room-thermostat/) thermostats from Heatmiser. The module itself is currently setup to work over a RS232 -> RS485 converter, therefore it connects over IP.
17+
18+
Further work would be required to get this setup to connect over Wifi, but the HeatmiserV3 python module being used is a full implementation of the V3 protocol. If you would like to contribute to making this work over wifi, please contact @andylockran on github.
19+
20+
To set it up, add the following information to your `configuration.yaml` file:
21+
22+
```yaml
23+
climate:
24+
platform: heatmiser
25+
ipaddress: YOUR_IPADDRESS
26+
port: YOUR_PORT
27+
tstats:
28+
1:
29+
id: THERMOSTAT_ID
30+
name: THERMOSTAT_NAME
31+
```
32+
33+
A single interface can handle up to 32 connected devices.
34+
35+
Configuration variables:
36+
37+
- **ipaddress** (*Required*): The ip address of your interface.
38+
- **port** (*Required*): The port that the interface is listening on.
39+
- **tstats** (*Required*): A list of thermostats activated on the gateway.
40+
- **id** (*Required*): The id of the thermostat as configured on the device itself
41+
- **name** (*Required*): A friendly name for the themostat
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
layout: page
3+
title: "Homematic Thermostats"
4+
description: "Instructions how to integrate Homematic thermostats within Home Assistant."
5+
date: 2016-06-28 08:30
6+
sidebar: true
7+
comments: false
8+
sharing: true
9+
footer: true
10+
logo: homematic.png
11+
ha_category: Climate
12+
ha_release: 0.23
13+
ha_iot_class: "Local Push"
14+
---
15+
16+
17+
The `homematic` cliamte platform lets you control [Homematic](http://www.homematic.com/) thermostats through Home Assistant.
18+
19+
Devices will be configured automatically. Please refer to the [component](/components/homematic/) configuration on how to setup Homematic.
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
layout: page
3+
title: "Honeywell Thermostat"
4+
description: "Instructions how to integrate Honeywell thermostats within Home Assistant."
5+
date: 2016-02-07 22:01
6+
sidebar: true
7+
comments: false
8+
sharing: true
9+
footer: true
10+
logo: honeywell.png
11+
ha_category: Climate
12+
---
13+
14+
15+
The `honeywell` cliamte platform let you control [Honeywell Connected](http://getconnected.honeywell.com/en/) thermostats from Home Assistant.
16+
17+
To set it up, add the following information to your `configuration.yaml` file:
18+
19+
```yaml
20+
cliamte:
21+
platform: honeywell
22+
username: YOUR_USERNAME
23+
password: YOUR_PASSWORD
24+
region: REGION
25+
```
26+
27+
Configuration variables:
28+
29+
- **username** (*Required*: The username of an user with access.
30+
- **password** (*Required*): The password for your given admin account.
31+
- **away_temperature** (*optional*): Heating setpoint when away mode is on. If omitted it defaults to 16.0 deg C.
32+
- **region** (*optional*): Region identifier (either 'eu' or 'us'). Defaults to 'eu' if not provided.

0 commit comments

Comments
 (0)