mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-23 17:27:19 +00:00
Merge branch 'current' into next
This commit is contained in:
commit
8a8e6e9c1f
@ -11,6 +11,12 @@ logo: home-assistant.png
|
||||
ha_category: Automation
|
||||
---
|
||||
|
||||
Please see the [getting started section] for in-depth documentation on how to use the automation component.
|
||||
Please see the [getting started section](/getting-started/automation/) for in-depth documentation on how to use the automation component.
|
||||
|
||||
[getting started section]: /getting-started/automation/
|
||||
Starting with 0.28 your automation rules can be controlled with the frontend.
|
||||
|
||||
<p class='img'>
|
||||
<img src='{{site_root}}/images/screenshots/automation-switches.png' />
|
||||
</p>
|
||||
|
||||
This allows one to reload the automation without restarting Home Assistant itself.
|
||||
|
@ -22,7 +22,7 @@ To enable your FFmpeg with noise detection in your installation, add the followi
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
camera:
|
||||
binary_sensor:
|
||||
- platform: ffmpeg
|
||||
tool: noise
|
||||
input: FFMPEG_SUPPORTED_INPUT
|
||||
@ -57,7 +57,7 @@ To enable your FFmpeg with motion detection in your installation, add the follow
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
camera:
|
||||
binary_sensor:
|
||||
- platform: ffmpeg
|
||||
tool: motion
|
||||
input: FFMPEG_SUPPORTED_INPUT
|
||||
|
@ -10,6 +10,7 @@ footer: true
|
||||
logo: knx.png
|
||||
ha_category: Binary Sensor
|
||||
ha_release: 0.24
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
To get your KNX binary sensors working with Home Assistant, follow the instructions for the [KNX component](/components/knx/).
|
||||
|
@ -16,7 +16,7 @@ ha_iot_class: "Cloud Polling"
|
||||
|
||||
The `bloomsky` component allows you to access your [BloomSky](https://www.bloomsky.com/) weather station's [sensors](/components/sensor.bloomsky), [binary sensors](/components/binary_sensor.bloomsky), and [camera](/components/camera.bloomsky) from Home Assistant.
|
||||
|
||||
Obtain your PI key from your [BloomSky dashboard](https://dashboard.bloomsky.com). Click `developers` in the bottom left of the screen.
|
||||
Obtain your API key from your [BloomSky dashboard](https://dashboard.bloomsky.com). Click `developers` in the bottom left of the screen.
|
||||
|
||||
To integrate your BloomSky hub with Home Assistant, add the following section to your `configuration.yaml` file:
|
||||
|
||||
|
@ -58,7 +58,7 @@ to the start function of /etc/init.d/hass-daemon.
|
||||
# Example configuration.yaml entry
|
||||
climate:
|
||||
platform: eq3btsmart
|
||||
devices:
|
||||
room1:
|
||||
mac: '00:11:22:33:44:55'
|
||||
devices:
|
||||
room1:
|
||||
mac: '00:11:22:33:44:55'
|
||||
```
|
||||
|
@ -40,6 +40,6 @@ Configuration variables:
|
||||
- **target_sensor** (*Required*): `entity_id` for a temperature sensor, target_sensor.state must be temperature.
|
||||
- **min_temp** (*Optional*): Set minimum set point available (default: 7)
|
||||
- **max_temp** (*Optional*): Set maximum set point available (default: 35)
|
||||
- **target_temp** (*Required*): Set intital target temperature. Failure to set this variable will result in target temperature being set to null on startup.
|
||||
- **target_temp** (*Optional*): Set intital target temperature. Failure to set this variable will result in target temperature being set to null on startup.
|
||||
- **ac_mode** (*Optional*): Set the switch specified in the *heater* option to be treated as a cooling device instead of a heating device.
|
||||
- **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.
|
||||
|
@ -10,6 +10,7 @@ footer: true
|
||||
logo: knx.png
|
||||
ha_category: DIY
|
||||
ha_release: 0.25
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
|
||||
@ -20,16 +21,18 @@ KNX thermostats use at least 2 group addresses: one for the current temperature
|
||||
To use your KNX thermostats in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
climate:
|
||||
- platform: knx
|
||||
name: KNX Thermostat
|
||||
address : KNX_ADDRESS
|
||||
temperature_address: 0/1/1
|
||||
setpoint_address: 0/1/0
|
||||
```
|
||||
|
||||
- **name** (*Optional*): A name for this devices used within Home assistant
|
||||
- **address** (*Required*): The KNX group address that is used to turn on/off this actuator channel
|
||||
- **temperature_address** (*Required*): The group address that is used to communicate the current temperature. Data format must be datapoint type 9.001 DPT_Value_Temp (2-Octet float value) (see http://www.knx.org/fileadmin/template/documents/downloads_support_menu/KNX_tutor_seminar_page/Advanced_documentation/05_Interworking_E1209.pdf)
|
||||
- **temperature_address** (*Required*): The group address that is used to communicate the current temperature. Data format must be datapoint type 9.001 DPT_Value_Temp (2-Octet float value), check [details](http://www.knx.org/fileadmin/template/documents/downloads_support_menu/KNX_tutor_seminar_page/Advanced_documentation/05_Interworking_E1209.pdf).
|
||||
- **setpoint_address** (*Required*): The group address that is used to set/read the target temperature. Data format must be datapoint type 9.001 DPT_Value_Temp (2-Octet float value). Make sure, you set the read-flag for the thermostat to allow Home Assistant to read the target temperature.
|
||||
|
||||
With the current version of the module, no advanced KNX thermostat functionalities (e.g. HVAC mode) are supported.
|
||||
|
@ -33,7 +33,7 @@ cover:
|
||||
qos: 0
|
||||
retain: true
|
||||
payload_open: "PAYLOAD_OPEN"
|
||||
payload_close: "PAYLOD__CLOSE"
|
||||
payload_close: "PAYLOAD_CLOSE"
|
||||
payload_stop: "PAYLOAD_STOP"
|
||||
state_open: "STATE_OPEN"
|
||||
state_closed: "STATE_CLOSED"
|
||||
@ -60,6 +60,6 @@ Configuration variables:
|
||||
For a quick check you can use the commandline tools shipped with `mosquitto` to send MQTT messages. Set the state of your sensor manually:
|
||||
|
||||
```bash
|
||||
$ mosquitto_pub -h 127.0.0.1 -t home-assistant/cover/set -m "OFF"
|
||||
$ mosquitto_pub -h 127.0.0.1 -t home-assistant/cover/set -m "PAYLOAD_CLOSE"
|
||||
```
|
||||
|
||||
|
@ -32,4 +32,13 @@ Some BTLE devices (e.g. fitness trackers) are only visible to the devices that t
|
||||
|
||||
BTLE tracking requires root privileges.
|
||||
|
||||
For running Home Assistant as non root user we can give python3 the missing capabilities to access the bluetooth stack. Quite like setting the setuid bit (see [Stack Exchange](http://unix.stackexchange.com/questions/96106/bluetooth-le-scan-as-non-root) for more information).
|
||||
|
||||
```bash
|
||||
sudo apt-get install libcap2-bin
|
||||
sudo setcap 'cap_net_raw,cap_net_admin+eip' `readlink -f \`which python3\``
|
||||
```
|
||||
|
||||
A restart of Home Assistant is required.
|
||||
|
||||
For additional configuration variables check the [Device tracker page](/components/device_tracker/).
|
||||
|
@ -25,11 +25,15 @@ device_tracker:
|
||||
platform: nmap_tracker
|
||||
hosts: 192.168.1.1/24
|
||||
home_interval: 10
|
||||
exclude:
|
||||
- 192.168.1.12
|
||||
- 192.168.1.13
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **hosts** (*Required*): The network range to scan in CIDR notation, eg. 192.168.1.1/24
|
||||
- **home_interval** (*Optional*): The number of minutes nmap will not scan this device, assuming it is home, in order to preserve the device battery.
|
||||
- **exclude** (*Optional*): Hosts not to include in nmap scanning.
|
||||
|
||||
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Ecobee"
|
||||
title: "ecobee"
|
||||
description: "Instructions for how to integrate Ecobee thermostats and sensors within Home Assistant."
|
||||
date: 2015-11-30 17:54
|
||||
sidebar: true
|
||||
@ -15,13 +15,37 @@ featured: true
|
||||
|
||||
The `ecobee` component lets you control a thermostats and view sensor data from [ecobee](https://ecobee.com) thermostats.
|
||||
|
||||
You will need to obtain an API key from ecobee's [developer site](https://www.ecobee.com/developers/) to use this component. To get the key, first you need to register your thermostat. Once you have done that, click on the **Become a developer** link on the developer site. Login with your Ecobee credentials, accept the SDK agreement, fill in the fields, and click **save**. Now login to the regular consumer portal, and in the hamburger menu there will be a new option **Developer**. Select that, then select **Create New**. Give your app a name (it appears to need to be unique across all users, as I tried 'home-assistant' and it said it was already in use) and a summary (neither of these are important as they are not used anywhere). For Authorization method select **ecobee PIN**. You don't need an Application Icon or Detailed Description. Click **Save**. Now under the Name and Summary Section you will have an API key. Copy this key and use it in you configuration section below. Click the **X** to close the Developer section.
|
||||
You will need to obtain an API key from ecobee's [developer site](https://www.ecobee.com/developers/) to use this component. To get the key, first you need to register your thermostat which should be done as part of the ecobee installation. Once you have done that perform the following steps.
|
||||
|
||||
The first time you run Home Assistant with this component it will give you a PIN code that you need to authorize in the [ecobee consumer portal](https://www.ecobee.com/consumerportal/index.html). You can do this by clicking **Add Application** in the **My Apps** section in the sidebar. Enter the PIN code from the Home Assistant screeen. To get the PIN code select the item in the ecobee card. If you do not have an ecobee card, you may be using groups with `default_view` that don't show the card. To get around this you can temporarily comment out the `default_view` section or add the `configurator.ecobee` component to your `default_view` and restart Home Assistant. Once you enter the PIN on the ecobee site, wait approximately 5 minutes and then click on the **I have authorized the app** link at the bottom of the ecobee popup window. If everything worked correctly, you should now be able to restart Home Assistant again to see the full ecobee card with all of the sensors populated or see the list of sensors in the developer tools. Now you can re-enable your `default_view` (if you had to disable it) and add the ecobee sensors to a group and/or view.
|
||||
1. Click on the **Become a developer** link on the [developer site](https://www.ecobee.com/developers/).
|
||||
2. Login with your ecobee credentials.
|
||||
3. Accept the SDK agreement.
|
||||
4. Fill in the fields.
|
||||
5. Click **save**.
|
||||
|
||||
Now login to the regular consumer portal, and in the hamburger menu there will be a new option **Developer**. Now we can create the Application to hook up to Home Assistant.
|
||||
|
||||
1. Select the Developer option.
|
||||
2. Select **Create New**.
|
||||
3. Give your app a name (it appears to need to be unique across all users, as I tried 'home-assistant' and it said it was already in use. Try <yournameoralias>-home-assistant) and a summary (neither of these are important as they are not used anywhere).
|
||||
4. For Authorization method select **ecobee PIN**.
|
||||
5. You don't need an Application Icon or Detailed Description.
|
||||
6. Click **Save**.
|
||||
|
||||
Now under the Name and Summary Section you will have an API key. Copy this key and use it in you configuration section below. Click the **X** to close the Developer section.
|
||||
|
||||
The first time you run Home Assistant with this component it will give you a PIN code that you need to authorize in the [ecobee consumer portal](https://www.ecobee.com/consumerportal/index.html). You can do this by clicking **Add Application** in the **My Apps** section in the sidebar.
|
||||
|
||||
The PIN can be found from the Home Assistant portal on the Ecobee card or from the **configurator.ecobee** entity in states in the portal.
|
||||
|
||||
- If you do not have an ecobee card, you may be using groups with `default_view` that don't show the card. To get around this you can temporarily comment out the `default_view` section or add the `configurator.ecobee` component to your `default_view` and restart Home Assistant.
|
||||
|
||||
Once you enter the PIN on the ecobee site, wait approximately 5 minutes and then click on the **I have authorized the app** link at the bottom of the ecobee popup window. If everything worked correctly, you should now be able to restart Home Assistant again to see the full ecobee card with all of the sensors populated or see the list of sensors in the developer tools. Now you can re-enable your `default_view` (if you had to disable it) and add the ecobee sensors to a group and/or view.
|
||||
|
||||
To set it up, add the following information to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
ecobee:
|
||||
api_key: asdfghjklqwertyuiopzxcvbnm
|
||||
hold_temp: True
|
||||
@ -29,7 +53,7 @@ ecobee:
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **api_key** (*Required*): Your ecobee API key.
|
||||
- **api_key** (*Required*): Your ecobee API key. This is only needed for the inital setup of the component. Once registered it can be removed. If you revoke the key in the ecobee portal you will need to update this again and remove the ecobee.conf file in the `.homeassistant` configuration path.
|
||||
- **hold_temp** (*Optional*): True/False whether or not to hold changes indefinitely (True) or until the next scheduled event. Defaults to `False`.
|
||||
|
||||
<p class='img'>
|
||||
|
@ -13,7 +13,7 @@ ha_category: Organization
|
||||
|
||||
Groups allow the user to combine multiple entities into one. A group can be promoted to a **view** by setting the `view` option to `yes`. This will make the group available as a new tab in the frontend.
|
||||
|
||||
Check the **Set State** page from the **Developer Tools** <img src='/images/screenshots/developer-tool-services-icon.png' class='no-shadow' height='38' /> and browse the **Current entities:** listing for all available entities.
|
||||
Check the **Set State** <img src='/images/screenshots/developer-tool-states-icon.png' class='no-shadow' height='38' /> page from the **Developer Tools** and browse the **Current entities:** listing for all available entities.
|
||||
|
||||
By default, every group appears in the HOME tab. If you name a group `default_view` it will REPLACE the contents of the HOME tab so you can customize it as you wish.
|
||||
|
||||
|
@ -49,6 +49,7 @@ Configuration variables:
|
||||
- **username** (*Optional*): When fetching names via JSON-RPC, you need to specify a user with guest-access to the CCU.
|
||||
- **password** (*Optional*): When fetching names via JSON-RPC, you need to specify the password of the user you have configured above.
|
||||
- **delay** (*Optional*): <Float> Delay fetching of current state per deivce on startup. Used to prevent overloading of the CCU. Defaults to 0.5.
|
||||
- **variables** (*Optional*): True or False if you want use CCU2/Homegear variables. Default False.
|
||||
|
||||
To further explain the `resolvenames` option:
|
||||
We use three approaches to fetch the names of devices. Each assumes you have properly named your devices in your existing Homematic setup. As a general advice: Use ASCII for your devices names. Home Assistant won't include non-ASCII characters in entity-names.
|
||||
|
@ -58,7 +58,7 @@ You need to setup a unique trigger for each event you sent to IFTTT.
|
||||
```yaml
|
||||
# Example configuration.yaml Automation entry
|
||||
automation:
|
||||
- alias: Startup Notification
|
||||
alias: Startup Notification
|
||||
trigger:
|
||||
platform: event
|
||||
event_type: homeassistant_start
|
||||
|
@ -33,16 +33,17 @@ influxdb:
|
||||
- entity.id3
|
||||
- entity.id4
|
||||
tags:
|
||||
- instance: prod
|
||||
instance: prod
|
||||
source: hass
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **host** (*Required*): IP address of your database host, eg. http://192.168.1.10.
|
||||
- **host** (*Optional*): IP address of your database host, eg. http://192.168.1.10. Defaults to localhost.
|
||||
- **username** (*Required*): The username of the database user.
|
||||
- **password** (*Required*): The password for the database user account.
|
||||
- **port** (*Optional*): Port to use. Defaults to 8086.
|
||||
- **database** (*Optional*): Name of the database to use. Defaults to `home_assistant`. The database must already exist.
|
||||
- **username** (*Optional*): The username of the database user.
|
||||
- **password** (*Optional*): The password for the database user account.
|
||||
- **ssl** (*Optional*): Use https instead of http to connect. Defaults to false.
|
||||
- **verify_ssl** (*Optional*): Verify SSL certificate for https request. Defaults to false.
|
||||
- **blacklist** (*Optional*): List of entities not logged to InfluxDB.
|
||||
|
@ -28,10 +28,10 @@ input_slider:
|
||||
Configuration variables:
|
||||
|
||||
- **[alias]** (*Required*): Alias for the slider input.
|
||||
- **min** (*Required*): Minimum value for the slider.
|
||||
- **max** (*Required*): Maximum value for the slider.
|
||||
- **name** (*Optional*): Friendly name of the slider input.
|
||||
- **initial** (*Optional*): Initial value when Home Assistant starts.
|
||||
- **min** (*Optional*): Minimum value for the slider.
|
||||
- **max** (*Optional*): Maximum value for the slider.
|
||||
- **step** (*Optional*): Step value for the slider.
|
||||
|
||||
## {% linkable_title Automation Examples %}
|
||||
@ -52,7 +52,7 @@ input_slider:
|
||||
step: 1
|
||||
|
||||
# Automation.
|
||||
automation:
|
||||
automation:
|
||||
- alias: Bedroom Light - Adjust Brightness
|
||||
trigger:
|
||||
platform: state
|
||||
|
@ -10,6 +10,7 @@ footer: true
|
||||
logo: knx.png
|
||||
ha_category: DIY
|
||||
ha_release: 0.24
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
[KNX/EIB](http://www.knx.org) integration for Home Assistant allows you to connect to a KNX bus. The component requires a local KNX/IP interface like the [Weinzierl 730](http://www.weinzierl.de/index.php/en/all-knx/knx-devices-en/knx-ip-interface-730-en). Through this it will send and receive commands to and from other devices to the KNX bus.
|
||||
@ -24,6 +25,7 @@ There is currently support for the following device types within Home Assistant:
|
||||
A `knx` section must be present in the `configuration.yaml` file and contain the following options as required:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
knx:
|
||||
host: IP_ADDRESS
|
||||
port: PORT
|
||||
|
@ -15,6 +15,10 @@ featured: true
|
||||
|
||||
Philips Hue support is integrated into Home Assistant as a light platform. The preferred way to setup the Philips Hue platform is by enabling the [the discovery component](/components/discovery/).
|
||||
|
||||
Once discovered, locate "configurator.philips_hue" in the entities list ( < > ) and add it to configuration.yaml. Restart home assistant so that it is visible in the home assistant dashboard. Once home assistant is restarted, locate and click on configurator.philips_hue to bring up the intitiation dialog. This will prompt you to press the Hue button to register the Hue hub in home assistant. Once complete, the configurator entity can be removed from configuration.yaml.
|
||||
|
||||
Restarting home assistant once more should result in the Hue lights listed as "light" entities. Add these light entities to configuration.yaml and restart home assistant once more to complete the installation.
|
||||
|
||||
If you want to enable the light component directly, add the following lines to your `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
|
17
source/_components/light.insteon_hub.markdown
Normal file
17
source/_components/light.insteon_hub.markdown
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Insteon Hub Light"
|
||||
description: "Instructions how to setup the Insteon Hub Lights within Home Assistant."
|
||||
date: 2016-09-10 08:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: insteon.png
|
||||
ha_category: Light
|
||||
ha_release: 0.21
|
||||
---
|
||||
|
||||
The `insteon_hub` light component lets you control your lights connected to an [Insteon Hub](http://www.insteon.com/insteon-hub/) with Home Assistant.
|
||||
|
||||
To get your Insteon Hub fan working with Home Assistant, follow the instructions for the general [Insteon Hub component](/components/insteon_hub/).
|
@ -38,7 +38,7 @@ Configuration variables:
|
||||
A few notes:
|
||||
|
||||
- The receiver handles only one telnet connection and refuses others.
|
||||
- Be careful with the volume. 50% or even 100% are very loud.
|
||||
- Be careful with the volume. 100% or even 50% is very loud.
|
||||
- To be able to wake up the receiver, activate the "remote" setting in the receiver's settings.
|
||||
- Play and pause are supported, toggling is not possible.
|
||||
- Seeking cannot be implemented as the UI sends absolute positions. Only seeking via simulated button presses is possible.
|
||||
|
@ -24,12 +24,12 @@ Then just add the following to your `configuration.yaml` file:
|
||||
# Example configuration.yaml entry
|
||||
media_player:
|
||||
platform: gpmdp
|
||||
address: IP_ADDRESS
|
||||
host: IP_ADDRESS
|
||||
name: NAME
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **address** (*Required*): IP address of the computer running GPMDP
|
||||
- **host** (*Required*): IP address of the computer running GPMDP
|
||||
- **name** (*Optional*): Name of the player
|
||||
|
||||
|
@ -25,7 +25,7 @@ media_player:
|
||||
host: http://192.168.0.123
|
||||
port: 8080
|
||||
name: Kodi
|
||||
user: USERNAME
|
||||
username: USERNAME
|
||||
password: PASSWORD
|
||||
turn_off_action: shutdown
|
||||
```
|
||||
|
@ -57,3 +57,4 @@ There's currently a [known issue](https://github.com/home-assistant/home-assista
|
||||
Currently tested but not working models:
|
||||
|
||||
- KU6300 - Shows in GUI but unable to control.
|
||||
- UE75H6400 - Shows in GUI but unable to control.
|
||||
|
@ -21,4 +21,5 @@ To add Snapcast to your installation, add the following to your `configuration.y
|
||||
# Example configuration.yaml entry
|
||||
media_player:
|
||||
platform: snapcast
|
||||
host: xxx.xxx.xxx.xxx
|
||||
```
|
||||
|
@ -20,7 +20,11 @@ To add modbus to your installation, add the following to your `configuration.yam
|
||||
For a network connection:
|
||||
|
||||
```yaml
|
||||
<<<<<<< HEAD
|
||||
# Modbus TCP
|
||||
=======
|
||||
# Example configuration.yaml entry for a TCP connection
|
||||
>>>>>>> current
|
||||
modbus:
|
||||
type: tcp
|
||||
host: IP_ADDRESS
|
||||
@ -31,12 +35,12 @@ Configuration variables:
|
||||
|
||||
- **type** (*Required*): Type of the connection to Modbus.
|
||||
- **host** (*Required*): The IP address of your router, eg. 192.168.1.1.
|
||||
- **port** (*Required*): The port for the comminication.
|
||||
- **port** (*Required*): The port for the communication.
|
||||
|
||||
For a serial connection:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
# Example configuration.yaml entry for a serial connection
|
||||
modbus:
|
||||
type: serial
|
||||
method: rtu
|
||||
|
@ -26,7 +26,7 @@ octoprint:
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **host** (*Required*): The octoprint host.
|
||||
- **host** (*Required*): IP address or hostname of Octoprint host.
|
||||
- **api_key** (*Required*): The retrieved api key.
|
||||
|
||||
|
||||
|
16
source/_components/rpi_gpio.markdown
Normal file
16
source/_components/rpi_gpio.markdown
Normal file
@ -0,0 +1,16 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Raspberry PI GPIO"
|
||||
description: "Instructions how to integrate the GPIO capability of a Raspberry PI into Home Assistant."
|
||||
date: 2016-08-30 19:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: raspberry-pi.png
|
||||
ha_category: DIY
|
||||
ha_release: pre 0.7
|
||||
---
|
||||
|
||||
The `rpi_gpio` component is the base for all related GPIO platforms in Home Assistant. There is no setup needed for the component itself, for the platforms please check their corresponding pages.
|
||||
|
@ -23,9 +23,13 @@ To enable this sensor, add the following lines to your `configuration.yaml` file
|
||||
sensor:
|
||||
- platform: pi_hole
|
||||
host: 192.168.1.2
|
||||
ssl: True
|
||||
verify_ssl:
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **host** (*Optional*): The IP address of the Pi-Hole system. Defaults to `localhost`.
|
||||
- **ssl** (*Optional*): If `true`, use SSL/TLS to connect to the Pi-Hole system. Defaults to `False`.
|
||||
- **verify_ssl** (*Optional*): Verify the certification of the system. Default to True.
|
||||
|
||||
|
@ -22,7 +22,7 @@ splunk:
|
||||
host: SPLUNK_HOST_IP_ADDRESS_OR_HOST_NAME
|
||||
port: 8088
|
||||
token: B4415DFF-683C-5C6C-3994-4F6D4A5DB03A
|
||||
SSL: True
|
||||
ssl: True
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
@ -30,4 +30,4 @@ Configuration variables:
|
||||
- **host** (*Optional*): IP address or host name of your Splunk host, eg. http://192.168.1.10. Will default to `localhost` if not supplied.
|
||||
- **port** (*Optional*): Port to use. Defaults to 8088.
|
||||
- **token** (*Required*): The HTTP Event Collector Token already created in your Splunk instance.
|
||||
- **SSL** (*Optional*): Use https instead of http to connect. Defaults to False.
|
||||
- **ssl** (*Optional*): Use https instead of http to connect. Defaults to False.
|
||||
|
@ -10,6 +10,7 @@ footer: true
|
||||
logo: knx.png
|
||||
ha_category: DIY
|
||||
ha_release: 0.24
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
|
||||
@ -18,6 +19,7 @@ The `knx` switch component is used as in interface to switching actuators.
|
||||
To use your KNX switch in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
- platform: knx
|
||||
name: KNX Switch
|
||||
|
@ -22,6 +22,10 @@ vera:
|
||||
vera_controller_url: http://192.168.1.161:3480/
|
||||
```
|
||||
|
||||
<p class='note'>
|
||||
It is recommended to assign a static IP address to your Vera Controller. This ensures that it won't change IP addresses, so you won't have to change the `vera_controller_url` if it reboots and comes up with a different IP address. See your router's manual for details on how to set this up. If you need the MAC address of your Vera, check the label on the bottom.
|
||||
</p>
|
||||
|
||||
By default your switches will be added to HA as switches, however if some of them are light switches, you can tell HA this using the optional ```lights``` parameter as shown below.
|
||||
|
||||
Vera imports detailed zwave devices into HA - this can include system devices and other devices that you don't use, you can tell HA not to load these devices using the ```exclude:``` parameter as shown below.
|
||||
|
@ -14,7 +14,7 @@ It's already time for 0.28 thanks to our super short release cycles. Now, it' of
|
||||
|
||||
### {% linkable_title Reload automation rules %}
|
||||
|
||||
This release brings you a huge improvement of the [automation] and [group] handling. Both can be reloaded without a Home Assistant restart. The automations can be controlled directly from the frontend.
|
||||
This release brings you a huge improvement of the [automation] and [group] handling. Both can be reloaded without a Home Assistant restart by calling their new reload services. The automations can be controlled directly from the frontend.
|
||||
|
||||
<p class='img'>
|
||||
<img src='{{site_root}}/images/screenshots/automation-switches.png' />
|
||||
@ -32,22 +32,6 @@ The [Home Assistant API Documentation](https://dev-docs.home-assistant.io/en/dev
|
||||
### {% linkable_title Configuration validation %}
|
||||
The validation of the configuration is still on-going. Approximatly 80 % is done. This means that we will propably talk about this topic in the next release notes again. To align the configuration of components and platforms we needed to break some. Please refer to the Breaking changes section to check if you need to update your configuration or simple check your log for configuration validation errors. Thanks to [@kellerza], [@fabaff], [@Teagan42], and [@pvizeli] for your effort!
|
||||
|
||||
### {% linkable_title Templating %}
|
||||
`data_template` needs to be present in all notify templates for the future.
|
||||
|
||||
```yaml
|
||||
action:
|
||||
service: notify.telegram
|
||||
data_template:
|
||||
message: "Test from your Home"
|
||||
data:
|
||||
location:
|
||||
latitude: "{{ state.device_tracker.phone.attributes.latitude }}"
|
||||
longitude: "{{ state.device_tracker.phone.attributes.longitude }}"
|
||||
```
|
||||
|
||||
Stay tuned for more details.
|
||||
|
||||
### {% linkable_title All changes %}
|
||||
|
||||
<img src='/images/supported_brands/xbox-live.png' style='clear: right; margin-left: 5px; border:none; box-shadow: none; float: right; margin-bottom: 16px;' width='100' /><img src='/images/supported_brands/automatic.png' style='clear: right; margin-left: 5px; border:none; box-shadow: none; float: right; margin-bottom: 16px;' width='100' /><img src='/images/supported_brands/pi_hole.png' style='clear: right; margin-left: 5px; border:none; box-shadow: none; float: right; margin-bottom: 16px;' width='100' />
|
||||
@ -87,6 +71,22 @@ Stay tuned for more details.
|
||||
- Modbus: New `write_registers` [Modbus] service ([@persandstrom])
|
||||
- Device tracker: Fix TP-Link Archer C7 long passwords ([@snikch])
|
||||
|
||||
### {% linkable_title Hotfix 0.28.1 - September 12 %}
|
||||
|
||||
- Fix: Simplisafe alarm control panels accept any string for code ([@tchellomello])
|
||||
- Fix: Z-Wave would sometimes not detect all thermostats ([@turbokongen])
|
||||
- Fix: Automatic device tracker when 2 or more cars are tracked ([@teagan42])
|
||||
- Fix: Group ordering is now based on config again ([@balloob], [@kellerza])
|
||||
|
||||
### {% linkable_title Hotfix 0.28.2 - September 13 %}
|
||||
|
||||
- Light - pilight: Fix send RF code ([@DavidLP])
|
||||
- Recorder: Fix specifying SQLite ([@pvizeli])
|
||||
- Wink: Fix garage door detection ([@turbokongen])
|
||||
- Climate - Ecobee: Fix inverted high and low temperatures ([@turbokongen])
|
||||
- Allow changing covers using scenes ([@nvella])
|
||||
- Device tracker - Automatic: Fix polling ([@teagan42])
|
||||
|
||||
### {% linkable_title Breaking changes %}
|
||||
|
||||
- [OpenweatherMap] entity IDs are now like `sensor.owm_temperature`. Previously they were like `sensor.weather_temperature`. Apologies for this change, but we needed to make OpenWeatherMap more generic now that we have many weather platforms.
|
||||
@ -94,7 +94,7 @@ Stay tuned for more details.
|
||||
- [OctoPrint] component
|
||||
- mFi platform ([switch][mfi-switch] and [sensor][mfi-sensor])
|
||||
- NX584 Alarm Control Panel
|
||||
- Mediaplayer platforms [FireTV] and [MPD]
|
||||
- Mediaplayer platforms [FireTV], [Kodi] and [MPD]
|
||||
- [switch][command-line-switch] and the [cover][command-line-cover] `command_line` platforms
|
||||
- Custom components extending `BaseNotificationService` need to be aware that `kwargs.get(ATTR_TITLE)` will now return `None` if a title has not been set, and will need to specify `kwargs.get(ATTR_TITLE, ATTR_TITLE_DEFAULT)` if they always require a title.
|
||||
|
||||
@ -102,6 +102,8 @@ Stay tuned for more details.
|
||||
...don't hesitate to use our [Forum](https://community.home-assistant.io/) or join us for a little [chat](https://gitter.im/home-assistant/home-assistant).
|
||||
|
||||
|
||||
[@DavidLP]: https://github.com/DavidLP
|
||||
[@nvella]: https://github.com/nvella
|
||||
[@Ardetus]: https://github.com/Ardetus
|
||||
[@arsaboo]: https://github.com/arsaboo
|
||||
[@auchter]: https://github.com/auchter
|
||||
@ -153,5 +155,6 @@ Stay tuned for more details.
|
||||
[mfi-switch]: /components/switch.mfi/
|
||||
[mfi-sensor]: /components/sensor.mfi/
|
||||
[FireTV]: /components/media_player.firetv/
|
||||
[Kodi]: /components/media_player.kodi/
|
||||
[command-line-switch]: /components/switch.command_line/
|
||||
[command-line-cover]: /components/cover.command_line/
|
||||
|
@ -49,7 +49,7 @@ script:
|
||||
{% raw %}{% if is_state('device_tracker.paulus', 'home') %}
|
||||
Ha, Paulus is home!
|
||||
{% else %}
|
||||
Paulus is at {{ states('device_tracker.paulus')) }}.
|
||||
Paulus is at {{ states('device_tracker.paulus') }}.
|
||||
{% endif %}{% endraw %}
|
||||
```
|
||||
|
||||
|
@ -24,5 +24,11 @@ On Windows you can use `python setup.py develop` instead of the setup script.
|
||||
|
||||
After following these steps, running `hass` will invoke your local installation.
|
||||
|
||||
###Developing on Windows
|
||||
If you are using Windows as a development platform ensure you have the correct Microsoft Visual C++ build tools installed. Please check [the Windows Compilers](https://wiki.python.org/moin/WindowsCompilers) section on the [Python website](https://www.python.org/) for details. Validation using `tox` will fail if this is not done correctly.
|
||||
|
||||
Ensure you install or upgrade the Setuptools Python package. It contains compatibility improvements and adds automatic use of compilers:
|
||||
```bash
|
||||
pip install --upgrade setuptools
|
||||
```
|
||||
|
||||
|
@ -27,7 +27,7 @@ The `hello.html` contains the needed building blocks to create the elements insi
|
||||
</template>
|
||||
</dom-module>
|
||||
|
||||
</script>
|
||||
<script>
|
||||
Polymer({
|
||||
is: 'ha-panel-hello',
|
||||
properties: {
|
||||
@ -67,11 +67,10 @@ Create an entry for the new panel in your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
panel_custom:
|
||||
- name: hello_world
|
||||
- name: hello
|
||||
sidebar_title: Hello World
|
||||
sidebar_icon: mdi:hand-pointing-right
|
||||
url_path: hello_world
|
||||
webcomponent_path: <config dir>/panels/hello.html
|
||||
url_path: hello
|
||||
```
|
||||
|
||||
For more examples, see the [Custom panel Examples](/cookbook#custom-panel-examples) on our examples page.
|
||||
|
@ -15,3 +15,11 @@ Welcome to the Home Assistant development documentation. This is the place to le
|
||||
<img src='/images/architecture/component_interaction.png' alt='Diagram showing interaction between components and the Home Assistant core.'>
|
||||
Diagram showing interaction between components and the Home Assistant core.
|
||||
</p>
|
||||
|
||||
The best way to familiarize yourself with Home Assistant is to watch the PyCon 2016 talk about Home Assistant and read through the [Python API docs].
|
||||
|
||||
<div class='videoWrapper'>
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/Cfasc9EgbMU" frameborder="0" allowfullscreen></iframe>
|
||||
</div>
|
||||
|
||||
[Python API docs]: https://dev-docs.home-assistant.io
|
||||
|
42
source/developers/maintenance.markdown
Normal file
42
source/developers/maintenance.markdown
Normal file
@ -0,0 +1,42 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Maintenance"
|
||||
description: "Steps involved to maintain the current state of Home Assistant."
|
||||
date: 2016-09-13 17:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
This page documents a couple of points for maintaining the Home Assistant code. Most of the tasks don't need to be performed on a regular base thus the steps, used tools, or details are preserved here.
|
||||
|
||||
### {% linkable_title Line separator %}
|
||||
|
||||
People are using various operating systems to develop components and platforms for Home Assistant. This could lead to different line endings on file. We prefer `LN`. Especially Microsoft Windows tools tend to use `CRLF`.
|
||||
|
||||
```bash
|
||||
$ find homeassistant -name "*.py" -exec file {} \; | grep BOM
|
||||
$ find homeassistant -name "*.py" -exec file {} \; | grep CRLF
|
||||
```
|
||||
|
||||
To fix the line spearator, use `dos2unix` or `sed`.
|
||||
|
||||
```bash
|
||||
$ dos2unix homeassistant/components/notify/kodi.py
|
||||
```
|
||||
|
||||
### {% linkable_title Dependencies %}
|
||||
|
||||
A lot of components and platforms depends on third-party Python modules. The dependencies which are stored in the `requirements_*.txt` files are tracked by [gemnasium](https://gemnasium.com/github.com/home-assistant/home-assistant) and [Requires.io](https://requires.io/github/home-assistant/home-assistant/requirements/?branch=dev).
|
||||
|
||||
If you update the requirements of a component/platform through the `REQUIREMENTS = ['modules-xyz==0.3']` entry, run the provided script to update the `requirements_*.txt` file(s).
|
||||
|
||||
```bash
|
||||
$ script/gen_requirements_all.py
|
||||
```
|
||||
|
||||
Start a test run of Home Assistant if that was successful include all files in a Pull Request. Add a short summary of the changes, a sample configuration entry, details about the tests, and other useful information to the description.
|
||||
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Python API"
|
||||
description: "Home Assistant Python API documentation"
|
||||
title: "Python Remote API"
|
||||
description: "Home Assistant Python Remote API documentation"
|
||||
date: 2015-05-11 12:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
@ -18,7 +18,7 @@ First import the module and setup the basics.
|
||||
```python
|
||||
import homeassistant.remote as remote
|
||||
|
||||
api = remote.API('127.1.0.1', 'password')
|
||||
api = remote.API('127.0.0.1', 'password')
|
||||
print(remote.validate_api(api))
|
||||
```
|
||||
|
||||
@ -27,7 +27,7 @@ This snippets shows how to use the `homeassistant.remote` package in another way
|
||||
```python
|
||||
import homeassistant.remote as remote
|
||||
|
||||
api = remote.API('127.1.0.1', 'password')
|
||||
api = remote.API('127.0.0.1', 'password')
|
||||
hass = remote.HomeAssistant(api)
|
||||
hass.start()
|
||||
living_room = hass.states.get('group.living_room')
|
||||
@ -40,7 +40,7 @@ Get the current configuration of a Home Asssitant instance.
|
||||
```python
|
||||
import homeassistant.remote as remote
|
||||
|
||||
api = remote.API('127.1.0.1', 'password')
|
||||
api = remote.API('127.0.0.1', 'password')
|
||||
|
||||
print(remote.get_config(api))
|
||||
```
|
||||
@ -52,7 +52,7 @@ Similar to the output in the "Developer Tools" of the frontend.
|
||||
```python
|
||||
import homeassistant.remote as remote
|
||||
|
||||
api = remote.API('127.1.0.1', 'YOUR_PASSWORD')
|
||||
api = remote.API('127.0.0.1', 'YOUR_PASSWORD')
|
||||
|
||||
print('-- Available services:')
|
||||
services = remote.get_services(api)
|
||||
@ -77,7 +77,7 @@ To get the details of a single entity the `get_state` method is used.
|
||||
```python
|
||||
import homeassistant.remote as remote
|
||||
|
||||
api = remote.API('127.1.0.1', 'YOUR_PASSWORD')
|
||||
api = remote.API('127.0.0.1', 'YOUR_PASSWORD')
|
||||
office_temperature = remote.get_state(api, 'sensor.office_temperature')
|
||||
print('{} is {} {}.'.format(office_temperature.attributes['friendly_name'],
|
||||
office_temperature.state,
|
||||
@ -97,7 +97,7 @@ The exact same thing is working for a switch. The difference is that both entiti
|
||||
```python
|
||||
import homeassistant.remote as remote
|
||||
|
||||
api = remote.API('127.1.0.1', 'YOUR_PASSWORD')
|
||||
api = remote.API('127.0.0.1', 'YOUR_PASSWORD')
|
||||
switch_livingroom = remote.get_state(api, 'switch.livingroom_pin_2')
|
||||
print('{} is {}.'.format(switch_livingroom.attributes['friendly_name'],
|
||||
switch_livingroom.state
|
||||
@ -113,7 +113,7 @@ Of course, it's possible to set the state.
|
||||
import homeassistant.remote as remote
|
||||
from homeassistant.const import STATE_ON
|
||||
|
||||
api = remote.API('127.1.0.1', 'YOUR_PASSWORD')
|
||||
api = remote.API('127.0.0.1', 'YOUR_PASSWORD')
|
||||
remote.set_state(api, 'sensor.office_temperature', new_state=123)
|
||||
remote.set_state(api, 'switch.livingroom_pin_2', new_state=STATE_ON)
|
||||
```
|
||||
@ -129,7 +129,7 @@ If you want to turn on all entities of a domain, just use a service which was re
|
||||
import time
|
||||
import homeassistant.remote as remote
|
||||
|
||||
api = remote.API('127.1.0.1', 'YOUR_PASSWORD')
|
||||
api = remote.API('127.0.0.1', 'YOUR_PASSWORD')
|
||||
domain = 'switch'
|
||||
|
||||
remote.call_service(api, domain, 'turn_on')
|
||||
@ -145,7 +145,7 @@ To turn on or off a single switch. The ID of the entity is needed as attribute.
|
||||
import time
|
||||
import homeassistant.remote as remote
|
||||
|
||||
api = remote.API('127.1.0.1', 'YOUR_PASSWORD')
|
||||
api = remote.API('127.0.0.1', 'YOUR_PASSWORD')
|
||||
domain = 'switch'
|
||||
switch_name = 'switch.livingroom_pin_2'
|
||||
|
||||
@ -185,7 +185,7 @@ The example uses the jabber notification platform to send a single message to th
|
||||
```python
|
||||
import homeassistant.remote as remote
|
||||
|
||||
api = remote.API('127.1.0.1', 'YOUR_PASSWORD')
|
||||
api = remote.API('127.0.0.1', 'YOUR_PASSWORD')
|
||||
domain = 'notify'
|
||||
data = {"title":"Test", "message":"A simple test message from HA."}
|
||||
|
||||
|
@ -16,7 +16,7 @@ This page describes the steps for publishing a new Home Assistant release.
|
||||
1. Create a pull request from `dev` to `master` with the upcoming release number as title.
|
||||
2. Merge `master` into `dev` to make the PR mergable. PR message contains intro, highlighting major changes, and an overview of all changes tagging each author.
|
||||
3. Update `homeassistant/const.py` with the correct version number (remove the the `dev` tag) and push that commit.
|
||||
4. Merge pull request.
|
||||
4. Merge pull request (DO NOT SQUASH!).
|
||||
5. Then, after merged, push another update to `dev` of `homeassistant/const.py` that includes the next version with the `dev` tag. Add a meaningful commit message like "Version bump to X". This commit acts as marker for the next release.
|
||||
6. Go to [releases](https://github.com/home-assistant/home-assistant/releases) and tag a new release on the `master` branch. "Tag version" and "Release title" are the version number (`O.x` for major version, `0.x.y` for minor and bug fix releases). Release description is the text from PR. Press "Publish release" to finish the process.
|
||||
|
||||
|
@ -39,7 +39,7 @@ print(response.text)
|
||||
```
|
||||
|
||||
<p class='note'>
|
||||
You can append `?password=YOUR_PASSWORD` to any url to log in automatically.
|
||||
You can append `?api_password=YOUR_PASSWORD` to any url to log in automatically.
|
||||
</p>
|
||||
|
||||
Successful calls will return status code 200 or 201. Other status codes that can return are:
|
||||
|
@ -23,6 +23,7 @@ automation:
|
||||
event_data:
|
||||
mood: happy
|
||||
```
|
||||
For example, to carry out actions when Home Assistant starts, you can use `event_type: homeassistant_start`. See other 'events' supported by Home Assistant [here](https://home-assistant.io/topics/events/).
|
||||
|
||||
### {% linkable_title MQTT trigger %}
|
||||
Triggers when a specific message is received on given topic. Optionally can match on the payload being sent over the topic.
|
||||
@ -97,7 +98,7 @@ Template triggers work by evaluating a [template] on each state change. The trig
|
||||
automation:
|
||||
trigger:
|
||||
platform: template
|
||||
value_template: '{% raw %}{% if is_state('device_tracker.paulus', 'home') %}true{% endif %}{% endraw %}'
|
||||
value_template: "{% raw %}{% if is_state('device_tracker.paulus', 'home') %}true{% endif %}{% endraw %}"
|
||||
```
|
||||
|
||||
### {% linkable_title Time trigger %}
|
||||
|
@ -19,7 +19,7 @@ homeassistant:
|
||||
latitude: 32.87336
|
||||
longitude: 117.22743
|
||||
|
||||
# Impacts weather/sunrise data (altitude above sea level)
|
||||
# Impacts weather/sunrise data (altitude above sea level in meters)
|
||||
elevation: 430
|
||||
|
||||
# 'metric' for Metric, 'imperial' for Imperial
|
||||
|
@ -54,7 +54,7 @@ camera 2:
|
||||
### {% linkable_title Grouping devices %}
|
||||
|
||||
Once you have a bunch of devices set up, it is time to organize them into groups.
|
||||
Each group consists of a name and a list of entity IDs. Entity IDs can be retrieved from the web interface by using the Set State page in the Developer Tools (second icon).
|
||||
Each group consists of a name and a list of entity IDs. Entity IDs can be retrieved from the web interface by using the Set State page in the Developer Tools ().
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry showing two styles
|
||||
|
@ -56,6 +56,7 @@ To upgrade the All-In-One setup manually:
|
||||
* Change to hass user `sudo su -s /bin/bash hass`
|
||||
* Change to virtual enviroment `source /srv/hass/hass_venv/bin/activate`
|
||||
* Update HA `pip3 install --upgrade homeassistant`
|
||||
* Type `exit` to logout the hass user and return to the `pi` user.
|
||||
|
||||
To upgrade with fabric:
|
||||
|
||||
@ -68,7 +69,6 @@ After upgrading, you can restart Home Assistant a few different ways:
|
||||
* Restarting the Raspberry Pi `sudo reboot`
|
||||
* Restarting the Home-Assistant Service `sudo systemctl restart home-assistant.service`
|
||||
|
||||
|
||||
### {% linkable_title Using the OZWCP web application %}
|
||||
|
||||
To launch the OZWCP web application:
|
||||
@ -84,6 +84,10 @@ To launch the OZWCP web application:
|
||||
Don't check the USB box regardless of using a USB based device.
|
||||
</p>
|
||||
|
||||
### {% linkable_title Using the GPIOs %}
|
||||
|
||||
Please note that if you are using any components for Home Assistant that would use the GPIOs on the RPI, you will need to grant the default AiO user `hass` access to the GPIOs. Run the following command `sudo adduser hass gpio` while in a terminal session on your Pi. This is a one time configuration change to allow All In One Installer based Home Assistant access to the GPIOs.
|
||||
|
||||
### {% linkable_title WinSCP %}
|
||||
|
||||
If you are Windows users who is using [WinSCP](https://winscp.net/), please note that after running the installer, you will need to modify settings allowing you to "switch users" to edit your configuration files. The needed change within WinSCP is: **Environment** -> **SCP/Shell** -> **Shell** and set it to `sudo su -`.
|
||||
|
@ -23,6 +23,14 @@ Using the Synology webadmin:
|
||||
|
||||
SSH onto your synology & login as admin or root
|
||||
|
||||
- Log in with your own administrator account
|
||||
- Switch to root using:
|
||||
|
||||
```bash
|
||||
$ sudo -i
|
||||
```
|
||||
|
||||
|
||||
Check the path to python3 (assumed to be /volume1/@appstore/py3k/usr/local/bin)
|
||||
|
||||
```bash
|
||||
@ -175,6 +183,19 @@ Make the daemon file executable:
|
||||
$ chmod 777 /volume1/homeassistant/hass-daemon
|
||||
```
|
||||
|
||||
Update your firewall (if it is turned on on the Synology device):
|
||||
|
||||
- Go to your Synology control panel
|
||||
- Go to security
|
||||
- Go to firewall
|
||||
- Go to Edit Rules
|
||||
- Click Create
|
||||
- Select Custom: Destination port "TCP"
|
||||
- Type "8123" in port
|
||||
- Click on OK
|
||||
- Click on OK again
|
||||
|
||||
|
||||
Copy your configuration.yaml file into the config folder
|
||||
That's it... you're all set to go
|
||||
|
||||
|
@ -9,7 +9,7 @@ sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
There are several reasons why it makes sense to run Home Assistant in a virtual environment. A [virtualenv](https://virtualenv.pypa.io/en/latest/) encapsulates all aspect of a Python environment within a single directory tree. That means the Python packages you install for Home Assistant won't interact with the rest of your system and vice-versa. It means a random upgrade for some other program on your computer won't break Home Assitant, and it means you don't need to install Python packages as root.
|
||||
There are several reasons why it makes sense to run Home Assistant in a virtual environment. A [virtualenv](https://virtualenv.pypa.io/en/latest/) encapsulates all aspect of a Python environment within a single directory tree. That means the Python packages you install for Home Assistant won't interact with the rest of your system and vice-versa. It means a random upgrade for some other program on your computer won't break Home Assistant, and it means you don't need to install Python packages as root.
|
||||
|
||||
Virtualenvs are pretty easy to setup. This example will walk through one method of setting one up (there are certainly others). We'll be using Debian in this example (as many Home Assistant users are running Raspbian on a Raspberry Pi), but all of the Python related steps should be the same on just about any platform.
|
||||
|
||||
@ -105,7 +105,7 @@ The [autostart instructions](/getting-started/autostart/) will work just fine, j
|
||||
|
||||
### {% linkable_title Installing python-openzwave %}
|
||||
|
||||
If you want to use Z-Wave devices, you will need to install `python-openzwave` in your virtualenv. This requires a small tweak to the instructions on home-assistant.io
|
||||
If you want to use Z-Wave devices, you will need to install `python-openzwave` in your virtualenv. This requires a small tweak to the instructions in [the Z-Wave Getting Started documentation](/getting-started/z-wave/)
|
||||
|
||||
Install the dependencies as normal (Note: you will need to do this as your normal user, since `hass` isn't a sudoer).
|
||||
|
||||
|
@ -16,14 +16,15 @@ Conditions can be used within a script or automation to prevent further executio
|
||||
Test multiple conditions in 1 condition statement. Passes if all embedded conditions are valid.
|
||||
|
||||
```yaml
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: 'device_tracker.paulus'
|
||||
state: 'home'
|
||||
- condition: numeric_state
|
||||
entity_id: 'sensor.temperature'
|
||||
below: '20'
|
||||
condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: 'device_tracker.paulus'
|
||||
state: 'home'
|
||||
- condition: numeric_state
|
||||
entity_id: 'sensor.temperature'
|
||||
below: '20'
|
||||
```
|
||||
|
||||
### {% linkable_title OR condition %}
|
||||
@ -31,14 +32,15 @@ conditions:
|
||||
Test multiple conditions in 1 condition statement. Passes if any embedded conditions is valid.
|
||||
|
||||
```yaml
|
||||
condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: 'device_tracker.paulus'
|
||||
state: 'home'
|
||||
- condition: numeric_state
|
||||
entity_id: 'sensor.temperature'
|
||||
below: '20'
|
||||
condition:
|
||||
condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: 'device_tracker.paulus'
|
||||
state: 'home'
|
||||
- condition: numeric_state
|
||||
entity_id: 'sensor.temperature'
|
||||
below: '20'
|
||||
```
|
||||
|
||||
### {% linkable_title MIXED AND and OR conditions %}
|
||||
@ -47,19 +49,20 @@ Test multiple AND and OR conditions in 1 condition statement. Passes if any embe
|
||||
This allows you to mix several AND and OR conditions together.
|
||||
|
||||
```yaml
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: 'device_tracker.paulus'
|
||||
state: 'home'
|
||||
- condition: or
|
||||
conditions:
|
||||
condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: sensor.weather_precip
|
||||
state: 'rain'
|
||||
- condition: numeric_state
|
||||
entity_id: 'sensor.temperature'
|
||||
below: '20'
|
||||
entity_id: 'device_tracker.paulus'
|
||||
state: 'home'
|
||||
- condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: sensor.weather_precip
|
||||
state: 'rain'
|
||||
- condition: numeric_state
|
||||
entity_id: 'sensor.temperature'
|
||||
below: '20'
|
||||
```
|
||||
|
||||
### {% linkable_title Numeric state condition %}
|
||||
|
@ -50,7 +50,7 @@ state: 'home'
|
||||
|
||||
### {% linkable_title Delay %}
|
||||
|
||||
Delays are useful for temporarily suspending your script and start it at a later moment. We support different syntaxes for a delay as shown below.
|
||||
Delays are useful for temporarily suspending your script and start it at a later moment. We support different syntaxes for a delay as shown below.
|
||||
|
||||
```yaml
|
||||
# Waits 1 hour
|
||||
@ -72,7 +72,7 @@ delay:
|
||||
```yaml
|
||||
# Waits however many minutes input_slider.minute_delay is set to
|
||||
# Valid formats include HH:MM and HH:MM:SS
|
||||
delay: {% raw %}'00:{{ input_slider.minute_delay | int }}:00'{% endraw %}
|
||||
delay: {% raw %}'00:{{ states.input_slider.minute_delay.state | int }}:00'{% endraw %}
|
||||
```
|
||||
|
||||
### {% linkable_title Fire an Event %}
|
||||
|
@ -41,6 +41,8 @@ sensor:
|
||||
|
||||
Another common problem is that a required configuration setting is missing. If this is the case, the component will report this to `home-assistant.log`. You can have a look at [the various component pages](/components/) for instructions on how to setup the components.
|
||||
|
||||
See the [logger](/components/logger/) component for instructions on how to define the level of logging you require for specific modules.
|
||||
|
||||
If you find any errors or want to expand the documentation, please [let us know](https://github.com/home-assistant/home-assistant.io/issues).
|
||||
|
||||
#### {% linkable_title Problems with dependencies %}
|
||||
|
@ -35,6 +35,9 @@ Have you found an issue in your Home Assistant installation? Please report it. R
|
||||
- [Automating your Home with Home Assistant](https://www.youtube.com/watch?v=4-6rTwKl6ww&list=PLKsVm4cWHDQB9JBcD7_ZfNcvC6xx47QHT&index=2) at OpenIoT 2016 - March 2016
|
||||
- [Automating Your Life - Home Automation](http://slides.com/teagan42/life_automation#/) at Develop Denver 2016 - August
|
||||
|
||||
### {% linkable_title Site Search %}
|
||||
|
||||
There is not currently a site search for Home-Assistant.io but it's in the works. For now, you can use this [Google link](https://cse.google.com/cse/publicurl?cx=005053695590750500199:dtrfi8yigbi) which will narrow your search to this specific site.
|
||||
|
||||
### {% linkable_title Roadmap %}
|
||||
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 112 KiB |
@ -16,7 +16,7 @@ hide_github_edit: true
|
||||
<div class="grid__item one-third lap-one-third palm-one-whole">
|
||||
<div class='current-version material-card text'>
|
||||
<h1>Current Version: 0.29</h1>
|
||||
Released: <span class='release-date'>September 14, 2016</span>
|
||||
Released: <span class='release-date'>September 29, 2016</span>
|
||||
|
||||
<div class='links'>
|
||||
<a href='/blog/2016/09/24/tbd/'>Release notes</a>
|
||||
|
Loading…
x
Reference in New Issue
Block a user