mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-15 21:36:52 +00:00
Merge branch 'current' into next
This commit is contained in:
commit
d3627d6af7
1
Gemfile
1
Gemfile
@ -20,6 +20,7 @@ end
|
||||
|
||||
group :jekyll_plugins do
|
||||
gem 'jekyll-paginate'
|
||||
gem 'jekyll-redirect-from'
|
||||
gem 'jekyll-sitemap'
|
||||
gem 'jekyll-time-to-read'
|
||||
gem 'octopress', '~> 3.0'
|
||||
|
@ -27,6 +27,8 @@ GEM
|
||||
rouge (~> 1.7)
|
||||
safe_yaml (~> 1.0)
|
||||
jekyll-paginate (1.1.0)
|
||||
jekyll-redirect-from (0.11.0)
|
||||
jekyll (>= 2.0)
|
||||
jekyll-sass-converter (1.3.0)
|
||||
sass (~> 3.2)
|
||||
jekyll-sitemap (0.11.0)
|
||||
@ -118,6 +120,7 @@ DEPENDENCIES
|
||||
haml (~> 4.0)
|
||||
jekyll (~> 3.0)
|
||||
jekyll-paginate
|
||||
jekyll-redirect-from
|
||||
jekyll-sitemap
|
||||
jekyll-time-to-read
|
||||
octopress (~> 3.0)
|
||||
|
@ -49,6 +49,7 @@ kramdown:
|
||||
highlighter: rouge
|
||||
|
||||
gems:
|
||||
- jekyll-redirect-from
|
||||
- jekyll-time-to-read
|
||||
- octopress-filters
|
||||
- octopress-include-tag
|
||||
@ -131,9 +132,9 @@ social:
|
||||
# Home Assistant release details
|
||||
current_major_version: 0
|
||||
current_minor_version: 37
|
||||
current_patch_version: 0
|
||||
date_released: 2017-01-29
|
||||
current_patch_version: 1
|
||||
date_released: 2017-02-02
|
||||
|
||||
# Either # or the anchor link to latest release notes in the blog post.
|
||||
# Must be prefixed with a # and have double quotes around it.
|
||||
patch_version_notes: ""
|
||||
patch_version_notes: "#release-0371---february-2"
|
||||
|
@ -15,22 +15,6 @@
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.front-install {
|
||||
border: none;
|
||||
font-size: 1em;
|
||||
background-color: #333;
|
||||
margin-bottom: 16px;
|
||||
display: inline-block;
|
||||
padding: 8px;
|
||||
color: #DDD;
|
||||
|
||||
div:before {
|
||||
content: '$';
|
||||
color: #c82829;
|
||||
margin-right: 6px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.material-card {
|
||||
@ -320,56 +304,6 @@ p.note {
|
||||
-moz-transition-property: -moz-transform, opacity;
|
||||
transition-property: transform, opacity;
|
||||
}
|
||||
|
||||
#componentContainer {
|
||||
a {
|
||||
display: inline-block;
|
||||
width: 202px;
|
||||
height: 142px;
|
||||
background-color: #fefefe;
|
||||
margin-right: 4px;
|
||||
margin-bottom: 8px;
|
||||
border-radius: 2px;
|
||||
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
|
||||
padding: 8px;
|
||||
text-align: center;
|
||||
text-decoration: none;
|
||||
|
||||
.img-container {
|
||||
height: 50px;
|
||||
margin: 8px 0;
|
||||
font: 0/0 a;
|
||||
|
||||
&:before { /* create a full-height inline block pseudo=element */
|
||||
content: ' ';
|
||||
display: inline-block;
|
||||
vertical-align: middle; /* vertical alignment of the inline element */
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
max-height: 50px;
|
||||
box-shadow: none;
|
||||
border: none;
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
||||
|
||||
.title {
|
||||
text-decoration: none;
|
||||
font-size: 18px;
|
||||
color: #000;
|
||||
line-height: 1.3em;
|
||||
height: 2.6em;
|
||||
}
|
||||
|
||||
.category {
|
||||
font-size: 14px;
|
||||
color: #AAA;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: $lap-end) {
|
||||
@ -422,6 +356,55 @@ p.note {
|
||||
}
|
||||
}
|
||||
|
||||
.hass-option-cards {
|
||||
.option-card {
|
||||
display: inline-block;
|
||||
width: 202px;
|
||||
height: 142px;
|
||||
background-color: #fefefe;
|
||||
margin-right: 4px;
|
||||
margin-bottom: 8px;
|
||||
border-radius: 2px;
|
||||
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
|
||||
padding: 8px;
|
||||
text-align: center;
|
||||
text-decoration: none;
|
||||
|
||||
.img-container {
|
||||
height: 50px;
|
||||
margin: 8px 0;
|
||||
font: 0/0 a;
|
||||
|
||||
&:before { /* create a full-height inline block pseudo=element */
|
||||
content: ' ';
|
||||
display: inline-block;
|
||||
vertical-align: middle; /* vertical alignment of the inline element */
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
max-height: 50px;
|
||||
box-shadow: none;
|
||||
border: none;
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
||||
|
||||
.title {
|
||||
text-decoration: none;
|
||||
font-size: 18px;
|
||||
color: #000;
|
||||
line-height: 1.3em;
|
||||
height: 2.6em;
|
||||
}
|
||||
|
||||
.category {
|
||||
font-size: 14px;
|
||||
color: #AAA;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.aside-module {
|
||||
.section {
|
||||
@ -481,3 +464,7 @@ twitterwidget {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
.text-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
@ -15,8 +15,6 @@ ha_release: pre 0.7
|
||||
|
||||
The `mjpeg` camera platform allows you to integrate IP cameras which are capable to stream their video with MJPEG into Home Assistant.
|
||||
|
||||
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]`.
|
||||
|
||||
To enable this camera in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
|
@ -60,6 +60,8 @@ device_tracker:
|
||||
- 10.0.0.2
|
||||
- 10.0.0.15
|
||||
```
|
||||
In the above example, Nmap will be call with the process:
|
||||
`nmap -oX - 192.168.1.1/24 10.0.0.2 10.0.0.15 -F --host-timeout 5s`
|
||||
|
||||
An example of how the Nmap scanner can be customized:
|
||||
|
||||
|
@ -103,6 +103,11 @@ You can verify that the `emulated_hue` component has been loaded and is respondi
|
||||
- `http://<HA IP Address>:8300/description.xml` - This URL should return a descriptor file in the form of an XML file.
|
||||
- `http://<HA IP Address>:8300/api/pi/lights` - This will return a list of devices, lights, scenes, groups, etc.. that `emulated_hue` is exposing to Alexa.
|
||||
|
||||
An additional step is required to run Home Assistant as non-root user and use port 80 when using the AiO script. Execute the following command to allow `emulated_hue` to use port 80 as non-root user.
|
||||
|
||||
```bash
|
||||
sudo setcap 'cap_net_bind_service=+ep' /srv/homeassistant/homeassistant_venv/bin/python3
|
||||
```
|
||||
|
||||
### {% linkable_title License %}
|
||||
|
||||
|
@ -30,14 +30,16 @@ Configuration variables:
|
||||
|
||||
### {% linkable_title Raspbian Debian Jessie Lite Installations %}
|
||||
To get the binary on Raspbian Debian Jessie Lite on a RPi you need to perform the following:
|
||||
```
|
||||
$ sudo apt-get install libav-tools
|
||||
```
|
||||
This will get a forked version of ffmpeg called avconv, once this is installed you need to use the following in the configuration:
|
||||
|
||||
```bash
|
||||
$ sudo echo "deb http://ftp.debian.org/debian jessie-backports main" >> /etc/apt/sources.list
|
||||
$ sudo apt-get update
|
||||
$ sudo apt-get -t jessie-backports install ffmpeg
|
||||
```
|
||||
We can use now following in the configuration:
|
||||
```
|
||||
ffmpeg:
|
||||
ffmpeg_bin: /usr/bin/avconv
|
||||
ffmpeg_bin: /usr/bin/ffmpeg
|
||||
```
|
||||
|
||||
### {% linkable_title Troubleshooting %}
|
||||
|
@ -27,16 +27,23 @@ The computer running Home Assistant must support CEC, and of course be connected
|
||||
|
||||
#### {% linkable_title Symlinking into virtual environment %}
|
||||
|
||||
Create a symlink to the `cec` installation.
|
||||
Create a symlink to the `cec` installation. Keep in mind different installation methods will result in different locations of cec.
|
||||
|
||||
```bash
|
||||
$ ln -s /usr/local/lib/python3.4/dist-packages/cec /path/to/your/venv/lib/python3.4/site-packages
|
||||
$ ln -s /path/to/your/installation/of/cec /path/to/your/venv/lib/python3.4/site-packages
|
||||
```
|
||||
##### {% linkable_title Symlinking examples: %}
|
||||
|
||||
For the default virtual environment of a [HASSbian Image for Raspberry Pi](/getting-started/installation-raspberry-pi-image/) the command would be as follows.
|
||||
|
||||
```bash
|
||||
$ ln -s /usr/local/lib/python3.4/dist-packages/cec /srv/homeassistant/lib/python3.4/site-packages
|
||||
```
|
||||
|
||||
For the default virtual environment of a [Raspberry Pi All-In-One installation](/getting-started/installation-raspberry-pi-all-in-one/) the command would be as follows.
|
||||
|
||||
```bash
|
||||
$ ln -s /usr/local/lib/python3.4/dist-packages/cec /srv/hass/hass_venv/lib/python3.4/site-packages
|
||||
$ ln -s /usr/local/lib/python3.4/site-packages/cec /srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages
|
||||
```
|
||||
|
||||
For the default virtual environment of a [Manual installation](/getting-started/installation-raspberry-pi/) the command would be as follows.
|
||||
|
@ -14,6 +14,10 @@ Image processing enables Home Assistant to process images from [cameras](/compon
|
||||
|
||||
For interval control, use `scan_interval` in platform.
|
||||
|
||||
<p class='note'>
|
||||
If you are running Home Assistant over SSL or from within a container, you will have to setup a base url inside the [http component](/components/http/).
|
||||
</p>
|
||||
|
||||
## {% linkable_title ALPR %}
|
||||
|
||||
Alpr entities attribute have a vehicle counter `vehicles` and all found plates as `plates`.
|
||||
|
@ -8,7 +8,7 @@ comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: microsoft.png
|
||||
ha_category: Image_Processing
|
||||
ha_category: Image Processing
|
||||
featured: false
|
||||
ha_release: 0.37
|
||||
---
|
||||
|
@ -32,10 +32,11 @@ light:
|
||||
Configuration variables:
|
||||
|
||||
- **host** (*Optional*): IP address of the device, eg. 192.168.1.10. Required if not using the `discovery` component to discover Hue bridges.
|
||||
- **allow_unreachable** (*Optional*): This will allow unreachable bulbs to report their state correctly. By default *name* from the device is used.
|
||||
|
||||
- **allow_unreachable** (*Optional*): (true/false) This will allow unreachable bulbs to report their state correctly.
|
||||
- **filename** (*Optional*): Make this unique if specifying multiple Hue hubs.
|
||||
- **allow_in_emulated_hue** (*Optional*): Enable this to block all Hue entities from being added to the `emulated_hue` component.
|
||||
- **allow_hue_groups** (*Optional*): Enable this to stop Home Assistant from importing the groups defined on the Hue bridge.
|
||||
- **allow_in_emulated_hue** (*Optional*): )true/false) Enable this to block all Hue entities from being added to the `emulated_hue` component.
|
||||
- **allow_hue_groups** (*Optional*): (true/false) Enable this to stop Home Assistant from importing the groups defined on the Hue bridge.
|
||||
|
||||
### {% linkable_title Using Hue Groups in Home Assistant %}
|
||||
|
||||
|
@ -14,6 +14,8 @@ ha_release: 0.32
|
||||
|
||||
The `yeelight` light platform allows you to control your Yeelight Wifi bulbs with Home Assistant.
|
||||
|
||||
### {% linkable_title Example configuration %}
|
||||
|
||||
To enable those lights, add the following lines to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
@ -22,16 +24,26 @@ light:
|
||||
- platform: yeelight
|
||||
devices:
|
||||
192.168.1.25:
|
||||
name: Front Door
|
||||
192.168.1.13:
|
||||
name: Living Room
|
||||
transition: 1000
|
||||
use_music_mode: True (defaults to False)
|
||||
save_on_change: False (defaults to True)
|
||||
192.168.1.13:
|
||||
name: Front Door
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **ip** (*Required*): IP(s) of your wifi bulbs
|
||||
- **name** (*Optional*): A friendly name for the device.
|
||||
- **transition** (*Optional*, default 350): Smooth transitions over time (in ms).
|
||||
- **use_music_mode** (*Optional*, default False): Enable music mode.
|
||||
- **save_on_change** (*Optional*, default True): Saves the bulb state when changed from Home Assistant.
|
||||
|
||||
#### {% linkable_title Music mode %}
|
||||
Per default the bulb limits the amount of requests per minute to 60, a limitation which can be bypassed by enabling the music mode. In music mode the bulb is commanded to connect back to a socket provided by the component and it tries to keep the connection open, which may not be wanted in all use-cases.
|
||||
|
||||
### {% linkable_title Initial setup %}
|
||||
<p class='note'>
|
||||
Before trying to control your light through Home Assistant, you have to setup your bulb using Yeelight app. ( [Android](https://play.google.com/store/apps/details?id=com.yeelight.cherry&hl=fr), [IOS](https://itunes.apple.com/us/app/yeelight/id977125608?mt=8) ).
|
||||
In the bulb property, you have to enable "Developer Mode" Developer mode may only be available with the latest firmware installed on your bulb. Firmware can be updated in the application after connecting the bulb.
|
||||
@ -39,7 +51,7 @@ Determine your bulb ip (using router, software, ping ...)
|
||||
</p>
|
||||
|
||||
<p class='note warning'>
|
||||
Tests are only made with a YLDP03YL model. Because it's the only hardware developer owns. If you have bugs with another kind of model, you could open an issue on [Home Assistant Github](https://github.com/home-assistant/home-assistant)
|
||||
This component is tested to work with models YLDP01YL and YLDP03YL. If you have a different model and it is working please let us know.
|
||||
</p>
|
||||
|
||||
|
||||
|
@ -24,3 +24,6 @@ The requirement is that you have setup [Wink](/components/wink/).
|
||||
- Schlage
|
||||
- Generic Z-wave
|
||||
|
||||
<p class='note'>
|
||||
If supported by your lock, a binary sensor will be created for each user key code you have defined. These key codes will turn on when the code is entered and automatically turn off after a few seconds.
|
||||
</p>
|
||||
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Microsoft Face"
|
||||
description: "Instructions how to integrate Microsoft Face component into Home Assistant."
|
||||
description: "Instructions on how to integrate Microsoft Face component into Home Assistant."
|
||||
date: 2017-01-25 00:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
@ -12,9 +12,9 @@ ha_category: Hub
|
||||
ha_release: "0.37"
|
||||
---
|
||||
|
||||
The `microsoft_face` component platform is the main component for Microsoft Azure Cognitive service [Face](https://www.microsoft.com/cognitive-services/en-us/face-api). All data are in a own private instance in the Azure cloud.
|
||||
The `microsoft_face` component platform is the main component for Microsoft Azure Cognitive service [Face](https://www.microsoft.com/cognitive-services/en-us/face-api). All data are stored in your own private instance in the Azure cloud.
|
||||
|
||||
You need an API key which is free but requires a [Azure registration](https://azure.microsoft.com/de-de/free/) with your microsoft ID. The free resource (*F0*) is limit to 30k requests in a month and 20 per minute. If you don't want use a the Azure cloud, you can also get a API key with registration on [cognitive-services](https://www.microsoft.com/cognitive-services/en-us/subscriptions) but they need to recreate all 90 days.
|
||||
You need an API key which is free but requires a [Azure registration](https://azure.microsoft.com/de-de/free/) using your microsoft ID. The free resource (*F0*) is limited to 20 requests per minute and 30k requests in a month. If you don't want to use the Azure cloud, you can also get an API key by registering with [cognitive-services](https://www.microsoft.com/cognitive-services/en-us/subscriptions). However, all keys on cognitive services must be recreated every 90 days.
|
||||
|
||||
To enable the Microsoft Face component, add the following lines to your `configuration.yaml`:
|
||||
|
||||
@ -31,9 +31,9 @@ Configuration variables:
|
||||
|
||||
### {% linkable_title Person and Groups %}
|
||||
|
||||
For most of the services you need to set up a group or a person. This limits the processing and detection to elements provided by group. Home Assistent creates for all group a entity and allow you to show the state, person and IDs directly on the frontend.
|
||||
For most services, you need to set up a group or a person. This limits the processing and detection to elements provided by the group. Home Assistent creates an entty for all groups and allows you to show the state, person and IDs directly on the frontend.
|
||||
|
||||
For managing this feature, you have the following services. They can be called with the Frontend, a script, or the REST API.
|
||||
The following services are available for managing this feature. They can be called via the Frontend, a script, or the REST API.
|
||||
|
||||
- *microsoft_face.create_group*
|
||||
- *microsoft_face.delete_group*
|
||||
@ -66,15 +66,15 @@ data:
|
||||
camera_entity: camera.door
|
||||
```
|
||||
|
||||
For the local image we need `curl`. The person ID is present in group entity as attribute.
|
||||
For the local image we need `curl`. The `{personId}` is present in group entity as attribute.
|
||||
|
||||
```bash
|
||||
$ curl -v -X POST "https://westus.api.cognitive.microsoft.com/face/v1.0/persongroups/{GroupName}/persons/{personId}/persistedFaces" \
|
||||
-H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \
|
||||
-H "Content-Type: application/octet-stream" --data "@/tmp/image.jpg"
|
||||
-H "Content-Type: application/octet-stream" --data-binary "@/tmp/image.jpg"
|
||||
```
|
||||
|
||||
After we done with changes on a group, we need train this group to make our AI fit to handle the new data.
|
||||
After we're done with changes on a group, we need train this group to teach the AI how to handle the new data.
|
||||
|
||||
- *microsoft_face.train_group*
|
||||
|
||||
|
@ -279,6 +279,13 @@ switch:
|
||||
platform: mqtt
|
||||
state_format: 'json:somekey[0].value'
|
||||
```
|
||||
It is also possible to extract JSON values by using a value template:
|
||||
|
||||
```yaml
|
||||
switch:
|
||||
platform: mqtt
|
||||
value_template: '{% raw %}{{ value_json.somekey[0].value }}{% endraw %}'
|
||||
```
|
||||
|
||||
More information about the full JSONPath syntax can be found [here][JSONPath syntax].
|
||||
|
||||
|
@ -31,6 +31,7 @@ Configuration variables:
|
||||
- **name** (*Optional*): Name of the command sensor.
|
||||
- **unit_of_measurement** (*Optional*): Defines the unit of measurement of the sensor, if any.
|
||||
- **value_template** (*Optional*): Defines a [template](/topics/templating/) to extract a value from the payload.
|
||||
- **scan_interval** (*Optional*): Defines number of seconds for polling interval
|
||||
|
||||
## {% linkable_title Examples %}
|
||||
|
||||
|
@ -60,28 +60,28 @@ switch 2:
|
||||
timeout: 15
|
||||
switches:
|
||||
# Will work on most Phillips tvs:
|
||||
tv:
|
||||
friendly_name: "Phillips Tv"
|
||||
tv_phillips:
|
||||
friendly_name: "Phillips Tv Power"
|
||||
command_on: 'JgAcAB0dHB44HhweGx4cHR06HB0cHhwdHB8bHhwADQUAAAAAAAAAAAAAAAA='
|
||||
command_off: 'JgAaABweOR4bHhwdHB4dHRw6HhsdHR0dOTocAA0FAAAAAAAAAAAAAAAAAAA='
|
||||
|
||||
# Will work on most LG tvs
|
||||
tv_lg:
|
||||
friendly_name: "LG Tv"
|
||||
friendly_name: "LG Tv Power"
|
||||
command_on: 'JgBYAAABIJISExETETcSEhISEhQQFBETETcROBESEjcRNhM1EjcTNRMTERISNxEUERMSExE2EjYSNhM2EhIROBE3ETcREhITEgAFGwABH0oSAAwzAAEfShEADQU='
|
||||
command_off: 'JgBYAAABIJISExETETcSEhISEhQQFBETETcROBESEjcRNhM1EjcTNRMTERISNxEUERMSExE2EjYSNhM2EhIROBE3ETcREhITEgAFGwABH0oSAAwzAAEfShEADQU='
|
||||
|
||||
tv_lg_HDMI1_HDMI2:
|
||||
friendly_name: "LG Tv"
|
||||
tv_lg_hdmi1_hdmi2:
|
||||
friendly_name: "LG Tv HDMI12"
|
||||
command_on: 'JgBIAAABIZMRExITEjYSExMRERURExEUEDkRNxEUEjYSNhM3ETcSNxITETgSNhI2ExMQExE4ETYSNxIUERMSExE4ETcRFBETEQANBQ=='
|
||||
command_off: 'JgBQAAABJJMSEhISETgSEhITEBMSEhMSETcSNxMREjcSNxI3EjcSOBETERITNhM2EhITERM2EzcRNxI3ExISEhI3EjcRExETEgAFLQABJEoRAA0FAAAAAAAAAAA='
|
||||
|
||||
tv_lg_HDMI3:
|
||||
friendly_name: "LG Tv"
|
||||
tv_lg_hdmi3:
|
||||
friendly_name: "LG Tv HDMI3"
|
||||
command_on: 'JgBIAAABIZMSFBISETgRExEUERQQFBETEjcTNhMSETgRNxE3EjcROBM2ERMSFBE4ERMSNxM2EjUSFBE2ETgRExM2ExITEhATEwANBQ=='
|
||||
|
||||
tv_lg_AV1_AV2:
|
||||
friendly_name: "LG Tv"
|
||||
tv_lg_av1_av2:
|
||||
friendly_name: "LG Tv AV12"
|
||||
command_on: 'JgBIAAABIpQPFBITETgSEw8UEhQSEhEVDzgSOBAUETgQOQ84EjgRNxITETgSExA5EDgREhI3EhMROBMSEDkQFBETEjYTEhE4EQANBQ=='
|
||||
command_off: 'JgBIAAABH5YPFBETETgUERAUEBURFBATETgROBEUETcSNxE4ETcSOBISEBUQFREUEjUSFBA5ETcRNxE4ETkQOBAUEjcRFRAUEQANBQ=='
|
||||
|
||||
|
@ -36,6 +36,7 @@ switch:
|
||||
sunset_colortemp: 3000
|
||||
stop_colortemp: 1900
|
||||
brightness: 200
|
||||
disable_brightness_adjust: True
|
||||
mode: xy
|
||||
```
|
||||
|
||||
@ -48,6 +49,7 @@ Configuration variables:
|
||||
- **start_colortemp** (*Optional*): The color temperature at the start. Defaults to `4000`.
|
||||
- **sunset_colortemp** (*Optional*): The sun set color temperature. Defaults to `3000`.
|
||||
- **stop_colortemp** (*Optional*): The color temperature at the end. Defaults to `1900`.
|
||||
- **brightness** (*Optional*): The brightness of the lights. Calculated with `RGB_to_xy` by default. Setting to -1 disables brightness updates.
|
||||
- **brightness** (*Optional*): The brightness of the lights. Calculated with `RGB_to_xy` by default.
|
||||
- **disable_brightness_adjust** (*Optional*): If true, brightness will not be adjusted besides color temperature. Defaults to False.
|
||||
- **mode** (*Optional*): Select how color temperature is passed to lights. Valid values are `xy` and `mired`. Defaults to `xy`.
|
||||
|
||||
|
@ -71,5 +71,5 @@ switch:
|
||||
For a check you can use the command line tools `mosquitto_pub` shipped with `mosquitto` to send MQTT messages. This allows you to operate your switch manually:
|
||||
|
||||
```bash
|
||||
$ mosquitto_pub -h 127.0.0.1 -t home/bedroom/switch1set -m "ON"
|
||||
$ mosquitto_pub -h 127.0.0.1 -t home/bedroom/switch1 -m "ON"
|
||||
```
|
||||
|
@ -33,7 +33,7 @@ script:
|
||||
data_template:
|
||||
entity_id: {% raw %}{{ sonos_entity }}{% endraw %}
|
||||
message: {% raw %}{{ message }}{% endraw %}
|
||||
- delay: '00:00:05'
|
||||
- delay: {% raw %}{{ delay }}{% endraw %}
|
||||
- service: media_player.sonos_restore
|
||||
data_template:
|
||||
entity_id: {% raw %}{{ sonos_entity }}{% endraw %}
|
||||
@ -45,5 +45,6 @@ service: script.sonos_say
|
||||
data:
|
||||
sonos_entity: media_player.kitchen
|
||||
volume: 0.3
|
||||
message: 'Your husband comming home!"
|
||||
message: 'Your husband comming home!'
|
||||
delay: '00:00:05'
|
||||
```
|
||||
|
@ -109,6 +109,7 @@ Note: Prereqs will vary across different machines. So far users have reported re
|
||||
|
||||
- ruby-dev - `sudo apt-get install ruby-dev`
|
||||
- node-js - `sudo apt-get install nodejs`
|
||||
- libsqlite3-dev - `sudo apt-get install libsqlite3-dev`
|
||||
- execjs gem - `gem install execjs`
|
||||
|
||||
You will need to research what works on your particular architecture and also bear in mind that version numbers may change over time.
|
||||
|
@ -7,17 +7,21 @@
|
||||
<li>
|
||||
{% active_link /getting-started/ Installation %}
|
||||
<ul>
|
||||
<li>{% active_link /getting-started/installation-raspberry-pi/ Raspberry Pi %}</li>
|
||||
<li>{% active_link /getting-started/installation-raspberry-pi-all-in-one/ Raspberry Pi All-In-One Installer %}</li>
|
||||
<li>{% active_link /getting-started/installation-raspberry-pi-image/ Raspberry Pi Image %}</li>
|
||||
<li>{% active_link /getting-started/installation-docker/ Docker %}</li>
|
||||
<li>{% active_link /getting-started/installation-vagrant/ Vagrant %}</li>
|
||||
<li>{% active_link /getting-started/installation-synology/ Synology NAS %}</li>
|
||||
<li>{% active_link /getting-started/installation-virtualenv/ Virtualenv Linux %}</li>
|
||||
<li>{% active_link /getting-started/installation-python/ Python %}</li>
|
||||
<li>{% active_link /getting-started/updating/ Updating %}</li>
|
||||
<li>{% active_link /getting-started/troubleshooting/ Troubleshooting %}</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /getting-started/hassbian/ Hassbian %}
|
||||
<ul>
|
||||
<li>{% active_link /getting-started/hassbian-installation/ Installation %}</li>
|
||||
<li>{% active_link /getting-started/hassbian-customization/ Customization %}</li>
|
||||
<li>{% active_link /getting-started/hassbian-common-tasks/ Common tasks %}</li>
|
||||
<li>{% active_link /getting-started/hassbian-integrations/ Integrations %}</li>
|
||||
<li>{% active_link /getting-started/hassbian-upgrading/ Upgrading %}</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
{% active_link /getting-started/configuration/ Configuration %}
|
||||
<ul>
|
||||
@ -67,7 +71,7 @@
|
||||
</li>
|
||||
<li>{% active_link {{site_root}}/topics/ Advanced Topics %}</li>
|
||||
<li>{% active_link {{site_root}}/details/ Details %}</li>
|
||||
<li>{% active_link /getting-started/android/ Add to Android Homescreen %}</li>
|
||||
<li>{% active_link /getting-started/mobile/ Add to Android/iOS Homescreen %}</li>
|
||||
<li>{% active_link /getting-started/browsers/ Browser Compatibility List %}</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -1,11 +1,8 @@
|
||||
<h1>Awaken your home</h1>
|
||||
<p class="lead">
|
||||
Home Assistant is an open-source home automation platform running on Python 3. Track and control all devices at home and automate control. Installation in less than a minute.
|
||||
Home Assistant is an open-source home automation platform running on Python 3. Track and control all devices at home and automate control. Perfect to run on a Raspberry Pi.
|
||||
</p>
|
||||
<code class='front-install'>
|
||||
<div>pip3 install homeassistant</div>
|
||||
<div>hass --open-ui</div>
|
||||
</code>
|
||||
|
||||
<p class='hero-buttons'>
|
||||
<a href='{{ root_url }}/getting-started/'>Get started</a>
|
||||
<a href='{{ root_url }}/demo/' target='_blank'>View demo</a>
|
||||
|
@ -129,6 +129,21 @@ Thanks to [@konikvranik] the [HDMI CEC][cec] integration got a huge update with
|
||||
|
||||
Bugfix: [@balloob], [@fabaff], [@freol35241], [@pvizeli], [@Danielhiversen], [@tdickman], [@armills], [@rytilahti], [@R1chardTM], [@asbach], [@happyleavesaoc], [@robbiet480], [@colinodell], [@joopert], [@dale3h], [@pavoni], [@jaharkes], [@MartinHjelmare], [@mezz64], [@jabesq], and you if you are missing in this list.
|
||||
|
||||
### {% linkable_title Release 0.37.1 - February 2 %}
|
||||
|
||||
- Do not reject alphanumeric IDs for PiLight ([@DavidLP])
|
||||
- Fix broken Hue discovery ([@DanielHiversen])
|
||||
- Fix Amcrest ([@tchellomello])
|
||||
- Fix Telldus Live dim level error on startup ([@molobrakos])
|
||||
- Fix Sonos group coordinators ([@pvizeli])
|
||||
- UPC Connect: Parse XML outside event loop ([@pvizeli])
|
||||
- Fix Netatmo SSL issue with VPN url ([@jabesq])
|
||||
- Homematic: Fix bug with UNREACH device state/restore and variables not updating ([@pvizeli])
|
||||
- Sonos: Prevent duplicate entries in favorite list ([@pvizeli])
|
||||
- Fix Schlage Connect deadbolt integration via Z-Wave ([@turbokongen])
|
||||
- Prevent infinite loop in crossconfigured mqtt event streams ([@aequitas])
|
||||
- Fix Hue lightgroups failing on startup ([@tboyce1])
|
||||
|
||||
### {% linkable_title Breaking changes %}
|
||||
- A **major** breaking change in the [`emulated_hue`][emul-hue] component means that unless you set `type: alexa` before starting up the newer Home Assistant version you will lose all devices that Alexa has discovered and will need to re-add them as well as create new groups.
|
||||
- The platform of the [ISS][iss] integration was change to `binary_sensor`. Please check the platform documentation.
|
||||
@ -145,6 +160,9 @@ Bugfix: [@balloob], [@fabaff], [@freol35241], [@pvizeli], [@Danielhiversen], [@t
|
||||
### {% linkable_title Reporting Issues %}
|
||||
Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/home-assistant/issues). Make sure to fill in all fields of the issue template.
|
||||
|
||||
[@DavidLP]: https://github.com/DavidLP
|
||||
[@molobrakos]: https://github.com/molobrakos
|
||||
[@tboyce1]: https://github.com/tboyce1
|
||||
[@MrMep]: https://github.com/MrMep
|
||||
[@joopert]: https://github.com/joopert
|
||||
[@armills]: https://github.com/armills
|
||||
@ -211,7 +229,7 @@ Experiencing issues introduced by this release? Please report them in our [issue
|
||||
[@mKeRix]: https://github.com/mKeRix
|
||||
[@fakezeta]: https://github.com/fakezeta
|
||||
|
||||
[amcrest]: https://home-assistant.io/components/binary_sensor.arest/
|
||||
[amcrest]: https://home-assistant.io/components/binary_sensor.amcrest/
|
||||
[discord]: https://home-assistant.io/components/notify.discord/
|
||||
[tado]: https://home-assistant.io/components/device_tracker.tado/
|
||||
[sky]: https://home-assistant.io/components/device_tracker.sky_hub/
|
||||
|
62
source/_posts/2017-02-03-hassbian-toybox.markdown
Normal file
62
source/_posts/2017-02-03-hassbian-toybox.markdown
Normal file
@ -0,0 +1,62 @@
|
||||
---
|
||||
layout: post
|
||||
title: "HASSbian 1.1 - The Toy-box"
|
||||
description: "New release of the HASSbian Raspberry Pi Image for Home Assistant"
|
||||
date: 2017-02-04 05:00:00 -0400
|
||||
date_formatted: "February 4, 2017"
|
||||
author: Fredrik Lindqvist
|
||||
comments: true
|
||||
categories: Technology
|
||||
---
|
||||
|
||||
Tonight I'm happy to announce a new release of the our Raspberry Pi image, **HASSbian 1.1 - The Toy-box.**
|
||||
Why Toy-box you wonder? Because it encompass the changes pretty well.
|
||||
|
||||
Changes from previous image are big and small but lets start with the interesting things.
|
||||
|
||||
### {% linkable_title Hassbian-scripts %}
|
||||
A set of script written to add extra functionality to your Raspberry Pi installation.
|
||||
This scripts are run as the `pi` user and installs a set of tools or packages.
|
||||
Currently includes:
|
||||
- Install Libcec. Adds local [HDMI CEC support][cec].
|
||||
- Install Mossquitto. Installs the latest Mosquitto package and client tools from the Mosquitto projects official repository. Now includes websocket support.
|
||||
- Install OpenZWave. Installs OpenZWave and prepares for using a USB or GPIO ZWave controller.
|
||||
- Install Samba. Installs the Samba packages and shares your configuration over smb to be available to edit on any computer without the need for separate file transfer software. This share is unsecured and it's usage is not recommended if your installation is publicly available.
|
||||
|
||||
All of these scripts are available in the directory `/home/pi/hassbian-scripts/`. This directory is actually a cloned git repository that's cloned on first boot and can be updated to the latest release with ease after.
|
||||
To update the hassbian-scripts directory execute the following command as the `pi` user.
|
||||
```bash
|
||||
$ cd hassbian-scripts
|
||||
$ git pull
|
||||
```
|
||||
To use any of the hassbian-scripts, execute the following command as the `pi` user. Here we use the libcec script as an example.
|
||||
```bash
|
||||
$ sudo ./hassbian-scripts/install_libcec.sh
|
||||
```
|
||||
|
||||
For more information about these scripts have a look a the [hassbian-scripts repository][hassbian-repo].
|
||||
|
||||
### {% linkable_title Spring cleaning %}
|
||||
With this image there also quite a bit of cleaning of the base system and the script that generates our Raspberry Pi image.
|
||||
- Update pi-gen. Our build script has been upgraded to follow the Raspbian image closer. This image is basically a Raspbian lite image with Home Assistant, dependencies and a small set of changes to the base system.
|
||||
- Removed Mosquitto. Not as bad as it sounds since it's installation has been move to one of our new hassbian-scripts.
|
||||
- Added rng-tools. Let's your HASSbian installation use the hardware support in the Raspberry Pi for entropy generation.
|
||||
- Added avahi-daemon package. Your Raspberry Pi should now be available at [hassbian.local][hassbian-avahi].
|
||||
- Added htop. User friendly interactive process monitor.
|
||||
- Added tmux. A great terminal multiplexer that makes working with the command line over ssh easier.
|
||||
- Added the `homeassistant` user to the `dialout` group. Simplifies use of hardware such as ZWave USB controllers that requires this permission.
|
||||
|
||||
### {% linkable_title On the horizon %}
|
||||
There's of course more on the horizon and there's even more plans and wishes for how this image will function in the future.
|
||||
On the close horizon from [@Landrash][landrash-github] there a few more script in the works and for tellstick, emulated_hue and for controlling Home Assistant.
|
||||
|
||||
To follow discussions about the development of the HASSbian image or to contribute join the [HASSbian gitter chat][hassbian-gitter].
|
||||
|
||||
To get started with the new image, check out the installation instructions in the [getting started section][gs-image].
|
||||
|
||||
[cec]: /components/hdmi_cec/
|
||||
[hassbian-repo]: https://github.com/home-assistant/hassbian-scripts
|
||||
[hassbian-avahi]: hassbian.local
|
||||
[hassbian-gitter]: https://gitter.im/home-assistant/hassbian
|
||||
[landrash-github]: https://github.com/Landrash
|
||||
[gs-image]: /getting-started/installation-raspberry-pi-image/
|
146
source/_posts/2017-02-04-babyphone.markdown
Normal file
146
source/_posts/2017-02-04-babyphone.markdown
Normal file
@ -0,0 +1,146 @@
|
||||
---
|
||||
layout: post
|
||||
title: "Smart Baby Monitor"
|
||||
description: "How to build your own smart baby monitor"
|
||||
date: 2017-02-04 00:00:00 +0100
|
||||
date_formatted: "February 4, 2017"
|
||||
author: Pascal Vizeli
|
||||
comments: true
|
||||
categories: How-To
|
||||
og_image: /images/blog/2017-02-babyphone/social.png
|
||||
---
|
||||
|
||||
One of the hardest part of being a parent is keeping a constant eye on the baby to make sure that baby is doing well. Thus, it is not surprising that baby monitors are one of the fastest growing baby product category. However, many of the baby monitors available on the market are rather dumb and expect the parents to keep looking at the video stream or listen to the audio. This how-to will help you create a smart baby monitor on a budget and integrate it with Home Assitant. Instead of relying on the poor quality baby monitor speakers, we use our existing speakers (eg. Sonos). We can also send notifications (with pictures) to avoid constant monitoring of the feed.
|
||||
|
||||
Obviously, you can use the setup as a general purpose surveillance system to monitor noise in the whole house.
|
||||
|
||||
<!--more-->
|
||||
|
||||
### {% linkable_title Setup %}
|
||||
|
||||
We need an IP camera that can capture sound in the baby's room. It is also possible to use a Raspberry Pi with a microphone and send the audio to Home Assistant with `ffmpeg -f alsa -i hw:1,0 -vn -f rtp rtp://236.0.0.1:2000` over multicast. We can set the `input` option on the Home Assistant side to `rtp://236.0.0.1:2000` in same network.
|
||||
|
||||
Next, we attach a FFmpeg noise binary sensor to our IP camera. The sensor has an output `option` that allows us to send the output to an [icecast2](http://icecast.org/) server for playing over speakers integrated with Home Assistant (eg. Sonos). We can use the binary sensor in our automation. You can ignore the icecast2 setup if you don't want to play the audio after the noise sensor trigger.
|
||||
|
||||
<p class='note'>
|
||||
We change the platform name for binary sensor in 0.38 from `ffmpeg` to `ffmpeg_noise`. Also all service going to component and was rename from `binary_sensor.ffmpeg_xy` to `ffmpeg.xy`.
|
||||
</p>
|
||||
|
||||
On Raspbian Jessie, you can setup [FFmpeg](/components/ffmpeg) and install a [icecast2](http://icecast.org/) server using:
|
||||
|
||||
```bash
|
||||
$ sudo echo "deb http://ftp.debian.org/debian jessie-backports main" >> /etc/apt/sources.list
|
||||
$ sudo apt-get update
|
||||
$ sudo apt-get -t jessie-backports install ffmpeg
|
||||
$ sudo apt-get install icecast2
|
||||
```
|
||||
|
||||
We setup a icecast mount point for our babyphone and update `/etc/icecast2/icecast.xml`:
|
||||
|
||||
```
|
||||
<mount>
|
||||
<mount-name>/babyphone.mp3</mount-name>
|
||||
<stream-name>Babyphone</stream-name>
|
||||
|
||||
<username>stream_user</username>
|
||||
<password>stream_pw</password>
|
||||
</mount>
|
||||
```
|
||||
|
||||
Now we can add the noise sensor to Home Assistant. We can lower the sensitivity of the sensor (so that you are not inundated with notifications for every cough of the baby) to 2 seconds using the `duration` option. The sensor should wait 60 seconds before restoring and it prevent us that a wine break will triggering a new alarm.
|
||||
|
||||
We can optimize the audio stream for human voice by using a highpass filter with 300 Hz and a lowpass filter with 2500 Hz. This filters out all non-human sounds such as background noise. We can even add a volume amplifier if the microphone volume is too low (you can remove it from `extra_arguments`). For icecast2 we convert the audio stream to mp3 with samplerate of 16000 (which is the minimum for Sonos speakers). We use `peak` to set the threshold for noise detection, where 0 dB is very loud and -100 dB is low.
|
||||
|
||||
```yaml
|
||||
binary_sensor:
|
||||
- platform: ffmpeg_noise
|
||||
input: rtsp://user:pw@my_input/video
|
||||
extra_arguments: -filter:a highpass=f=300,lowpass=f=2500,volume=volume=2 -codec:a libmp3lame -ar 16000
|
||||
output: -f mp3 icecast://stream_user:stream_pw@127.0.0.1:8000/babyphone.mp3
|
||||
initial_state: false
|
||||
duration: 2
|
||||
reset: 60
|
||||
peak: -32
|
||||
```
|
||||
|
||||
We use the option `initial_state` to prevent the FFmpeg process from starting with Home Assistant and only start it when needed. We use an `input_boolean` to control the state of FFmpeg services using the following automation.
|
||||
|
||||
```yaml
|
||||
input_boolean:
|
||||
babyphone:
|
||||
name: babyphone
|
||||
initial: off
|
||||
|
||||
automation:
|
||||
- alias: 'Babyphone on'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_boolean.babyphone
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
action:
|
||||
service: ffmpeg.start
|
||||
entity_id: binary_sensor.ffmpeg_noise
|
||||
|
||||
- alias: 'Babyphone off'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_boolean.babyphone
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
action:
|
||||
service: ffmpeg.stop
|
||||
entity_id: binary_sensor.ffmpeg_noise
|
||||
```
|
||||
|
||||
### {% linkable_title Trigger a alarm %}
|
||||
|
||||
Now we can make a lot stuff. Here is a simple example of an automation what should be possible with Sonos speakers.
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
- alias: 'Babyphone alarm on'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.ffmpeg_noise
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
action:
|
||||
- service: media_player.sonos_snapshot
|
||||
entity_id: media_player.bedroom
|
||||
- service: media_player.sonos_unjoin
|
||||
entity_id: media_player.bedroom
|
||||
- service: media_player.volume_set
|
||||
entity_id: media_player.bedroom
|
||||
data:
|
||||
volume_level: 0.4
|
||||
- service: media_player.play_media
|
||||
entity_id: media_player.bedroom
|
||||
data:
|
||||
media_content_type: 'music'
|
||||
media_content_id: http://my_ip_icecast:8000/babyphone.mp3
|
||||
- service: light.turn_on:
|
||||
entity_id:
|
||||
- light.floor
|
||||
- light.bedroom
|
||||
data:
|
||||
brightness: 150
|
||||
|
||||
- alias: 'Babyphone alarm off'
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.ffmpeg_noise
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
action:
|
||||
- service: media_player.sonos_restore
|
||||
entity_id: media_player.bedroom
|
||||
- service: light.turn_off:
|
||||
entity_id:
|
||||
- light.floor
|
||||
- light.bedroom
|
||||
```
|
||||
|
||||
### {% linkable_title Thanks %}
|
||||
|
||||
Special thanks to [arsaboo](https://github.com/arsaboo) for assistance in writing this blogpost.
|
@ -123,7 +123,7 @@ Print out a list of all the sensor states.
|
||||
|
||||
{{ states.sensor.temperature | float + 1 }}
|
||||
|
||||
{{ states.sensor.temperature | float * 10 | round(2) }}
|
||||
{{ (states.sensor.temperature | float * 10) | round(2) }}
|
||||
|
||||
{% if states('sensor.temperature') | float > 20 %}
|
||||
It is warm!
|
||||
|
@ -52,13 +52,13 @@ Support for these components is provided by the Home Assistant community.
|
||||
<a href='#other' class="btn">Other</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid__item five-sixths lap-one-whole palm-one-whole" id="componentContainer">
|
||||
<div class="grid__item five-sixths lap-one-whole palm-one-whole hass-option-cards" id="componentContainer">
|
||||
{% for component in components %}
|
||||
{% if component.ha_category %}
|
||||
{% assign sliced_version = component.ha_release | split: '.' %}
|
||||
{% assign minor_version = sliced_version[1]|plus: 0 %}
|
||||
<a href='{{ component.url }}'
|
||||
class='{{ component.ha_category | slugify }}{% if minor_version == site.current_minor_version %} added_in_current_version{% elsif minor_version == added_one_ago_minor_version %} added_one_version_ago{% elsif minor_version == added_two_ago_minor_version %} added_two_versions_ago{% endif %}{% if component.featured %} featured{% endif %}'
|
||||
class='option-card {{ component.ha_category | slugify }}{% if minor_version == site.current_minor_version %} added_in_current_version{% elsif minor_version == added_one_ago_minor_version %} added_one_version_ago{% elsif minor_version == added_two_ago_minor_version %} added_two_versions_ago{% endif %}{% if component.featured %} featured{% endif %}'
|
||||
{% unless component.featured %}style='display: none'{% endunless %}>
|
||||
<div class='img-container'>
|
||||
{% if component.logo %}
|
||||
|
@ -59,7 +59,7 @@ def setup(hass, config):
|
||||
Add your custom device specific code to the `setup_platform` method in `light/myflashyhub.py` and `switch/myflashyhub`.
|
||||
|
||||
```python
|
||||
import homeassistant.components.myflashyhub as myflashyhub
|
||||
import custom_components.myflashyhub as myflashyhub
|
||||
|
||||
# 'switch' will receive discovery_info={'optional': 'arguments'}
|
||||
# as passed in above. 'light' will receive discovery_info=None
|
||||
|
@ -29,4 +29,4 @@ When contributing Home Assistant code:
|
||||
- [TravisCl](https://travis-ci.org/)
|
||||
|
||||
When contributing 3rd Party code to be used by Home Assistant:
|
||||
- [Publishing your own PiPl package](https://jeffknupp.com/blog/2013/08/16/open-sourcing-a-python-project-the-right-way/)
|
||||
- [Publishing your own PyPI package](https://jeffknupp.com/blog/2013/08/16/open-sourcing-a-python-project-the-right-way/)
|
||||
|
@ -73,4 +73,4 @@ panel_custom:
|
||||
url_path: hello
|
||||
```
|
||||
|
||||
For more examples, see the [Custom panel Examples](/cookbook#custom-panel-examples) on our examples page.
|
||||
For more possibilities, see the [Custom panel section](/cookbook/#user-interface) on our Examples page.
|
||||
|
@ -53,6 +53,7 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
ha_release: "0.38"
|
||||
---
|
||||
|
||||
Content...Written in markdown.
|
||||
@ -63,6 +64,13 @@ Content...Written in markdown.
|
||||
|
||||
There are [pre-definied variables](https://jekyllrb.com/docs/variables/) available but usually, it's not necessary to use them when writing documentation.
|
||||
|
||||
A couple of points to remember:
|
||||
|
||||
- Document the needed steps to retrieve API keys or access token for the third party service or device if needed.
|
||||
- Keep the configuration sample minimal by only adding the `Required` options. Full configuration details with further explanations should go into a seperate section.
|
||||
- The description of all the configuration variables should contains information about the used defaults.
|
||||
- If you're adding a new component, for the `ha_release` part of the header, just increment off the current release. If the current release is 0.37, make `ha_release` 0.38.
|
||||
|
||||
### {% linkable_title Embedding Code %}
|
||||
|
||||
You can use the default markdown syntax to generate syntax highlighted code. For inline code wrap your code in \`. For multi-line, syntax wrap your code as shown below.
|
||||
@ -94,6 +102,16 @@ The direct usage of HTML is supported but not recommended. The note boxes are an
|
||||
</p>
|
||||
```
|
||||
|
||||
### {% linkable_title Redirects %}
|
||||
If you rename or move an existing platform or component, create the redirect. Add the old location of the page to the header of the new one.
|
||||
|
||||
```test
|
||||
---
|
||||
...
|
||||
redirect_from: /getting-started/android/
|
||||
---
|
||||
```
|
||||
|
||||
### {% linkable_title Images, icons, and logos %}
|
||||
|
||||
The images which are displayed on the pages are stored in various directories according to their purpose.
|
||||
|
@ -9,11 +9,13 @@ sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
Home Assistant contains a websocket API. This API can be used to stream information from the Home Assistant server to any client that implements websockets. Implementations in different languages:
|
||||
Home Assistant contains a websocket API. This API can be used to stream information from a Home Assistant instance to any client that implements websockets. Implementations in different languages:
|
||||
|
||||
- [JavaScript](https://github.com/home-assistant/home-assistant-js-websocket) - powers the frontend
|
||||
|
||||
# Server states
|
||||
Connect your websocket implementation to `ws://localhost:8123/api/websocket`.
|
||||
|
||||
## {% linkable_title Server states %}
|
||||
|
||||
1. Client connects
|
||||
2. Authentication phase starts
|
||||
@ -31,20 +33,20 @@ Home Assistant contains a websocket API. This API can be used to stream informat
|
||||
|
||||
During the command phase, the client attaches a unique identifier to each message. The server will add this identifier to each message so that the client can link each message to it's origin.
|
||||
|
||||
# Message format
|
||||
## {% linkable_title Message format %}
|
||||
|
||||
Each API message is a JSON serialized object containing a `type` key. After the authentication phase messages also must contain an `id`, an integer that contains the number of interactions.
|
||||
|
||||
Example of an auth message:
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"type": "auth",
|
||||
"api_password": "supersecret"
|
||||
}
|
||||
```
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id" 5,
|
||||
"type":"event",
|
||||
@ -57,13 +59,13 @@ Example of an auth message:
|
||||
}
|
||||
```
|
||||
|
||||
# Authentication phase
|
||||
## {% linkable_title Authentication phase %}
|
||||
|
||||
When a client connects to the server, the server will test if the client is authenticated. Authentication will not be necessary if no api_password is set or if the user fulfills one of the other criteria for authentication (trusted network, password in url/header).
|
||||
|
||||
If no authentication is needed, the authentication phase will complete and the server will send an `auth_ok` message.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"type": "auth_ok"
|
||||
}
|
||||
@ -71,7 +73,7 @@ If no authentication is needed, the authentication phase will complete and the s
|
||||
|
||||
If authentication is necessary, the server sends out `auth_required`.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"type": "auth_required"
|
||||
}
|
||||
@ -79,7 +81,7 @@ If authentication is necessary, the server sends out `auth_required`.
|
||||
|
||||
This means that the next message from the client should be an auth message:
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"type": "auth",
|
||||
"api_password": "supersecret"
|
||||
@ -88,7 +90,7 @@ This means that the next message from the client should be an auth message:
|
||||
|
||||
If the client supplies valid authentication, the authentication phase will complete by the server sending the `auth_ok` message:
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"type": "auth_ok"
|
||||
}
|
||||
@ -96,18 +98,18 @@ If the client supplies valid authentication, the authentication phase will compl
|
||||
|
||||
If the data is incorrect, the server will reply with `auth_invalid` message and disconnect the session.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"type": "auth_invalid",
|
||||
"message": "Invalid password"
|
||||
}
|
||||
```
|
||||
|
||||
# Command phase
|
||||
## {% linkable_title Command phase %}
|
||||
|
||||
During this phase the client can give commands to the server. The server will respond to each command with a `result` message indicating when the command is done and if it was successful.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 6.
|
||||
"type": "result",
|
||||
@ -117,11 +119,11 @@ During this phase the client can give commands to the server. The server will re
|
||||
}
|
||||
```
|
||||
|
||||
## Subscribe to events
|
||||
## {% linkable_title Subscribe to events %}
|
||||
|
||||
The command `subscribe_events` will subscribe your client to the event bus. You can either listen to all events or to a specific event type. If you want to listen to multiple event types, you will have to send multiple `subscribe_events` commands.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 18,
|
||||
"type": "subscribe_events",
|
||||
@ -132,7 +134,7 @@ The command `subscribe_events` will subscribe your client to the event bus. You
|
||||
|
||||
The server will respond with a result message to indicate that the subscription is active.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 18,
|
||||
"type": "result",
|
||||
@ -143,7 +145,7 @@ The server will respond with a result message to indicate that the subscription
|
||||
|
||||
For each event that matches, the server will send a message of type `event`. The `id` in the message will point at the original `id` of the `listen_event` command.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 18,
|
||||
"type":"event",
|
||||
@ -190,11 +192,11 @@ For each event that matches, the server will send a message of type `event`. The
|
||||
}
|
||||
```
|
||||
|
||||
## Unsubscribing from events
|
||||
### {% linkable_title Unsubscribing from events %}
|
||||
|
||||
You can unsubscribe from previously created subscription events. Pass the id of the original subscription command as value to the subscription field.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 19,
|
||||
"type": "unsubscribe_events",
|
||||
@ -204,7 +206,7 @@ You can unsubscribe from previously created subscription events. Pass the id of
|
||||
|
||||
The server will respond with a result message to indicate that unsubscribing was successful.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 19,
|
||||
"type": "result",
|
||||
@ -214,7 +216,7 @@ The server will respond with a result message to indicate that unsubscribing was
|
||||
```
|
||||
|
||||
|
||||
## Calling a service
|
||||
### {% linkable_title Calling a service %}
|
||||
|
||||
This will call a service in Home Assistant. Right now there is no return value. The client can listen to `state_changed` events if it is interested in changed entities as a result of a service call.
|
||||
|
||||
@ -233,7 +235,7 @@ This will call a service in Home Assistant. Right now there is no return value.
|
||||
|
||||
The server will indicate with a message indicating that the service is done executing.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 24,
|
||||
"type": "result",
|
||||
@ -242,11 +244,11 @@ The server will indicate with a message indicating that the service is done exec
|
||||
}
|
||||
```
|
||||
|
||||
## Fetching states
|
||||
### {% linkable_title Fetching states %}
|
||||
|
||||
This will get a dump of all the current states in Home Assistant.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 19,
|
||||
"type": "get_states"
|
||||
@ -255,20 +257,20 @@ This will get a dump of all the current states in Home Assistant.
|
||||
|
||||
The server will respond with a result message containing the states.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 19,
|
||||
"type": "result",
|
||||
"success": true,
|
||||
"result": [ … ]
|
||||
"result": [ ... ]
|
||||
}
|
||||
```
|
||||
|
||||
## Fetching config
|
||||
### {% linkable_title Fetching config %}
|
||||
|
||||
This will get a dump of the current config in Home Assistant.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 19,
|
||||
"type": "get_config"
|
||||
@ -277,20 +279,20 @@ This will get a dump of the current config in Home Assistant.
|
||||
|
||||
The server will respond with a result message containing the config.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 19,
|
||||
"type": "result",
|
||||
"success": true,
|
||||
"result": { … }
|
||||
"result": { ... }
|
||||
}
|
||||
```
|
||||
|
||||
## Fetching services
|
||||
### {% linkable_title Fetching services %}
|
||||
|
||||
This will get a dump of the current services in Home Assistant.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 19,
|
||||
"type": "get_config"
|
||||
@ -299,20 +301,20 @@ This will get a dump of the current services in Home Assistant.
|
||||
|
||||
The server will respond with a result message containing the services.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 19,
|
||||
"type": "result",
|
||||
"success": true,
|
||||
"result": { … }
|
||||
"result": { ... }
|
||||
}
|
||||
```
|
||||
|
||||
## Fetching panels
|
||||
### {% linkable_title Fetching panels %}
|
||||
|
||||
This will get a dump of the current registered panels in Home Assistant.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 19,
|
||||
"type": "get_panels"
|
||||
@ -321,16 +323,16 @@ This will get a dump of the current registered panels in Home Assistant.
|
||||
|
||||
The server will respond with a result message containing the current registered panels.
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 19,
|
||||
"type": "result",
|
||||
"success": true,
|
||||
"result": [ … ]
|
||||
"result": [ ... ]
|
||||
}
|
||||
```
|
||||
|
||||
# Error handling
|
||||
## {% linkable_title Error handling %}
|
||||
|
||||
If an error occurs, the `success` key in the `result` message will be set to `false`. It will contain an `error` key containing an object with two keys: `code` and `message`.
|
||||
|
||||
@ -340,7 +342,7 @@ If an error occurs, the `success` key in the `result` message will be set to `fa
|
||||
| 2 | Received message is not in expected format (voluptuous validation error).
|
||||
| 3 | Requested item cannot be found
|
||||
|
||||
```json5
|
||||
```json
|
||||
{
|
||||
"id": 12,
|
||||
"type":"result",
|
||||
|
@ -49,7 +49,7 @@ automation 2:
|
||||
```
|
||||
|
||||
|
||||
Conditions can also be part of an action:
|
||||
Conditions can also be part of an action. You can combine multiple service calls and conditions in a single action, and they will be processed in the order you put them in. If the result of a condition is false, the action will stop there so any service calls after that condition will not be executed.
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
@ -59,6 +59,9 @@ automation:
|
||||
entity_id: sensor.mini_despacho
|
||||
to: 'ON'
|
||||
action:
|
||||
- service: notify.notify
|
||||
data:
|
||||
message: Testing conditional actions
|
||||
- condition: or
|
||||
conditions:
|
||||
- condition: template
|
||||
|
@ -11,6 +11,8 @@ footer: true
|
||||
|
||||
By default, all of your devices will be visible and have a default icon determined by their domain. You can customize the look and feel of your front page by altering some of these parameters. This can be done by overriding attributes of specific entities.
|
||||
|
||||
This format works for version 0.37+. For pre-0.37 use [Older format](https://home-assistant.io/getting-started/customizing-devices/#older-format)
|
||||
|
||||
`customize` consists of a list of attribute customization blocks
|
||||
|
||||
```yaml
|
||||
|
29
source/getting-started/getting-started-alternatives.markdown
Normal file
29
source/getting-started/getting-started-alternatives.markdown
Normal file
@ -0,0 +1,29 @@
|
||||
---
|
||||
layout: page
|
||||
title: "HASSbian image for Raspberry Pi"
|
||||
description: "Instructions to flash the Home Assistant HASSbian image on a Raspberry Pi."
|
||||
date: 2016-09-26 21:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
---
|
||||
layout: page
|
||||
title: "Installing Home Assistant"
|
||||
description: "Instructions to get started using Home Assistant."
|
||||
date: 2016-09-26 21:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
Installing Home Assistant is bla bla. Choose options:
|
||||
|
||||
- [Raspberry Pi][rpi]
|
||||
- [Python]
|
||||
|
||||
[rpi]: /getting-started/installation-raspberry-pi-image/
|
||||
[Python]: /getting-started/installation-python/
|
@ -1,7 +1,7 @@
|
||||
---
|
||||
layout: page
|
||||
title: "HASSbian image for Raspberry Pi"
|
||||
description: "Instructions to flash the Home Assistant HASSbian image on a Raspberry Pi."
|
||||
title: "Common tasks on Hassbian"
|
||||
description: "Instructions how to do common tasks on Hassbian."
|
||||
date: 2016-09-26 21:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
@ -9,40 +9,7 @@ sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
The easiest way to install Home Assistant on your Raspberry Pi is by using HASSbian: a Raspberry Pi image with Home Assistant built-in. The image will install the latest version of Home Assistant on initial boot (~5 minutes).
|
||||
|
||||
1. [Download the latest image][image-download]
|
||||
2. Flash the image to an SD card:
|
||||
- [Windows][flash-windows]
|
||||
- [Linux][flash-linux]
|
||||
- [Mac OS][flash-macos]
|
||||
3. Ensure your Raspberry Pi has access to the internet.
|
||||
4. Insert SD card to Raspberry Pi and turn it on. Initial installation of Home Assistant will take about 5 minutes.
|
||||
|
||||
These instructions are also available as a [video](https://www.youtube.com/watch?v=iIz6XqDwHEk).
|
||||
|
||||
Home Assistant will now be available by navigating with a browser to `http://ip-address-of-pi:8123`. The default username is `pi` and password is `raspberry` (please change this by running `passwd`). The Home Assistant configuration is located at `/home/homeassistant/.homeassistant/`.
|
||||
|
||||
The following extras are included on the image:
|
||||
|
||||
- GPIO pins are ready to use.
|
||||
- Mosquitto MQTT broker is installed (not activated by default).
|
||||
- Bluetooth is ready to use (supported models only, no Bluetooth LE).
|
||||
|
||||
Some extra tips:
|
||||
|
||||
- Check out the list of [Raspberry Pi hardware specific components][pi-components].
|
||||
- Z-Wave support can be installed by following the [Getting started instructions for Z-Wave][install-zwave].
|
||||
- Run `sudo raspi-config` to change the locale, timezone and keyboard layout.
|
||||
|
||||
### {% linkable_title Technical Details %}
|
||||
|
||||
- Home Assistant is installed in a virtual Python environment at `/srv/homeassistant/`
|
||||
- Home Assistant will be started as a service run by the user `homeassistant`
|
||||
- The configuration is located at `/home/homeassistant/.homeassistant`
|
||||
|
||||
### {% linkable_title Managing your HASSbian installation %}
|
||||
#### {% linkable_title Login to HASSbian on the Raspberry Pi %}
|
||||
### {% linkable_title Login to the Raspberry Pi %}
|
||||
To login to your Raspberry Pi running HASSbian your going to be using a ssh client. Depending on your platform there are several alternatives for doing this. Linux and Max OS generally have a ssh client installed. Windows users are recommended to download and install the ssh client [Putty][ssh-putty].
|
||||
|
||||
Connect to the Raspberry Pi over ssh. Default user name is `pi` and password is `raspberry`.
|
||||
@ -56,7 +23,7 @@ Windows users start [Putty][ssh-putty], enter the IP address of the Raspberry Pi
|
||||
|
||||
Optionally, starting with Windows 10 anniversary update, you can use the built-in '[Bash on Windows][bash-windows]' to use SSH if you have enabled Developer mode and have installed the "Windows Subsystem for Linux (beta)" feature.
|
||||
|
||||
#### {% linkable_title Start/Stop/Restart Home Assistant on HaSSbian %}
|
||||
### {% linkable_title Start/Stop/Restart Home Assistant %}
|
||||
Log in as the `pi` account account and execute the following commands:
|
||||
|
||||
```bash
|
||||
@ -66,7 +33,7 @@ $ sudo systemctl stop home-assistant@homeassistant.service
|
||||
Replace `stop` with `start` or `restart` to get the desired functionality.
|
||||
To get the current state of the `homeassistant.service` replace `stop` with `status`.
|
||||
|
||||
#### {% linkable_title Update Home Assistant on HASSbian %}
|
||||
### {% linkable_title Update Home Assistant %}
|
||||
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
@ -88,7 +55,7 @@ This will in order do the following:
|
||||
- Exit the shell and return to the `pi` user.
|
||||
- Restart the Home Assistant service.
|
||||
|
||||
#### {% linkable_title Manually launch Home Assistant on HASSbian %}
|
||||
### {% linkable_title Manually launch Home Assistant %}
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
@ -99,7 +66,7 @@ $ hass
|
||||
|
||||
This will start Home Assistant in your shell and output anything that ends up in the log and more into the console. This will fail if the Home Assistant service is already running so don't forget to [stop][stop-homeassistant] it first.
|
||||
|
||||
#### {% linkable_title Check your configuration on HASSbian %}
|
||||
### {% linkable_title Check your configuration %}
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
@ -110,7 +77,7 @@ $ hass --script check_config
|
||||
|
||||
This will output any errors in your configuration files to console.
|
||||
|
||||
#### {% linkable_title Read the Home Assistant log file on HASSbian %}
|
||||
### {% linkable_title Read the Home Assistant log file %}
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
@ -132,7 +99,8 @@ Log in as the `pi` account and execute the following commands:
|
||||
$ sudo journalctl -fu home-assistant@homeassistant.service
|
||||
```
|
||||
|
||||
#### {% linkable_title Edit the Home Assistant configuration on HASSbian %}
|
||||
### {% linkable_title Edit the Home Assistant configuration %}
|
||||
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
@ -149,44 +117,13 @@ This will in order do the following:
|
||||
|
||||
It's generally recommended that you read the [Getting started][configuring-homeassistant] guide for how to configure Home Assistant.
|
||||
|
||||
#### {% linkable_title Upgrade and update HASSbian %}
|
||||
HASSbian is based on Raspbian and uses the same repositories. Any changes to Raspbian will be reflected in HASSbian. To update and upgrade system packages and installed software (excluding Home Assistant) do the following.
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
### {% linkable_title Change locale, timezone and keyboard layout %}
|
||||
|
||||
```bash
|
||||
$ sudo apt-get update
|
||||
$ sudo apt-get upgrade
|
||||
$ sudo raspi-config
|
||||
```
|
||||
|
||||
Press `Y` to confirm that you would like to continue.
|
||||
|
||||
### {% linkable_title USB device permissions %}
|
||||
When using some USB devices users have to give dialout permission to the user `homeassistant` and restart.
|
||||
|
||||
```shell
|
||||
$ sudo usermod -a -G dialout homeassistant
|
||||
$ sudo reboot
|
||||
```
|
||||
|
||||
### {% linkable_title Troubleshooting %}
|
||||
|
||||
If you run into any issues, please see [the troubleshooting page](/getting-started/troubleshooting/). It contains solutions to many of the more commonly encountered issues.
|
||||
|
||||
In addition to this site, check out these sources for additional help:
|
||||
|
||||
- [Forum](https://community.home-assistant.io) for Home Assistant discussions and questions.
|
||||
- [Gitter Chat Room](https://gitter.im/home-assistant/home-assistant) for real-time chat about Home Assistant.
|
||||
- [GitHub Page](https://github.com/home-assistant/home-assistant/issues) for issue reporting.
|
||||
|
||||
### [Next step: Configuring Home Assistant »](/getting-started/configuration/)
|
||||
|
||||
[image-download]: https://github.com/home-assistant/pi-gen/releases
|
||||
[flash-linux]: https://www.raspberrypi.org/documentation/installation/installing-images/linux.md
|
||||
[flash-macos]: https://www.raspberrypi.org/documentation/installation/installing-images/mac.md
|
||||
[flash-windows]: https://www.raspberrypi.org/documentation/installation/installing-images/windows.md
|
||||
[pi-components]: /getting-started/installation-raspberry-pi/#raspberry-pi-hardware-specific-components
|
||||
[configuring-homeassistant]: /getting-started/configuration/
|
||||
[ssh-putty]: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
|
||||
[stop-homeassistant]: /getting-started/installation-raspberry-pi-image/#startstoprestart-home-assistant-on-hassbian
|
||||
[configuring-homeassistant]: /getting-started/configuration/
|
||||
[bash-windows]: https://msdn.microsoft.com/en-us/commandline/wsl/about
|
||||
[install-zwave]: /getting-started/z-wave/
|
22
source/getting-started/hassbian-customization.markdown
Normal file
22
source/getting-started/hassbian-customization.markdown
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Customization"
|
||||
description: "Instructions to flash the Home Assistant HASSbian image on a Raspberry Pi."
|
||||
date: 2016-09-26 21:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
To allow you to customize your installation further, we have included a set of Hassbian scripts.
|
||||
|
||||
- Install Samba. Allows anyone on your network to edit your configuration from any computer. This share is unsecured and it's usage is not recommended if you share your network with others.
|
||||
- Install Libcec. Adds local [HDMI CEC support][cec].
|
||||
- Install Mossquitto MQTT server. Installs the latest Mosquitto package and client tools from the Mosquitto projects offical repository. Now includes websocket support.
|
||||
- Install Open Z-Wave. Installs Open Z-Wave and prepares for using a USB or GPIO ZWave controller.
|
||||
|
||||
All of these scripts are available in the directory `/home/pi/hassbian-scripts/`. For more information about these scripts have a look at the [hassbian-scripts repository][hassbian-repo].
|
||||
|
||||
[hassbian-repo]: https://github.com/home-assistant/hassbian-scripts#the-included-scripts
|
||||
[cec]: /components/hdmi_cec/
|
50
source/getting-started/hassbian-installation.markdown
Normal file
50
source/getting-started/hassbian-installation.markdown
Normal file
@ -0,0 +1,50 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Installing Hassbian"
|
||||
description: "Instructions to flash the Home Assistant HASSbian image on a Raspberry Pi."
|
||||
date: 2016-09-26 21:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
The easiest way to install Home Assistant on your Raspberry Pi is by using HASSbian: a Raspberry Pi image with Home Assistant built-in. The image will install the latest version of Home Assistant on initial boot (~10 minutes).
|
||||
|
||||
1. [Download the Hassbian 1.1 image][image-download] (359MB)
|
||||
2. Use [Etcher][etcher] to flash the image to your SD card
|
||||
3. Ensure your Raspberry Pi has access to the internet.
|
||||
4. Insert SD card to Raspberry Pi and turn it on. Initial installation of Home Assistant will take about 5 minutes.
|
||||
|
||||
These instructions are also available as a [video](https://www.youtube.com/watch?v=iIz6XqDwHEk).
|
||||
|
||||
After initial boot, you can reach Home Assistant in your browser at [http://hassbian.local:8123]. If you want to login via SSH, the default username is `pi` and password is `raspberry` (please change this by running `passwd`). The Home Assistant configuration is located at `/home/homeassistant/.homeassistant/`.
|
||||
|
||||
The following extras are included on the image:
|
||||
|
||||
- GPIO pins are ready to use.
|
||||
- Bluetooth is ready to use (supported models only, no Bluetooth LE).
|
||||
|
||||
### {% linkable_title Technical Details %}
|
||||
|
||||
- Home Assistant is installed in a virtual Python environment at `/srv/homeassistant/`
|
||||
- Home Assistant will be started as a service run by the user `homeassistant`
|
||||
- The configuration is located at `/home/homeassistant/.homeassistant`
|
||||
|
||||
|
||||
### {% linkable_title Troubleshooting %}
|
||||
|
||||
If you run into any issues, please see [the troubleshooting page](/getting-started/troubleshooting/). It contains solutions to many of the more commonly encountered issues.
|
||||
|
||||
In addition to this site, check out these sources for additional help:
|
||||
|
||||
- [Forum](https://community.home-assistant.io) for Home Assistant discussions and questions.
|
||||
- [Gitter Chat Room](https://gitter.im/home-assistant/home-assistant) for real-time chat about Home Assistant.
|
||||
- [GitHub Page](https://github.com/home-assistant/home-assistant/issues) for issue reporting.
|
||||
|
||||
### [Learn how to configure Home Assistant »](/getting-started/configuration/)
|
||||
### [Learn common tasks in Hassbian »](/getting-started/hassbian-common-tasks/)
|
||||
|
||||
[image-download]: https://github.com/home-assistant/pi-gen/releases/download/v1.1/image_2017-02-03-HASSbian.zip
|
||||
[etcher]: https://etcher.io/
|
||||
[http://hassbian.local:8123]: http://hassbian.local:8123
|
100
source/getting-started/hassbian-integrations.markdown
Normal file
100
source/getting-started/hassbian-integrations.markdown
Normal file
@ -0,0 +1,100 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Raspberry Pi integrations"
|
||||
description: "Home Assistant integrations specific to the Raspberry Pi."
|
||||
date: 2016-09-26 21:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
Some components that are specific for the Raspberry Pi can require some further configuration outside of Home Assistant. All commands below are assumed to be executed with the `pi` account. For full documentation of these components refer to the [components](/components) page.
|
||||
|
||||
### {% linkable_title Bluetooth Tracker %}
|
||||
|
||||
The Bluetooth tracker will work on a Raspberry Pi 3 with the built-in Bluetooth module or with a USB Bluetooth device on any of the other Raspberry Pi's.
|
||||
|
||||
Install the following external dependencies.
|
||||
```bash
|
||||
$ sudo apt-get install bluetooth libbluetooth-dev
|
||||
```
|
||||
After this follow the [Bluetooth Tracker component](/components/device_tracker.bluetooth_tracker/) and [Device Tracker page](/components/device_tracker/) pages.
|
||||
|
||||
### {% linkable_title Raspberry Pi Camera %}
|
||||
|
||||
The Raspberry Pi Camera is a specific camera for the Raspberry Pi boards. For more information about the camera I suggest reading the [documentation](https://www.raspberrypi.org/documentation/usage/camera/) from the Raspberry Pi foundation.
|
||||
|
||||
To use the camera it needs to be enabled with the `raspi-config` utility.
|
||||
|
||||
```bash
|
||||
$ sudo raspi-config
|
||||
```
|
||||
|
||||
Select `Enable camera` choose `<Yes>` and hit `Enter`, then go to `Finish` and you'll be prompted to reboot.
|
||||
|
||||
After reboot add your `homeassistant` account to the `video` group.
|
||||
|
||||
```bash
|
||||
$ sudo adduser homeassistant video
|
||||
```
|
||||
|
||||
After this follow the [Raspberry Pi Camera component](/components/camera.rpi_camera/) page.
|
||||
|
||||
### {% linkable_title Raspberry Pi GPIO %}
|
||||
|
||||
Each of the following devices are connected to the GPIO pins on the Raspberry Pi.
|
||||
For more details about the GPIO layout, visit the [documentation](https://www.raspberrypi.org/documentation/usage/gpio/) from the Raspberry Pi foundation.
|
||||
|
||||
Since these are not normally used some extra permission will need to be added.
|
||||
In general the permission that is needed is granted by adding the `homeassistant` account to the `gpio` group.
|
||||
|
||||
### {% linkable_title Raspberry Pi Cover %}
|
||||
|
||||
Add your `homeassistant` account to the `gpio` group
|
||||
```bash
|
||||
$ sudo adduser homeassistant gpio
|
||||
```
|
||||
After this follow the [Raspberry Pi Cover component](/components/cover.rpi_gpio/) page.
|
||||
|
||||
### {% linkable_title DHT Sensor %}
|
||||
|
||||
Add your `homeassistant` account to the `gpio` group
|
||||
```bash
|
||||
$ sudo adduser homeassistant gpio
|
||||
```
|
||||
After this follow the [DHT Sensor component](/components/sensor.dht/) page.
|
||||
|
||||
|
||||
### {% linkable_title Raspberry PI GPIO Binary Sensor %}
|
||||
|
||||
Add your `homeassistant` account to the `gpio` group
|
||||
```bash
|
||||
$ sudo adduser homeassistant gpio
|
||||
```
|
||||
After this follow the [Raspberry PI GPIO Binary Sensor component](/components/binary_sensor.rpi_gpio/) page.
|
||||
|
||||
### {% linkable_title Raspberry PI GPIO Switch %}
|
||||
|
||||
Add your `homeassistant` account to the `gpio` group.
|
||||
```bash
|
||||
$ sudo adduser homeassistant gpio
|
||||
```
|
||||
After this follow the [Raspberry PI GPIO Switch component](/components/switch.rpi_gpio/) page.
|
||||
|
||||
### {% linkable_title Raspberry Pi RF Switch %}
|
||||
|
||||
Add your `homeassistant` account to the `gpio` group
|
||||
```bash
|
||||
$ sudo adduser homeassistant gpio
|
||||
```
|
||||
After this follow the [Raspberry Pi RF Switch component](/components/switch.rpi_rf/) page.
|
||||
|
||||
### {% linkable_title One wire Sensor %}
|
||||
|
||||
The One wire sensor requires that support for it is enabled on the Raspberry Pi and that the One Wire device is connected to GPIO pin 4.
|
||||
To enable One Wire support add the following line to the end of `/boot/config.txt`
|
||||
```yaml
|
||||
dtoverlay=w1-gpio
|
||||
```
|
||||
After this follow the [One Wire Sensor component](/components/sensor.onewire/) page.
|
29
source/getting-started/hassbian-upgrading.markdown
Normal file
29
source/getting-started/hassbian-upgrading.markdown
Normal file
@ -0,0 +1,29 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Upgrading Hassbian"
|
||||
description: "Instructions how to upgrade Hasbian to the latest version."
|
||||
date: 2016-09-26 21:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
HASSbian is based on Raspbian and uses the same repositories. Any changes to Raspbian will be reflected in HASSbian. To update and upgrade system packages and installed software (excluding Home Assistant) do the following.
|
||||
Log in as the `pi` account and execute the following commands:
|
||||
|
||||
```bash
|
||||
$ sudo apt-get update
|
||||
$ sudo apt-get upgrade
|
||||
```
|
||||
|
||||
Press `Y` to confirm that you would like to continue.
|
||||
|
||||
#### {% linkable_title Upgrading the hassbian-scripts %}
|
||||
|
||||
To update the hassbian-scripts directory execute the following command as the `pi` user.
|
||||
|
||||
```bash
|
||||
$ cd hassbian-scripts
|
||||
$ git pull
|
||||
```
|
22
source/getting-started/hassbian.markdown
Normal file
22
source/getting-started/hassbian.markdown
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Hassbian"
|
||||
description: "Instructions to flash the Home Assistant HASSbian image on a Raspberry Pi."
|
||||
date: 2016-09-26 21:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
Hassbian is our customized operating system for the Raspberry Pi 3. It is the easiest way of installing Home Assistant.
|
||||
|
||||
- [Install Hassbian][install]
|
||||
- [Customize your installation][customize]
|
||||
- [Pi specific integrations][integrations]
|
||||
- [Learn how to perform common tasks][common]
|
||||
|
||||
[install]: /getting-started/hassbian-installatino/
|
||||
[customize]: /getting-started/hassbian-customization/
|
||||
[common]: /getting-started/hassbian-common-tasks/
|
||||
[integrations]: /getting-started/hassbian-integrations/
|
@ -1,52 +1,41 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Getting Started"
|
||||
description: "Step by step guide to get started with Home Assistant."
|
||||
date: 2014-12-18 22:57
|
||||
title: "Installing Home Assistant"
|
||||
description: "Instructions to get started using Home Assistant."
|
||||
date: 2016-09-26 21:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
Below you can find the standard instructions. See the sidebar for installation instructions for specific platforms. If you're running a Linux-based platform, we suggest you follow the [VirtualEnv Linux instructions] to avoid using root.
|
||||
You will need to install Home Assistant before we can get started. You can install Home Assistant on your computer or you can turn a Raspberry Pi into a dedicated Home Assistant hub.
|
||||
|
||||
[Virtualenv Linux instructions]: /getting-started/installation-virtualenv/
|
||||
<div class="text-center hass-option-cards" markdown="0">
|
||||
<a class='option-card' href='/getting-started/hassbian-installation/'>
|
||||
<div class='img-container'>
|
||||
<img src='/images/supported_brands/raspberry-pi.png' />
|
||||
</div>
|
||||
<div class='title'>Install Hassbian on your Raspberry Pi 3</div>
|
||||
</a>
|
||||
<a class='option-card' href='/getting-started/installation-python/'>
|
||||
<div class='img-container'>
|
||||
<img src='/images/supported_brands/python.svg' />
|
||||
</div>
|
||||
<div class='title'>Install Home Assistant on your computer</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
Installing and running Home Assistant on your local machine is easy. The only requirement is that you have [Python](https://www.python.org/downloads/) installed. For Windows we require at least Python 3.5 and for other operating systems at least Python 3.4.2. Once installed, execute the following code in a console:
|
||||
### {% linkable_title Alternative methods %}
|
||||
|
||||
```bash
|
||||
$ pip3 install homeassistant
|
||||
$ hass --open-ui
|
||||
```
|
||||
For advanced users we have several alternative guides for installing Home Assistant.
|
||||
|
||||
Running these commands will:
|
||||
- [Docker](/getting-started/installation-docker/)
|
||||
- [Manual Raspberry Pi installtion](/getting-started/installation-raspberry-pi/) (requires existing Raspbian installation)
|
||||
- [Raspberry Pi All-In-One Installer Script](/getting-started/installation-raspberry-pi-all-in-one/) (requires existing Raspbian installation)
|
||||
- [Vagrant](/getting-started/installation-vagrant/)
|
||||
- [Synology NAS](/getting-started/installation-synology/)
|
||||
- [Virtualenv Linux](/getting-started/installation-virtualenv/)
|
||||
|
||||
- Install Home Assistant
|
||||
- Launch Home Assistant and serve the web interface on [http://localhost:8123](http://localhost:8123)
|
||||
|
||||
If you prefer to watch a video tutorial, [tktino](https://github.com/tktino) has made some great ones:
|
||||
|
||||
- [Windows 10](https://www.youtube.com/watch?v=X27eVvuqwnY)
|
||||
- [Mac OS X](https://www.youtube.com/watch?v=hej6ipN86ls)
|
||||
- [Ubuntu 14.04](https://www.youtube.com/watch?v=SXaAG1lGNH0)
|
||||
|
||||
### {% linkable_title Updating %}
|
||||
|
||||
To update Home Assistant to the latest release check the [Updating section](/getting-started/updating/).
|
||||
|
||||
### {% linkable_title Troubleshooting %}
|
||||
|
||||
If you run into any issues, please see [the troubleshooting page](/getting-started/troubleshooting/). It contains solutions to many commonly encountered issues.
|
||||
|
||||
In addition to this site, check out these sources for additional help:
|
||||
|
||||
- [Forum](https://community.home-assistant.io) for Home Assistant discussions and questions
|
||||
- [Gitter Chat Room](https://gitter.im/home-assistant/home-assistant) for real-time chat about Home Assistant
|
||||
- [GitHub Page](https://github.com/home-assistant/home-assistant/issues) for issue reporting
|
||||
|
||||
### {% linkable_title What's next? %}
|
||||
|
||||
To see what Home Assistant can do, launch demo mode: `hass --demo-mode` or visit the [demo page](/demo).
|
||||
|
||||
### [Next step: Configuring Home Assistant »](/getting-started/configuration/)
|
||||
[rpi]: /getting-started/installation-raspberry-pi-image/
|
||||
[python]: /getting-started/installation-python/
|
||||
|
54
source/getting-started/installation-python.markdown
Normal file
54
source/getting-started/installation-python.markdown
Normal file
@ -0,0 +1,54 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Installation on your computer"
|
||||
description: "Step by step guide to install Home Assistant on your computer."
|
||||
date: 2014-12-18 22:57
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
---
|
||||
|
||||
Installing and running Home Assistant on your local machine is easy. The only requirement is that you have [Python](https://www.python.org/downloads/) installed. For Windows we require at least Python 3.5 and for other operating systems at least Python 3.4.2.
|
||||
|
||||
Once installed, execute the following code in a console:
|
||||
|
||||
```bash
|
||||
$ pip3 install homeassistant
|
||||
$ hass --open-ui
|
||||
```
|
||||
|
||||
Running these commands will:
|
||||
|
||||
- Install Home Assistant
|
||||
- Launch Home Assistant and serve the web interface on [http://localhost:8123](http://localhost:8123)
|
||||
|
||||
If you're running a Linux-based platform, we suggest you follow the [VirtualEnv Linux instructions][virtualenv] to avoid using root.
|
||||
|
||||
Video tutorials of this process for various operating systems are available here:
|
||||
|
||||
- [Windows 10](https://www.youtube.com/watch?v=X27eVvuqwnY)
|
||||
- [Mac OS X](https://www.youtube.com/watch?v=hej6ipN86ls)
|
||||
- [Ubuntu 14.04](https://www.youtube.com/watch?v=SXaAG1lGNH0)
|
||||
|
||||
### {% linkable_title Updating %}
|
||||
|
||||
To update Home Assistant to the latest release check the [Updating section](/getting-started/updating/).
|
||||
|
||||
### {% linkable_title Troubleshooting %}
|
||||
|
||||
If you run into any issues, please see [the troubleshooting page](/getting-started/troubleshooting/). It contains solutions to many commonly encountered issues.
|
||||
|
||||
In addition to this site, check out these sources for additional help:
|
||||
|
||||
- [Forum](https://community.home-assistant.io) for Home Assistant discussions and questions
|
||||
- [Gitter Chat Room](https://gitter.im/home-assistant/home-assistant) for real-time chat about Home Assistant
|
||||
- [GitHub Page](https://github.com/home-assistant/home-assistant/issues) for issue reporting
|
||||
|
||||
### {% linkable_title What's next? %}
|
||||
|
||||
To see what Home Assistant can do, launch demo mode: `hass --demo-mode` or visit the [demo page](/demo).
|
||||
|
||||
### [Next step: Configuring Home Assistant »](/getting-started/configuration/)
|
||||
|
||||
[virtualenv]: /getting-started/installation-virtualenv/
|
@ -19,7 +19,7 @@ Note that as of 2016-11-30 SSH is disabled by default in the official Raspbian i
|
||||
* Run the following command
|
||||
|
||||
```bash
|
||||
$ wget -Nnv https://raw.githubusercontent.com/home-assistant/fabric-home-assistant/master/hass_rpi_installer.sh && chown pi:pi hass_rpi_installer.sh && bash hass_rpi_installer.sh
|
||||
$ curl -O https://raw.githubusercontent.com/home-assistant/fabric-home-assistant/master/hass_rpi_installer.sh && sudo chown pi:pi hass_rpi_installer.sh && bash hass_rpi_installer.sh
|
||||
```
|
||||
<p class='note warning'>
|
||||
Note this command is one-line and not run as sudo.
|
||||
|
@ -63,7 +63,7 @@ $ sudo chown homeassistant:homeassistant homeassistant
|
||||
|
||||
Next up is to create and change to a virtual environment for Home Assistant. This will be done as the `homeassistant` account.
|
||||
```bash
|
||||
$ sudo su -s /bin/bash homeassistant
|
||||
$ sudo su -s /bin/bash homeassistant
|
||||
$ cd /srv/homeassistant
|
||||
$ python3 -m venv homeassistant_venv
|
||||
$ source /srv/homeassistant/homeassistant_venv/bin/activate
|
||||
@ -78,89 +78,10 @@ Start Home Assistant for the first time. This will complete the installation, cr
|
||||
(homeassistant_venv) $ hass
|
||||
```
|
||||
|
||||
You can now reach your installation on your raspberry pi over the web interface on [http://ipaddress:8123](http://ipaddress:8123).
|
||||
You can now reach your installation on your raspberry pi over the web interface on [http://ipaddress:8123](http://ipaddress:8123).
|
||||
|
||||
For instruction on how to configure Home Assistant continue on with [Configuring Home Assistant](/getting-started/configuration/).
|
||||
|
||||
### {% linkable_title Raspberry Pi Hardware Specific Components %}
|
||||
|
||||
Some components that are specific for the Raspberry Pi can require some further configuration outside of Home Assistant. All commands below are assumed to be executed with the `pi` account. For full documentation of these components refer to the [components](/components) page.
|
||||
|
||||
### {% linkable_title Bluetooth Tracker %}
|
||||
The Bluetooth tracker will work on a Raspberry Pi 3 with the built-in Bluetooth module or with a USB Bluetooth device on any of the other Raspberry Pi's.
|
||||
|
||||
Install the following external dependencies.
|
||||
```bash
|
||||
$ sudo apt-get install bluetooth libbluetooth-dev
|
||||
```
|
||||
After this follow the [Bluetooth Tracker component](/components/device_tracker.bluetooth_tracker/) and [Device Tracker page](/components/device_tracker/) pages.
|
||||
|
||||
|
||||
### {% linkable_title Raspberry Pi Camera %}
|
||||
The Raspberry Pi Camera is a specific camera for the Raspberry Pi boards. For more information about the camera I suggest reading the [documentation](https://www.raspberrypi.org/documentation/usage/camera/) from the Raspberry Pi foundation.
|
||||
|
||||
To use the camera it needs to be enabled with the `raspi-config` utility.
|
||||
```bash
|
||||
$ sudo raspi-config
|
||||
```
|
||||
Select `Enable camera` choose `<Yes>` and hit `Enter`, then go to `Finish` and you'll be prompted to reboot.
|
||||
After reboot add your `homeassistant` account to the `video` group.
|
||||
```bash
|
||||
$ sudo adduser homeassistant video
|
||||
```
|
||||
After this follow the [Raspberry Pi Camera component](/components/camera.rpi_camera/) page.
|
||||
|
||||
### {% linkable_title Raspberry Pi GPIO %}
|
||||
Each of the following devices are connected to the GPIO pins on the Raspberry Pi.
|
||||
For more details about the GPIO layout, visit the [documentation](https://www.raspberrypi.org/documentation/usage/gpio/) from the Raspberry
|
||||
Pi foundation.
|
||||
Since these are not normally used some extra permission will need to be added.
|
||||
In general the permission that is needed is granted by adding the `homeassistant` account to the `gpio` group.
|
||||
|
||||
|
||||
#### {% linkable_title Raspberry Pi Cover %}
|
||||
Add your `homeassistant` account to the `gpio` group
|
||||
```bash
|
||||
$ sudo adduser homeassistant gpio
|
||||
```
|
||||
After this follow the [Raspberry Pi Cover component](/components/cover.rpi_gpio/) page.
|
||||
|
||||
#### {% linkable_title DHT Sensor %}
|
||||
Add your `homeassistant` account to the `gpio` group
|
||||
```bash
|
||||
$ sudo adduser homeassistant gpio
|
||||
```
|
||||
After this follow the [DHT Sensor component](/components/sensor.dht/) page.
|
||||
|
||||
|
||||
#### {% linkable_title Raspberry PI GPIO Binary Sensor %}
|
||||
Add your `homeassistant` account to the `gpio` group
|
||||
```bash
|
||||
$ sudo adduser homeassistant gpio
|
||||
```
|
||||
After this follow the [Raspberry PI GPIO Binary Sensor component](/components/binary_sensor.rpi_gpio/) page.
|
||||
|
||||
#### {% linkable_title Raspberry PI GPIO Switch %}
|
||||
Add your `homeassistant` account to the `gpio` group.
|
||||
```bash
|
||||
$ sudo adduser homeassistant gpio
|
||||
```
|
||||
After this follow the [Raspberry PI GPIO Switch component](/components/switch.rpi_gpio/) page.
|
||||
|
||||
#### {% linkable_title Raspberry Pi RF Switch %}
|
||||
Add your `homeassistant` account to the `gpio` group
|
||||
```bash
|
||||
$ sudo adduser homeassistant gpio
|
||||
```
|
||||
After this follow the [Raspberry Pi RF Switch component](/components/switch.rpi_rf/) page.
|
||||
|
||||
#### {% linkable_title One wire Sensor %}
|
||||
The One wire sensor requires that support for it is enabled on the Raspberry Pi and that the One Wire device is connected to GPIO pin 4.
|
||||
To enable One Wire support add the following line to the end of `/boot/config.txt`
|
||||
```yaml
|
||||
dtoverlay=w1-gpio
|
||||
```
|
||||
After this follow the [One Wire Sensor component](/components/sensor.onewire/) page.
|
||||
|
||||
### {% linkable_title Troubleshooting %}
|
||||
|
||||
If you run into any issues, please see [the troubleshooting page](/getting-started/troubleshooting/). It contains solutions to many of the more commonly encountered issues.
|
||||
|
@ -110,7 +110,7 @@ If you want to use Z-Wave devices, you will need to install `python-openzwave` i
|
||||
Install the dependencies as normal (Note: you will need to do this as your normal user, since `homeassistant` isn't a sudoer).
|
||||
|
||||
```bash
|
||||
$ sudo apt-get install cython3 libudev-dev python3-sphinx python3-setuptools
|
||||
$ sudo apt-get install cython3 libudev-dev python3-sphinx python3-setuptools git
|
||||
```
|
||||
|
||||
Then, activate your virtualenv (steps 3 and 5 above) and upgrade cython.
|
||||
|
@ -7,11 +7,12 @@ sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
redirect_from: /getting-started/android/
|
||||
---
|
||||
|
||||
Home Assistant is not available on the Play Store or App Store. Instead, Home Assistant leverages the new W3C [manifest.json](https://w3c.github.io/manifest/) support, allowing mobile devices to add the "web app" to your homescreen as if it was native.
|
||||
|
||||
On Android:
|
||||
### {% linkable_title Android %}
|
||||
|
||||
1. Open Chrome
|
||||
2. Navigate to your Home Assistant instance
|
||||
@ -23,7 +24,7 @@ On Android:
|
||||
<img src='/images/screenshots/android-homescreen-guide.gif' />
|
||||
</p>
|
||||
|
||||
On iOS:
|
||||
### {% linkable_title iOS %}
|
||||
|
||||
1. Open Safari
|
||||
2. Navigate to your Home Assistant instance
|
@ -15,11 +15,11 @@ The default way to update Home Assistant to the latest release, when available,
|
||||
|
||||
```bash
|
||||
$ pip3 install --upgrade homeassistant
|
||||
```
|
||||
```
|
||||
|
||||
After updating, you must restart Home Assistant for the changes to take effect. This means that you will have to restart `hass` itself or the [autostarting](/getting-started/autostart/) daemon (if applicable)
|
||||
|
||||
<p class='note note'>
|
||||
<p class='note'>
|
||||
To avoid permission errors, the upgrade must be run as the same user as the installation was completed, again review the documentation specific to your install [HASSbian](/getting-started/installation-raspberry-pi-image/), [Raspberry Pi All-In-One Installer](/getting-started/installation-raspberry-pi-all-in-one/), [Vagrant](/getting-started/installation-vagrant/), or [Virtualenv](/getting-started/installation-virtualenv)t.
|
||||
</p>
|
||||
|
||||
|
@ -76,7 +76,7 @@ Configuration variables:
|
||||
- **config_path** (*Optional*): The path to the Python OpenZWave configuration files. Defaults to the folder `config` in your Python OpenZWave install directory.
|
||||
- **autoheal** (*Optional*): Allows disabling auto Z-Wave heal at midnight. Defaults to True.
|
||||
- **polling_interval** (*Optional*): The time period in milliseconds between polls of a nodes value. Be careful about using polling values below 30000 (30 seconds) as polling can flood the zwave network and cause problems.
|
||||
- **customize** (*Optional*): This attribute contains node-specific override values:
|
||||
- **customize** (*Optional*): This attribute contains node-specific override values. See [Customizing devices and services](https://home-assistant.io/getting-started/customizing-devices/) for format:
|
||||
- **polling_intensity** (*Optional*): Enables polling of a value and sets the frequency of polling (0=none, 1=every time through the list, 2=every other time, etc). If not specified then your device will not be polled.
|
||||
- **ignored** (*Optional*): Ignore this entitiy completely. It won't be shown in the Web Interface and no events are generated for it.
|
||||
- **refresh_value** (*Optional*): Enable refreshing of the node value. Only the light component uses this. Defaults to False.
|
||||
|
@ -39,6 +39,13 @@ Have you found an issue in your Home Assistant installation? Please report it. R
|
||||
|
||||
Looking for [talking points](/help/talking-points/) or [trivia](/help/trivia)?
|
||||
|
||||
### {% linkable_title Media coverage %}
|
||||
|
||||
- [Episode #11](https://pythonbytes.fm/episodes/show/11/django-2.0-is-dropping-python-2-entirely-pipenv-for-profile-functionality-and-pythonic-home-automation) at minute 15:20 by [Python Bytes](https://pythonbytes.fm/) - January 2017
|
||||
- [Weekend Project: Setting up Home Assistant on your PC or Mac](http://www.automatedhome.co.uk/software/weekend-project-setting-up-home-assistant-on-your-pc-or-mac.html) by [automated home](http://www.automatedhome.co.uk/) - April 2016
|
||||
- [Episode 105 - DIY Home Automation Roundup](https://www.hometech.fm/shows/105) by [HomeTech.fm](https://www.hometech.fm/) - April 2016
|
||||
- [5 open source home automation tools](https://opensource.com/life/16/3/5-open-source-home-automation-tools) by [opensource.com](https://opensource.com) - March 2016
|
||||
|
||||
### {% 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.
|
||||
|
BIN
source/images/blog/2017-02-babyphone/social.png
Normal file
BIN
source/images/blog/2017-02-babyphone/social.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 180 KiB |
288
source/images/supported_brands/python.svg
Normal file
288
source/images/supported_brands/python.svg
Normal file
@ -0,0 +1,288 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://web.resource.org/cc/"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.0"
|
||||
id="svg2"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.43"
|
||||
sodipodi:docname="logo-python-inkscape.svg"
|
||||
width="388.84pt"
|
||||
height="115.02pt"
|
||||
sodipodi:docbase="/home/sdeibel">
|
||||
<metadata
|
||||
id="metadata371">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<sodipodi:namedview
|
||||
inkscape:window-height="882"
|
||||
inkscape:window-width="1233"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
guidetolerance="10.0"
|
||||
gridtolerance="10.0"
|
||||
objecttolerance="10.0"
|
||||
borderopacity="1.0"
|
||||
bordercolor="#666666"
|
||||
pagecolor="#ffffff"
|
||||
id="base"
|
||||
inkscape:zoom="2.1461642"
|
||||
inkscape:cx="250.73166"
|
||||
inkscape:cy="67.50975"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="6"
|
||||
inkscape:current-layer="svg2"
|
||||
width="210mm"
|
||||
height="40mm"
|
||||
units="mm" />
|
||||
<defs
|
||||
id="defs4">
|
||||
<linearGradient
|
||||
id="linearGradient2795">
|
||||
<stop
|
||||
style="stop-color:#b8b8b8;stop-opacity:0.49803922;"
|
||||
offset="0"
|
||||
id="stop2797" />
|
||||
<stop
|
||||
style="stop-color:#7f7f7f;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop2799" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient2787">
|
||||
<stop
|
||||
style="stop-color:#7f7f7f;stop-opacity:0.5;"
|
||||
offset="0"
|
||||
id="stop2789" />
|
||||
<stop
|
||||
style="stop-color:#7f7f7f;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop2791" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3676">
|
||||
<stop
|
||||
style="stop-color:#b2b2b2;stop-opacity:0.5;"
|
||||
offset="0"
|
||||
id="stop3678" />
|
||||
<stop
|
||||
style="stop-color:#b3b3b3;stop-opacity:0;"
|
||||
offset="1"
|
||||
id="stop3680" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient3236">
|
||||
<stop
|
||||
style="stop-color:#f4f4f4;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3244" />
|
||||
<stop
|
||||
style="stop-color:white;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3240" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient4671">
|
||||
<stop
|
||||
style="stop-color:#ffd43b;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop4673" />
|
||||
<stop
|
||||
style="stop-color:#ffe873;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop4675" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
id="linearGradient4689">
|
||||
<stop
|
||||
style="stop-color:#5a9fd4;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop4691" />
|
||||
<stop
|
||||
style="stop-color:#306998;stop-opacity:1;"
|
||||
offset="1"
|
||||
id="stop4693" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
x1="224.23996"
|
||||
y1="144.75717"
|
||||
x2="-65.308502"
|
||||
y2="144.75717"
|
||||
id="linearGradient2987"
|
||||
xlink:href="#linearGradient4671"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(100.2702,99.61116)" />
|
||||
<linearGradient
|
||||
x1="172.94208"
|
||||
y1="77.475983"
|
||||
x2="26.670298"
|
||||
y2="76.313133"
|
||||
id="linearGradient2990"
|
||||
xlink:href="#linearGradient4689"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(100.2702,99.61116)" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4689"
|
||||
id="linearGradient2587"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(100.2702,99.61116)"
|
||||
x1="172.94208"
|
||||
y1="77.475983"
|
||||
x2="26.670298"
|
||||
y2="76.313133" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4671"
|
||||
id="linearGradient2589"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(100.2702,99.61116)"
|
||||
x1="224.23996"
|
||||
y1="144.75717"
|
||||
x2="-65.308502"
|
||||
y2="144.75717" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4689"
|
||||
id="linearGradient2248"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(100.2702,99.61116)"
|
||||
x1="172.94208"
|
||||
y1="77.475983"
|
||||
x2="26.670298"
|
||||
y2="76.313133" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4671"
|
||||
id="linearGradient2250"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(100.2702,99.61116)"
|
||||
x1="224.23996"
|
||||
y1="144.75717"
|
||||
x2="-65.308502"
|
||||
y2="144.75717" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4671"
|
||||
id="linearGradient2255"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)"
|
||||
x1="224.23996"
|
||||
y1="144.75717"
|
||||
x2="-65.308502"
|
||||
y2="144.75717" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4689"
|
||||
id="linearGradient2258"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)"
|
||||
x1="172.94208"
|
||||
y1="76.176224"
|
||||
x2="26.670298"
|
||||
y2="76.313133" />
|
||||
<radialGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient2795"
|
||||
id="radialGradient2801"
|
||||
cx="61.518883"
|
||||
cy="132.28575"
|
||||
fx="61.518883"
|
||||
fy="132.28575"
|
||||
r="29.036913"
|
||||
gradientTransform="matrix(1,0,0,0.177966,0,108.7434)"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4671"
|
||||
id="linearGradient1475"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.562541,0,0,0.567972,-9.399749,-5.305317)"
|
||||
x1="150.96111"
|
||||
y1="192.35176"
|
||||
x2="112.03144"
|
||||
y2="137.27299" />
|
||||
<linearGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient4689"
|
||||
id="linearGradient1478"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(0.562541,0,0,0.567972,-9.399749,-5.305317)"
|
||||
x1="26.648937"
|
||||
y1="20.603781"
|
||||
x2="135.66525"
|
||||
y2="114.39767" />
|
||||
<radialGradient
|
||||
inkscape:collect="always"
|
||||
xlink:href="#linearGradient2795"
|
||||
id="radialGradient1480"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="matrix(2.382716e-8,-0.296405,1.43676,4.683673e-7,-128.544,150.5202)"
|
||||
cx="61.518883"
|
||||
cy="132.28575"
|
||||
fx="61.518883"
|
||||
fy="132.28575"
|
||||
r="29.036913" />
|
||||
</defs>
|
||||
<path
|
||||
id="path46"
|
||||
style="fill:#646464;fill-opacity:1"
|
||||
d="M 184.61344,61.929363 C 184.61344,47.367213 180.46118,39.891193 172.15666,39.481813 C 168.85239,39.325863 165.62611,39.852203 162.48754,41.070593 C 159.98254,41.967323 158.2963,42.854313 157.40931,43.751043 L 157.40931,78.509163 C 162.72147,81.842673 167.43907,83.392453 171.55234,83.148783 C 180.25649,82.573703 184.61344,75.507063 184.61344,61.929363 z M 194.85763,62.533683 C 194.85763,69.931723 193.12265,76.072393 189.63319,80.955683 C 185.7441,86.482283 180.35396,89.328433 173.46277,89.484393 C 168.26757,89.650093 162.91642,88.022323 157.40931,84.610843 L 157.40931,116.20116 L 148.50047,113.02361 L 148.50047,42.903043 C 149.96253,41.109583 151.84372,39.569543 154.12454,38.263433 C 159.42696,35.173603 165.86978,33.584823 173.45302,33.506853 L 173.57973,33.633563 C 180.50991,33.545833 185.85132,36.391993 189.60395,42.162263 C 193.10315,47.454933 194.85763,54.238913 194.85763,62.533683 z " />
|
||||
<path
|
||||
id="path48"
|
||||
style="fill:#646464;fill-opacity:1"
|
||||
d="M 249.30487,83.265743 C 249.30487,93.188283 248.31067,100.05998 246.32227,103.88084 C 244.32411,107.7017 240.52275,110.75254 234.90842,113.02361 C 230.35653,114.81707 225.43425,115.79178 220.15133,115.95748 L 218.67952,110.34316 C 224.05016,109.61213 227.83204,108.88109 230.02513,108.15006 C 234.34309,106.688 237.30621,104.44617 238.93397,101.44406 C 240.24008,98.997543 240.88339,94.328693 240.88339,87.418003 L 240.88339,85.098203 C 234.79146,87.866373 228.40711,89.240713 221.73036,89.240713 C 217.34417,89.240713 213.47457,87.866373 210.14107,85.098203 C 206.39818,82.086343 204.52674,78.265483 204.52674,73.635623 L 204.52674,36.557693 L 213.43558,33.506853 L 213.43558,70.828453 C 213.43558,74.815013 214.7222,77.885353 217.29543,80.039463 C 219.86866,82.193563 223.20217,83.226753 227.2862,83.148783 C 231.37023,83.061053 235.74667,81.482023 240.39603,78.392203 L 240.39603,34.851953 L 249.30487,34.851953 L 249.30487,83.265743 z " />
|
||||
<path
|
||||
id="path50"
|
||||
style="fill:#646464;fill-opacity:1"
|
||||
d="M 284.08249,88.997033 C 283.02006,89.084753 282.04535,89.123743 281.14862,89.123743 C 276.10937,89.123743 272.18129,87.924853 269.37413,85.517323 C 266.57671,83.109793 265.17314,79.786033 265.17314,75.546053 L 265.17314,40.456523 L 259.07146,40.456523 L 259.07146,34.851953 L 265.17314,34.851953 L 265.17314,19.968143 L 274.07223,16.800333 L 274.07223,34.851953 L 284.08249,34.851953 L 284.08249,40.456523 L 274.07223,40.456523 L 274.07223,75.302373 C 274.07223,78.645623 274.96896,81.014163 276.76243,82.398253 C 278.30247,83.538663 280.74899,84.191723 284.08249,84.357423 L 284.08249,88.997033 z " />
|
||||
<path
|
||||
id="path52"
|
||||
style="fill:#646464;fill-opacity:1"
|
||||
d="M 338.02288,88.266003 L 329.11404,88.266003 L 329.11404,53.878273 C 329.11404,50.379063 328.29528,47.367213 326.66753,44.852463 C 324.78634,42.006313 322.17411,40.583233 318.82112,40.583233 C 314.73708,40.583233 309.6296,42.737343 303.4987,47.045563 L 303.4987,88.266003 L 294.58985,88.266003 L 294.58985,6.0687929 L 303.4987,3.2616329 L 303.4987,40.700203 C 309.191,36.557693 315.40963,34.481563 322.16436,34.481563 C 326.88196,34.481563 330.70282,36.070333 333.62694,39.238143 C 336.56082,42.405943 338.02288,46.353513 338.02288,51.071103 L 338.02288,88.266003 L 338.02288,88.266003 z " />
|
||||
<path
|
||||
id="path54"
|
||||
style="fill:#646464;fill-opacity:1"
|
||||
d="M 385.37424,60.525783 C 385.37424,54.930953 384.31182,50.310833 382.19669,46.655673 C 379.68195,42.201253 375.77337,39.852203 370.49044,39.608523 C 360.72386,40.173863 355.85032,47.172273 355.85032,60.584263 C 355.85032,66.734683 356.86401,71.871393 358.91089,75.994413 C 361.52312,81.248093 365.44145,83.840823 370.66589,83.753103 C 380.47146,83.675123 385.37424,75.935933 385.37424,60.525783 z M 395.13109,60.584263 C 395.13109,68.547643 393.09395,75.175663 389.02941,80.468333 C 384.5555,86.394563 378.37584,89.367423 370.49044,89.367423 C 362.67328,89.367423 356.58135,86.394563 352.18541,80.468333 C 348.19885,75.175663 346.21044,68.547643 346.21044,60.584263 C 346.21044,53.098503 348.36455,46.801883 352.67276,41.674913 C 357.22466,36.236033 363.20937,33.506853 370.6074,33.506853 C 378.00545,33.506853 384.02914,36.236033 388.66877,41.674913 C 392.97697,46.801883 395.13109,53.098503 395.13109,60.584263 z " />
|
||||
<path
|
||||
id="path56"
|
||||
style="fill:#646464;fill-opacity:1"
|
||||
d="M 446.20583,88.266003 L 437.29699,88.266003 L 437.29699,51.928853 C 437.29699,47.942293 436.0981,44.832973 433.70032,42.591133 C 431.30253,40.359053 428.10549,39.277123 424.11893,39.364853 C 419.8887,39.442833 415.86314,40.826913 412.04229,43.507363 L 412.04229,88.266003 L 403.13345,88.266003 L 403.13345,42.405943 C 408.26042,38.672813 412.97801,36.236033 417.28621,35.095623 C 421.35076,34.033193 424.93769,33.506853 428.02752,33.506853 C 430.14264,33.506853 432.13104,33.711543 434.00248,34.120913 C 437.50169,34.929923 440.34783,36.430973 442.54093,38.633823 C 444.98744,41.070593 446.20583,43.994723 446.20583,47.415943 L 446.20583,88.266003 z " />
|
||||
<path
|
||||
style="fill:url(#linearGradient1478);fill-opacity:1"
|
||||
d="M 60.510156,6.3979729 C 55.926503,6.4192712 51.549217,6.8101906 47.697656,7.4917229 C 36.35144,9.4962267 34.291407,13.691825 34.291406,21.429223 L 34.291406,31.647973 L 61.103906,31.647973 L 61.103906,35.054223 L 34.291406,35.054223 L 24.228906,35.054223 C 16.436447,35.054223 9.6131468,39.73794 7.4789058,48.647973 C 5.0170858,58.860939 4.9078907,65.233996 7.4789058,75.897973 C 9.3848341,83.835825 13.936449,89.491721 21.728906,89.491723 L 30.947656,89.491723 L 30.947656,77.241723 C 30.947656,68.391821 38.6048,60.585475 47.697656,60.585473 L 74.478906,60.585473 C 81.933857,60.585473 87.885159,54.447309 87.885156,46.960473 L 87.885156,21.429223 C 87.885156,14.162884 81.755176,8.7044455 74.478906,7.4917229 C 69.872919,6.7249976 65.093809,6.3766746 60.510156,6.3979729 z M 46.010156,14.616723 C 48.779703,14.616723 51.041406,16.915369 51.041406,19.741723 C 51.041404,22.558059 48.779703,24.835473 46.010156,24.835473 C 43.23068,24.835472 40.978906,22.558058 40.978906,19.741723 C 40.978905,16.91537 43.23068,14.616723 46.010156,14.616723 z "
|
||||
id="path1948" />
|
||||
<path
|
||||
style="fill:url(#linearGradient1475);fill-opacity:1"
|
||||
d="M 91.228906,35.054223 L 91.228906,46.960473 C 91.228906,56.191228 83.403011,63.960472 74.478906,63.960473 L 47.697656,63.960473 C 40.361823,63.960473 34.291407,70.238956 34.291406,77.585473 L 34.291406,103.11672 C 34.291406,110.38306 40.609994,114.65704 47.697656,116.74172 C 56.184987,119.23733 64.323893,119.68835 74.478906,116.74172 C 81.229061,114.78733 87.885159,110.85411 87.885156,103.11672 L 87.885156,92.897973 L 61.103906,92.897973 L 61.103906,89.491723 L 87.885156,89.491723 L 101.29141,89.491723 C 109.08387,89.491723 111.98766,84.056315 114.69765,75.897973 C 117.49698,67.499087 117.37787,59.422197 114.69765,48.647973 C 112.77187,40.890532 109.09378,35.054223 101.29141,35.054223 L 91.228906,35.054223 z M 76.166406,99.710473 C 78.945884,99.710476 81.197656,101.98789 81.197656,104.80422 C 81.197654,107.63057 78.945881,109.92922 76.166406,109.92922 C 73.396856,109.92922 71.135156,107.63057 71.135156,104.80422 C 71.135158,101.98789 73.396853,99.710473 76.166406,99.710473 z "
|
||||
id="path1950" />
|
||||
<path
|
||||
d="M 463.5544,26.909383 L 465.11635,26.909383 L 465.11635,17.113143 L 468.81648,17.113143 L 468.81648,15.945483 L 459.85427,15.945483 L 459.85427,17.113143 L 463.5544,17.113143 L 463.5544,26.909383 M 470.20142,26.909383 L 471.53589,26.909383 L 471.53589,17.962353 L 474.4323,26.908259 L 475.91799,26.908259 L 478.93615,17.992683 L 478.93615,26.909383 L 480.39194,26.909383 L 480.39194,15.945483 L 478.46605,15.945483 L 475.16774,25.33834 L 472.35477,15.945483 L 470.20142,15.945483 L 470.20142,26.909383"
|
||||
style="font-size:15.16445827px;font-style:normal;font-weight:normal;line-height:125%;fill:#646464;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
|
||||
id="text3004"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccc" />
|
||||
<path
|
||||
sodipodi:type="arc"
|
||||
style="opacity:0.44382022;fill:url(#radialGradient1480);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:20;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path1894"
|
||||
sodipodi:cx="61.518883"
|
||||
sodipodi:cy="132.28575"
|
||||
sodipodi:rx="48.948284"
|
||||
sodipodi:ry="8.6066771"
|
||||
d="M 110.46717 132.28575 A 48.948284 8.6066771 0 1 1 12.570599,132.28575 A 48.948284 8.6066771 0 1 1 110.46717 132.28575 z"
|
||||
transform="matrix(0.73406,0,0,0.809524,16.24958,27.00935)" />
|
||||
</svg>
|
After Width: | Height: | Size: 16 KiB |
Loading…
x
Reference in New Issue
Block a user