diff --git a/_config.yml b/_config.yml index 9c226bb45af..10e1ef759d7 100644 --- a/_config.yml +++ b/_config.yml @@ -142,12 +142,12 @@ social: # Home Assistant release details current_major_version: 0 -current_minor_version: 48 -current_patch_version: 1 -date_released: 2017-07-05 +current_minor_version: 49 +current_patch_version: 0 +date_released: 2017-07-16 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. # Major release: -patch_version_notes: "#release-0481---july-5" +patch_version_notes: "#" # Minor release (Example #release-0431---april-25): diff --git a/source/_addons/bluetooth_bcm43xx.markdown b/source/_addons/bluetooth_bcm43xx.markdown index 86fdf43922d..6051a694bba 100644 --- a/source/_addons/bluetooth_bcm43xx.markdown +++ b/source/_addons/bluetooth_bcm43xx.markdown @@ -1,7 +1,7 @@ --- layout: page title: "Bluetooth BCM43xx" -description: "Activate bluetooth for bcm43xx" +description: "Activate the BCM43xx Bluetooth chipset on a Raspberry Pi 3." date: 2017-04-30 13:28 sidebar: true comments: false @@ -9,4 +9,6 @@ sharing: true footer: true --- -Start Bluetooth for BCM43xx chipset on startup. Like Raspberry Pi3 +Start this add-on to activate the BCM43xx Bluetooth chipset. + +Supported platforms: Raspberry Pi 3. diff --git a/source/_addons/check_config.markdown b/source/_addons/check_config.markdown index 7eaafc2b33e..932f4d50547 100644 --- a/source/_addons/check_config.markdown +++ b/source/_addons/check_config.markdown @@ -1,7 +1,7 @@ --- layout: page title: "Check Home Assistant configuration" -description: "Check Home Assistant configuration against a new version" +description: "Check your current Home Assistant configuration against a new version" date: 2017-04-30 13:28 sidebar: true comments: false diff --git a/source/_addons/dhcp_server.markdown b/source/_addons/dhcp_server.markdown index 7ce04f553ce..1eb8c8f5f25 100644 --- a/source/_addons/dhcp_server.markdown +++ b/source/_addons/dhcp_server.markdown @@ -1,7 +1,7 @@ --- layout: page title: "DHCP server" -description: "A simple dhcp server" +description: "A simple DHCP server." date: 2017-04-30 13:28 sidebar: true comments: false @@ -9,7 +9,7 @@ sharing: true footer: true --- -Create a simple DHCP server for your network and allow set fix ip for some devices. +Create a simple DHCP server for your network and allow setting fixed IPs for devices. ```json { diff --git a/source/_addons/dnsmasq.markdown b/source/_addons/dnsmasq.markdown index fe4687f4412..79639249005 100644 --- a/source/_addons/dnsmasq.markdown +++ b/source/_addons/dnsmasq.markdown @@ -1,7 +1,7 @@ --- layout: page title: "Dnsmasq" -description: "A simple dns server with benefits." +description: "A simple DNS server." date: 2017-04-30 13:28 sidebar: true comments: false @@ -9,7 +9,7 @@ sharing: true footer: true --- -Setup and manage a [Dnsmasq](http://thekelleys.org.uk/dnsmasq/doc.html) dns server. This allow your to manipulate some dns requests. I.e. that inside your network, your homeassistant domain will resolve with a internal address. +Setup and manage a [Dnsmasq](http://thekelleys.org.uk/dnsmasq/doc.html) DNS server. This allows you to manipulate DNS requests. For example, you can have your Home Assistant domain resolve with an internal address inside your network.

`interface` options are for resinos based installation. On other system you can set it to `""`, for listen on every interface. diff --git a/source/_addons/mosquitto.markdown b/source/_addons/mosquitto.markdown index ef37e5fd0c4..065e86e9d74 100644 --- a/source/_addons/mosquitto.markdown +++ b/source/_addons/mosquitto.markdown @@ -22,9 +22,19 @@ Set up a [mosquitto](https://mosquitto.org/) MQTT broker. } ``` +

Make sure you use logins and disable anonymous access if you want to secure the system.

+ Configuration variables: - **plain** (*Optional*): Listen to broker on port 1883 without SSL/TLS. Defaults to `true`. - **ssl** (*Optional*): Listen to broker on port 8883 with SSL/TLS. This requires certificates. Defaults to `false`. - **anonymous** (*Optional*): Allow anonymous connection. If *logins* is set, anonymous user can only read data. Defaults to `true`. - **logins** (*Optional*): A list of user that will be created with *username* and *password*. + +### {% linkable_title Home Assistant configuration %} + +```yaml +# Example configuration.yaml entry +mqtt: + broker: 172.17.0.1 +``` diff --git a/source/_addons/nginx_proxy.markdown b/source/_addons/nginx_proxy.markdown index d2a4d882e37..defb16a3847 100644 --- a/source/_addons/nginx_proxy.markdown +++ b/source/_addons/nginx_proxy.markdown @@ -1,7 +1,7 @@ --- layout: page title: "Nginx SSL proxy" -description: "Nginx HomeAssistant SSL proxy" +description: "Nginx Home Assistant SSL proxy" date: 2017-04-30 13:28 sidebar: true comments: false diff --git a/source/_addons/snips.markdown b/source/_addons/snips.markdown new file mode 100644 index 00000000000..a4006419dac --- /dev/null +++ b/source/_addons/snips.markdown @@ -0,0 +1,74 @@ +--- +layout: page +title: "Snips.ai" +description: "Enhance your Hass.io installation with a local voice assistant." +date: 2017-04-30 13:28 +sidebar: true +comments: false +sharing: true +footer: true +--- + +[Snips.ai] is an AI-powered voice assistant that runs on the Raspberry Pi 3 and x86 platforms. It runs on-device and is Private by Design. + +To get started, follow [their tutorial] to create an assistant and download the training data. + +Now install and activate the [Samba] add-on so you can upload your training data. Connect to the "share" Samba share and copy your training data over. Name the file `assistant.zip`. + +Now it's time to start Snips for the first time. When the Snips add-on starts, it will output your audio devices: + +```plain +**** List of PLAYBACK Hardware Devices **** +card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA] + Subdevices: 8/8 + Subdevice #0: subdevice #0 + Subdevice #1: subdevice #1 + Subdevice #2: subdevice #2 + Subdevice #3: subdevice #3 + Subdevice #4: subdevice #4 + Subdevice #5: subdevice #5 + Subdevice #6: subdevice #6 + Subdevice #7: subdevice #7 +card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI] + Subdevices: 1/1 + Subdevice #0: subdevice #0 +``` + +You need to use this information to configure the `mic` and `speaker` configuration options. The format is `,`. On a Raspberry Pi 3, `0,0` is the built-in headset port, `0,1` is the HDMI port. + +Now that you've found the microphone and speaker addresses, it's time to configure Snips and restart the add-on. + +### Add-On configuration + +```json +{ + "mic": "1,0", + "speaker": "1,0", + "assistant": "assistant.zip", + "mqtt_bridge": { + "active": true, + "host": "172.17.0.1", + "port": 1883, + "user": "", + "password": "" + }, +} +``` + +Configuration variables: + +- **mqtt_bridge** (*Optional*): Snips uses MQTT to communicate and defaults to their own broker. Use this config option to bridge their broker to your own. +- **mic**: This is the hardware address of your microphone. Look at the Snips + +### {% linkable_title Home Assistant configuration %} + +Use the Home Assistant [Snips.ai component][comp] to integrate the add-on into Home Assistant. + +```yaml +snips: +``` + +[Snips.ai]: https://snips.ai/ +[their tutorial]: https://github.com/snipsco/snips-platform-documentation/wiki/2.-Running-your-first-end-to-end-assistant +[Samba]: /addons/samba/ +[comp]: /components/snips/ diff --git a/source/_addons/ssh.markdown b/source/_addons/ssh.markdown index 710521d675b..280cf6ae914 100644 --- a/source/_addons/ssh.markdown +++ b/source/_addons/ssh.markdown @@ -1,7 +1,7 @@ --- layout: page title: "SSH Server" -description: "Allow logging in remotely to your server using SSH." +description: "Allow logging in remotely to Hass.io using SSH." date: 2017-04-30 13:28 sidebar: true comments: false @@ -9,7 +9,11 @@ sharing: true footer: true --- -Setting up an [SSH](https://openssh.org/) server allows access to your Hass.io folders with any SSH client. To use this add-on, you must have a private/public key to log in. To generate them, follow the [instructions for Windows][win] and [these for other platforms][other]. +Setting up an [SSH](https://openssh.org/) server allows access to your Hass.io folders with any SSH client. + +

This add-on will not enable you to install packages or do anything as root. This is not allowed with Hass.io.

+ +To use this add-on, you must have a private/public key to log in. To generate them, follow the [instructions for Windows][win] and [these for other platforms][other]. ```json { @@ -26,21 +30,4 @@ Configuration variables: [win]: https://www.digitalocean.com/community/tutorials/how-to-create-ssh-keys-with-putty-to-connect-to-a-vps [other]: https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/ -

-This add-on is not compatible when you installed Hass.io via the generic Linux installer. - -If you're coming from Rasbian or similar, use `root` rather than `pi` when connecting via ssh or else you will get this error. - -```bash -Permission denied (publickey,keyboard-interactive) -``` -

- -

-If you install this addon you can use `sshfs` as well to access files from a remote system where you have git and your favourite editing tools installed. - -```bash -$ mkdir ~/ha_config -$ sshfs -o allow_other,defer_permissions root@h[your_hassio_ip]:/config ~/ha_config -``` -

+

This add-on is not compatible when you installed Hass.io via the generic Linux installer.

diff --git a/source/_components/feedreader.markdown b/source/_components/feedreader.markdown index efaee1fb50a..fbd68c63e5d 100644 --- a/source/_components/feedreader.markdown +++ b/source/_components/feedreader.markdown @@ -22,6 +22,7 @@ feedreader: urls: - https://home-assistant.io/atom.xml - https://github.com/blog.atom + - https://hasspodcast.io/feed/podcast ``` Configuration variables: @@ -48,13 +49,17 @@ automation: platform: event event_type: feedreader action: - service: notify.notify - data_template: "{{ trigger.event.data.title }}" + service: persistent_notification.create + data_template: + title: "New HA Podcast available" + message: "New Podcast available - {{ as_timestamp(now()) | timestamp_custom('%I:%M:%S %p %d%b%Y', true) }}" + notification_id: "{{ trigger.event.data.title }}" ``` *Any field under the `` tag in the feed can be used for example `trigger.event.data.content` will get the body of the feed entry. For more advanced use cases, a custom component registering to the `feedreader` event type could be used instead: +For a drop in packaged complete example of Feedreader, you can use the [PodCast notifier](https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/packages/hasspodcast.yaml). ```python EVENT_FEEDREADER = "feedreader" diff --git a/source/_components/lametric.markdown b/source/_components/lametric.markdown new file mode 100644 index 00000000000..36d6b6d4868 --- /dev/null +++ b/source/_components/lametric.markdown @@ -0,0 +1,19 @@ +--- +layout: page +title: "LaMetric" +description: "Instructions on how to integrate LaMetric with Home Assistant." +date: 2017-04-02 13:28 +sidebar: true +comments: false +sharing: true +footer: true +ha_category: Hub +ha_release: 0.49 +--- + +```yaml +# configuration.yaml example +lametric: + client_id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx + client_secret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx +``` diff --git a/source/_components/media_player.aquostv.markdown b/source/_components/media_player.aquostv.markdown index e6f48815641..2c764f46873 100644 --- a/source/_components/media_player.aquostv.markdown +++ b/source/_components/media_player.aquostv.markdown @@ -29,10 +29,10 @@ media_player: Configuration variables: -- **host** (*Required*): The IP/Hostname of the Samsung Smart TV, eg. `192.168.0.10`. -- **port** (*Optional*): The port of the Samsung Smart TV. Defaults to 10002. -- **username** (*Optional*): The username of the Samsung Smart TV. Defaults to admin. -- **password** (*Optional*): The password of the Samsung Smart TV. Defaults to password. +- **host** (*Required*): The IP/Hostname of the Sharp Aquos TV, eg. `192.168.0.10`. +- **port** (*Optional*): The port of the Sharp Aquos TV. Defaults to 10002. +- **username** (*Optional*): The username of the Sharp Aquos TV. Defaults to admin. +- **password** (*Optional*): The password of the Sharp Aquos TV. Defaults to password. - **name** (*Optional*): The name you would like to give to the Sharp Aquos TV. - **power_on_enabled** (*Optional*): If you want to be able to turn on your TV. Defaults to False. diff --git a/source/_components/notify.lametric.markdown b/source/_components/notify.lametric.markdown new file mode 100644 index 00000000000..70ad2a4cdc0 --- /dev/null +++ b/source/_components/notify.lametric.markdown @@ -0,0 +1,20 @@ +--- +layout: page +title: "LaMetric Notify" +description: "Instructions on how to setup the LaMetric notify platform with Home Assistant." +date: 2017-04-02 13:28 +sidebar: true +comments: false +sharing: true +footer: true +ha_category: Notify +ha_release: 0.49 +--- + +```yaml +notify: + name: lametric1 + platform: lametric + display_time: 20 + icon: i555 +``` diff --git a/source/_components/rest_command.markdown b/source/_components/rest_command.markdown index fc447a08581..c01e8ce94ab 100644 --- a/source/_components/rest_command.markdown +++ b/source/_components/rest_command.markdown @@ -29,7 +29,7 @@ rest_command: Configuration variables: -- **[service_name]** (*Required*): The name used to expose the service. E.g. in the above example would it be ` rest_command.example_request`. +- **[service_name]** (*Required*): The name used to expose the service. E.g., in the above example, it would be `rest_command.example_request`. - **url** (*Required*): The URL (support template) for sending request. - **method** (*Optional*): HTTP method to use (`get`, `post`, `put`, or `delete`). Defaults to `get`. - **payload** (*Optional*): A string/template to send with request. @@ -39,4 +39,3 @@ Configuration variables: - **content_type** (*Optional*): Content type for the request. The commands can be dynamic, using templates to insert values of other entities. Service call support variables for template stuff. - diff --git a/source/_components/sensor.command_line.markdown b/source/_components/sensor.command_line.markdown index ba1bee321aa..6bf2172cfcb 100644 --- a/source/_components/sensor.command_line.markdown +++ b/source/_components/sensor.command_line.markdown @@ -53,6 +53,7 @@ sensor: - platform: command_line name: HD Temperature command: "hddtemp -n /dev/sda" + # If errors occur, remove degree symbol below unit_of_measurement: "°C" ``` @@ -65,6 +66,7 @@ Thanks to the [`proc`](https://en.wikipedia.org/wiki/Procfs) file system, variou - platform: command_line name: CPU Temperature command: "cat /sys/class/thermal/thermal_zone0/temp" + # If errors occur, remove degree symbol below unit_of_measurement: "°C" value_template: '{% raw %}{{ value | multiply(0.001) }}{% endraw %}' ``` diff --git a/source/_components/sensor.darksky.markdown b/source/_components/sensor.darksky.markdown index 1fd1ec5bcc3..a070d2b6783 100644 --- a/source/_components/sensor.darksky.markdown +++ b/source/_components/sensor.darksky.markdown @@ -68,7 +68,7 @@ Configuration variables: - **precip_intensity_max**: Today's expected maximum intensity of precipitation. - **units** (*Optional*): Specify the unit system. Default to `si` or `us` based on the temperature preference in Home Assistant. Other options are `auto`, `us`, `si`, `ca`, and `uk2`. `auto` will let Dark Sky decide the unit system based on location. -- **update_inverval** (*Optional*): Minimum time interval between updates. Default is 2 minutes. Supported formats: +- **update_interval** (*Optional*): Minimum time interval between updates. Default is 2 minutes. Supported formats: - `update_interval: 'HH:MM:SS'` - `update_interval: 'HH:MM'` - Time period dictionary, e.g.: diff --git a/source/_components/sensor.dht.markdown b/source/_components/sensor.dht.markdown index b807d14d6ea..fd187c67948 100644 --- a/source/_components/sensor.dht.markdown +++ b/source/_components/sensor.dht.markdown @@ -31,10 +31,27 @@ sensor: Configuration variables: -- **sensor** (*Required*): The sensor type, supported devices are DHT11, DHT22, and AM2302 +- **sensor** (*Required*): The sensor type, supported devices are DHT11, DHT22, and AM2302. - **pin** (*Required*): The pin the sensor is connected to. -- **name** (*Optional*): The name of the sensor -- **monitored_conditions** array (*Required*): Conditions to monitor. Available conditions are only *temperature* and *humidity*. +- **name** (*Optional*): The name of the sensor. +- **monitored_conditions** array (*Required*): Conditions to monitor. Available conditions are only *temperature* and *humidity*. +- **temperature_offset** (*Optional*): Add or subtract a value from the temperature. +- **humidity_offset** (*Optional*): Add or subtract a value from the humidity. The name of the pin to which the sensor is connected has different names on different platforms. 'P8_11' for Beaglebone, '23' for Raspberry Pi. +### {% linkable_title Example %} + +An example for a Raspberry Pi 3 with a DHT22 sensor connected to GPIO4 (pin 7): + +```yaml +sensor: + - platform: dht + sensor: DHT22 + pin: 4 + temperature_offset: 2.1 + humidity_offset: -3.2 + monitored_conditions: + - temperature + - humidity +``` diff --git a/source/_components/snips.markdown b/source/_components/snips.markdown index 63e8009af48..181431a886c 100644 --- a/source/_components/snips.markdown +++ b/source/_components/snips.markdown @@ -69,15 +69,36 @@ followed by a command, e.g. We should see the transcribed phrase in the logs, as well as a properly parsed intent. The intent is published on MQTT, on the `hermes/nlu/intentParsed` topic. The Snips Home Assistant component subscribes to this topic, and handles the intent according to the rules defined in `configuration.yaml`, as explained below. +#### Optional: specifying an external MQTT broker + +By default, Snips runs its own MQTT broker. But we can also tell Snips to use an external broker by specifying this when launching Snips. In this case, instead of running the `snips` command above (which assumes we are using the internal MQTT broker), we use the full launch command with explicitly specified parameters (replace `MQTT_BROKER_IP` and `MQTT_BROKER_PORT` with appropriate values): + +```sh +$ docker run -t --rm --name snips --log-driver none -v /home/pi/.asoundrc:/root/.asoundrc -v /opt/snips/config:/opt/snips/config --privileged -v /dev/snd:/dev/snd snipsdocker/platform --mqtt MQTT_BROKER_IP:MQTT_BROKER_PORT +``` + +For more details on launch options, check the documentation on [Snips Platform Commands](https://github.com/snipsco/snips-platform-documentation/wiki/6.--Learn-more:-Platform-Commands#using-a-custom-mqtt-bus). + ## Home Assistant configuration -By default, the Snips MQTT broker runs on port 9898. We should tell Home Assistant to use this as a broker, rather than its own, by adding the following section to `configuration.yaml`: +### Specifying the MQTT broker + +Messages between Snips and Home Assistant are passed via MQTT. We must tell Home Assistant which MQTT broker to use by adding the following entry to `configuration.yaml`: + +```yaml +mqtt: + broker: MQTT_BROKER_IP + port: MQTT_BROKER_PORT +``` + +As explained above, Snips by default runs an MQTT broker on port 9898. So if we wish to use this broker, the entry will look as follows: ```yaml mqtt: broker: 127.0.0.1 port: 9898 ``` +### Triggering actions In Home Assistant, we trigger actions based on intents produced by Snips. This is done in `configuration.yaml`. For instance, the following block handles `ActivateLightColors` intents (included in the Snips IoT intent bundle) to change light colors: diff --git a/source/_docs/automation/troubleshooting.markdown b/source/_docs/automation/troubleshooting.markdown index 5207175e258..86cf9c9e479 100644 --- a/source/_docs/automation/troubleshooting.markdown +++ b/source/_docs/automation/troubleshooting.markdown @@ -12,7 +12,7 @@ redirect_from: /getting-started/automation-troubleshooting/ You can verify that your automation rules are being initialized correctly by watching both the realtime logs (`homeassistant.log` in the configuration directory) and also the [Logbook](/components/logbook/). The realtime logs will show the rules being initialized (once for each trigger), example: -```plain +```text INFO [homeassistant.components.automation] Initialized rule Rainy Day INFO [homeassistant.components.automation] Initialized rule Rainy Day INFO [homeassistant.components.automation] Initialized rule Rainy Day diff --git a/source/_docs/hassbian/installation.markdown b/source/_docs/hassbian/installation.markdown index 454122ae2ed..cf39fde867e 100644 --- a/source/_docs/hassbian/installation.markdown +++ b/source/_docs/hassbian/installation.markdown @@ -14,7 +14,7 @@ The easiest way to install Home Assistant on your Raspberry Pi is by using HASSb 1. [Download the Hassbian image][image-download] (364 MB) 2. Use [Etcher][etcher] to flash the image to your SD card - 3. Ensure your Raspberry Pi has wired access to the internet. + 3. Ensure your Raspberry Pi has wired access to the internet for the entire process. 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). Additional information is available in this [video](https://www.youtube.com/watch?v=tCGlQSsQ-Mc). diff --git a/source/_docs/installation/fedora.markdown b/source/_docs/installation/fedora.markdown index de30c165722..bbb74f3f001 100644 --- a/source/_docs/installation/fedora.markdown +++ b/source/_docs/installation/fedora.markdown @@ -33,7 +33,7 @@ Now switch to the new directory, setup the venv, and activate it. ```bash $ cd /opt/homeassistant -$ pyvenv-3.5 . +$ python3.6 -m venv . $ source bin/activate ``` diff --git a/source/_docs/scripts.markdown b/source/_docs/scripts.markdown index 1c6d9e8fbf5..d6d8ed508f5 100644 --- a/source/_docs/scripts.markdown +++ b/source/_docs/scripts.markdown @@ -77,7 +77,7 @@ delay: {% raw %}'00:{{ states.input_slider.minute_delay.state | int }}:00'{% end ``` ### {% linkable_title Wait %} -Wait until some things are complete. We support at the moment `wait_template` for waiting until a condition is `true`, see also on [Template-Trigger](/getting-started/automation-trigger/#template-trigger). It is possible to set a timeout after that will the script abort his execution. Timeout have same syntax as `delay`. +Wait until some things are complete. We support at the moment `wait_template` for waiting until a condition is `true`, see also on [Template-Trigger](/getting-started/automation-trigger/#template-trigger). The Timeout has same syntax as `delay`. If you set a Timeout for 1 minute and the condition is not satified within that minute, the script will continue. ```yaml # wait until media player have stop the playing diff --git a/source/_includes/asides/developers_navigation.html b/source/_includes/asides/developers_navigation.html index 7a595c2da4d..d60e6ce1674 100644 --- a/source/_includes/asides/developers_navigation.html +++ b/source/_includes/asides/developers_navigation.html @@ -34,7 +34,7 @@
  • - {% active_link /developers/add_new_platform/ Support a new device (as a platform) %} + {% active_link /developers/add_new_platform/ Creating a new platform (to support a new device) %}
    • {% active_link /developers/code_review_platform/ Checklist creating a platform %}
    • {% active_link /developers/platform_example_sensor/ Example sensor platform %}
    • @@ -72,13 +72,29 @@
    • {% active_link /developers/frontend_creating_custom_ui/ Add Custom UI %}
  • +
  • + {% active_link /developers/hassio/architecture/ Hass.io architecture %} +
      +
    • {% active_link /developers/hassio/debugging/ Debugging Hass.io %}
    • +
    +
  • +
  • + {% active_link /developers/hassio/addon_development/ Hass.io Add-on Development %} +
      +
    • {% active_link /developers/hassio/addon_tutorial/ Tutorial: Making your first add-on %}
    • +
    • {% active_link /developers/hassio/addon_config/ Configuration %}
    • +
    • {% active_link /developers/hassio/addon_testing/ Local Testing %}
    • +
    • {% active_link /developers/hassio/addon_publishing/ Publishing %}
    • +
    • {% active_link /developers/hassio/addon_repository/ Repositories %}
    • +
    +
  • {% active_link /developers/api/ API %}
      -
    • {% active_link https://dev-docs.home-assistant.io/en/dev/ Home Assistant API %}
    • +
    • {% active_link https://dev-docs.home-assistant.io/en/dev/ Python API %}
    • {% active_link /developers/websocket_api/ Websocket API %}
    • -
    • {% active_link /developers/rest_api/ RESTful API %}
    • -
    • {% active_link /developers/python_api/ Python API %}
    • +
    • {% active_link /developers/rest_api/ REST API %}
    • +
    • {% active_link /developers/python_api/ Python REST API %}
    • {% active_link /developers/server_sent_events/ Server-sent events %}
  • diff --git a/source/_includes/asides/hassio_navigation.html b/source/_includes/asides/hassio_navigation.html index a8a24708657..d29e2ac6089 100644 --- a/source/_includes/asides/hassio_navigation.html +++ b/source/_includes/asides/hassio_navigation.html @@ -8,24 +8,21 @@
  • {% active_link /hassio/installation/ Installation %}
  • {% active_link /addons/ Available add-ons %}
  • {% active_link /hassio/installing_third_party_addons/ Installing third-party add-ons %}
  • -
  • {% active_link /hassio/external_storage/ External storage %}
  • -
  • {% active_link /hassio/run_local/ Execute local things %}
  • -
  • {% active_link /hassio/architecture/ Architecture %}
  • + diff --git a/source/_posts/2017-07-16-release-49.markdown b/source/_posts/2017-07-16-release-49.markdown new file mode 100644 index 00000000000..821b818fa6b --- /dev/null +++ b/source/_posts/2017-07-16-release-49.markdown @@ -0,0 +1,462 @@ +--- +layout: post +title: "0.49: Themes 🎨, kiosk mode and Prometheus.io" +description: "Style the frontend the way you want it and present it in Kiosk mode without tabs." +date: 2017-07-15 00:02:05 +0000 +date_formatted: "July 15, 2017" +author: Paulus Schoutsen +author_twitter: balloob +comments: true +categories: Release-Notes +og_image: /images/blog/2017-07-0.49/components.png +--- + + + +# {% linkable_title WE HAVE THEMES 🎨👩‍🎨 %} + +Our already amazing frontend just got even more amazing thanks to [@andrey-git]. With the new theme support you can be in control of the primary color, accent color and a whole bunch more. + +You can specify themes using new configuration options under frontend. + +```yaml +frontend: + themes: + green: + primary-color: #6ca518; +``` + +Once a theme is defined, use the new frontend service `frontend.set_theme` to activate it. More information in [the docs][frontend docs]. + +

    +Screenshot of a green dashboard +Screenshot of a green dashboard +

    + +Not all parts of the user interface are themable yet. Expect improvements in future releases. + +## {% linkable_title Kiosk mode %} + +Another great new improvement for the frontend is the addition of a kiosk mode. When the frontend is viewed in kiosk mode, the tab bar will be hidden. + +To activate kiosk mode, navigate to `https://hass.example.com:8123/kiosk/group.living_room_view`. Note that for `default_view` the url is just `https://hass.example.com:8123/kiosk` + +This feature has also been brought to you by [@Andrey-git]! Big shout out to him for his continuous efforts to bring Home Assistant to the next level. + +## {% linkable_title New Platforms %} + +- Add london_underground ([@robmarkcole] - [#8272]) ([sensor.london_underground docs]) (new-platform) +- Add citybikes platform ([@aronsky] - [#8202]) ([sensor.citybikes docs]) (new-platform) +- Add One-Time Password sensor (OTP) ([@postlund] - [#8332]) ([sensor.otp docs]) (new-platform) +- Add component for xiaomi robot vacuum (switch.xiaomi_vacuum) ([@rytilahti] - [#7913]) ([switch.xiaomi_vacuum docs]) (new-platform) +- LaMetric platform and notify module ([@open-homeautomation] - [#8230]) ([lametric docs]) ([notify.lametric docs]) (new-platform) +- New component to connect to VELUX KLF 200 Interface ([@Julius2342] - [#8203]) ([velux docs]) ([scene.velux docs]) (new-platform) +- New service `send_magic_packet` with new component `wake_on_lan` ([@azogue] - [#8397]) ([wake_on_lan docs]) (new-platform) +- Add support for Prometheus ([@rcloran] - [#8211]) ([prometheus docs]) (new-platform) +- Refactored Amcrest to use central hub component ([@tchellomello] - [#8184]) ([amcrest docs]) ([camera.amcrest docs]) ([sensor.amcrest docs]) (breaking change) (new-platform) +- Added media_extractor service ([@minchik] - [#8369]) ([media_extractor docs]) (new-platform) +- Vizio SmartCast support ([@vkorn] - [#8260]) ([media_player.vizio docs]) (new-platform) + +## {% linkable_title If you need help... %} +...don't hesitate to use our very active [forums][forum] or join us for a little [chat][discord]. The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks. + +## {% linkable_title Reporting Issues %} +Experiencing issues introduced by this release? Please report them in our [issue tracker][issue]. Make sure to fill in all fields of the issue template. + + +## {% linkable_title Breaking Changes %} + +- UPC Connect component no longer needs a password passed into the configuration. ([@Flavien] - [#8335]) ([device_tracker.upc_connect docs]) (breaking change) +- The Apple TV platform has been upgraded to a component and a remote platform has been added. This requires your Apple TV configuration to be moved to the new `apple_tv` component. ([@postlund] - [#8122]) ([media_player.apple_tv docs]) (breaking change) + +```yaml +apple_tv: + - name: Apple TV + host: 10.0.10.20 + login_id: 00000000-1234-5678-9012-345678901234 + start_off: true + credentials: 8660DEA5154FB46B:20B94847926112B3F46F85DB3A7311830463BF65570C22C3786E27F38C3326CF +``` + +- Refactored Amcrest to use central hub component to prepare for future integrations. This requires your Amcrest configuration to be moved to the new `amcrest` component. ([@tchellomello] - [#8184]) ([amcrest docs]) ([camera.amcrest docs]) ([sensor.amcrest docs]) (breaking change) (new-platform) + +```yaml +amcrest: + - host: !secret amcrest_living + name: "Living Room" + username: !secret amcrest_living_username + password: !secret amcrest_living_password + resolution: low + stream_source: snapshot + sensors: + - motion_detector + - ptz_preset +``` + +## {% linkable_title All changes %} + +- Version bump to 0.49.0.dev0 ([@fabaff] - [#8266]) +- Upgrade pyowm to 2.7.1 ([@fabaff] - [#8274]) ([sensor.openweathermap docs]) ([weather.openweathermap docs]) +- Don't call update() in constructor ([@fabaff] - [#8276]) ([sensor.openweathermap docs]) +- Update apcaccess to 0.0.13. Add "Percent Load Capacity" to INFERRED_UNITS. ([@michaelarnauts] - [#8277]) ([apcupsd docs]) ([sensor.apcupsd docs]) +- Update knxip to 0.4 (better handling of reconnects) ([@open-homeautomation] - [#8289]) ([knx docs]) +- Add london_underground ([@robmarkcole] - [#8272]) ([sensor.london_underground docs]) (new-platform) +- pytado moved to pypi ([@wmalgadey] - [#8298]) ([tado docs]) ([climate.tado docs]) +- Fix doc link in header ([@robmarkcole] - [#8305]) ([sensor.london_underground docs]) +- Upgrade discord.py to 0.16.8 ([@fabaff] - [#8304]) ([notify.discord docs]) +- zha: Strip whitespace from device names ([@rcloran] - [#8306]) ([zha docs]) +- Upgrade chardet to 3.0.4 ([@fabaff] - [#8313]) +- Upgrade aiohttp to 2.2.2 ([@fabaff] - [#8314]) +- Fix pylint issue ([@fabaff] - [#8325]) ([snips docs]) +- vsure 1.3.7 ([@persandstrom] - [#8321]) ([verisure docs]) +- Update pyEmby to fix media images ([@mezz64] - [#8331]) ([media_player.emby docs]) +- Partially revert #7931 ([@fabaff] - [#8326]) ([sensor.yweather docs]) +- Only allow 'tls_insecure_set()' if cert is present (fixes #8329) ([@fabaff] - [#8337]) ([mqtt docs]) +- Fix issue #8285 ([@Sabesto] - [#8340]) ([modbus docs]) ([binary_sensor.modbus docs]) ([climate.flexit docs]) ([sensor.modbus docs]) ([switch.modbus docs]) +- Bump dlib face_recognition to 0.2.0 ([@pvizeli] - [#8345]) ([image_processing.dlib_face_detect docs]) ([image_processing.dlib_face_identify docs]) +- Update Avion and Decora switches to match upstream changes ([@mjg59] - [#7903]) ([light.avion docs]) ([light.decora docs]) +- Fix the "302" error in the UPC Connect component and remove the need to specify the router password ([@Flavien] - [#8335]) ([device_tracker.upc_connect docs]) (breaking change) +- Add new feature to Apple TV platform ([@postlund] - [#8122]) ([media_player.apple_tv docs]) (breaking change) +- Add citybikes platform ([@aronsky] - [#8202]) ([sensor.citybikes docs]) (new-platform) +- Fix some issues for PyLint 1.7.2 ([@balloob] - [#8356]) +- Fix pylint 1.7.2 no-else-return issues ([@balloob] - [#8361]) +- Upgrade aiohttp to 2.2.3 ([@fabaff] - [#8363]) +- Remove some more usage of run_in_executor ([@balloob] - [#8352]) +- Correct spelling of aliases, deprecate old config options. ([@aequitas] - [#8348]) ([rflink docs]) ([light.rflink docs]) ([sensor.rflink docs]) ([switch.rflink docs]) +- Allow Pilight Binary Sensor to control reset_delay_sec through configuration ([@clarkewd] - [#8358]) ([binary_sensor.pilight docs]) +- Mqtt client_id fix for #8315 ([@heinemml] - [#8366]) ([mqtt docs]) +- Allow all panel urls ([@balloob] - [#8368]) +- Update pyHik to catch XML errors ([@mezz64] - [#8384]) ([binary_sensor.hikvision docs]) +- update version ([@wardcraigj] - [#8380]) ([alarm_control_panel.totalconnect docs]) +- Add One-Time Password sensor (OTP) ([@postlund] - [#8332]) ([sensor.otp docs]) (new-platform) +- buienradar==0.7, fix winddirection/azimuth, logging ([@mjj4791] - [#8281]) ([sensor.buienradar docs]) ([weather.buienradar docs]) +- Add component for xiaomi robot vacuum (switch.xiaomi_vacuum) ([@rytilahti] - [#7913]) ([switch.xiaomi_vacuum docs]) (new-platform) +- Try catch around database updates in recorder. Resolves 6919 ([@mitchese] - [#8349]) ([recorder docs]) +- Fix Amazon Polly with non english voices. #8377 ([@CharlesBlonde] - [#8378]) ([tts.amazon_polly docs]) +- Fix TTS options. #8375 ([@CharlesBlonde] - [#8376]) ([tts docs]) +- Add address-specific KNX listeners that fire events on the HASS bus ([@open-homeautomation] - [#8374]) ([knx docs]) +- GTFS: check start/end date on services ([@Kernald] - [#8373]) ([sensor.gtfs docs]) +- Implement KNX dimming functionality ([@open-homeautomation] - [#8371]) ([light.knx docs]) +- Add Soundtouch support for playing an HTTP url ([@CharlesBlonde] - [#8370]) ([media_player.soundtouch docs]) +- Modbus fixes to work with pymodbus 1.3.1 ([@Sabesto] - [#8365]) ([modbus docs]) ([binary_sensor.modbus docs]) ([sensor.modbus docs]) ([switch.modbus docs]) +- Cleanup the asuswrt component ([@mattsch] - [#8359]) ([device_tracker.asuswrt docs]) +- cover_template:i open/close/stop actions no longer required. Improve tests ([@PhracturedBlue] - [#8344]) ([cover.template docs]) +- Prevent errors on Octoprint sensors and binary_sensors when Octoprint and/or Printer are off ([@w1ll1am23] - [#8343]) ([octoprint docs]) ([binary_sensor.octoprint docs]) ([sensor.octoprint docs]) +- Presence detection for tp link eap225 ([@alexrockt] - [#8322]) ([device_tracker.tplink docs]) +- zha light: Refresh at startup ([@rcloran] - [#8310]) ([light.zha docs]) +- zha: Try multiple reads to get manufacturer/model ([@rcloran] - [#8308]) ([zha docs]) +- Upnp mapping notification ([@dgomes] - [#8303]) ([upnp docs]) +- Use user-set device names for Linksys Smart Wi-Fi routers (3) ([@Klikini] - [#8300]) ([device_tracker.linksys_smart docs]) +- Added support for upload of remote or local files to slack ([@simaosimao] - [#8278]) ([notify.slack docs]) +- Update avion.py ([@pvizeli] - [#8364]) ([light.avion docs]) +- LaMetric platform and notify module ([@open-homeautomation] - [#8230]) ([lametric docs]) ([notify.lametric docs]) (new-platform) +- Sets spotify media_type to music ([@Tommatheussen] - [#8387]) ([media_player.spotify docs]) +- Update waqi sensor ([@andrey-git] - [#8385]) ([sensor.waqi docs]) +- Update aiolifx ([@amelchio] - [#8396]) ([light.lifx docs]) +- Code owners ([@balloob] - [#8393]) +- Add new Dyson sensors ([@CharlesBlonde] - [#8199]) ([dyson docs]) ([fan.dyson docs]) ([sensor.dyson docs]) +- Fix CODEOWNERS z-wave team name ([@armills] - [#8400]) +- Upgrade Sphinx to 1.6.3 ([@fabaff] - [#8405]) +- Use upstream RachioPy, fix manual run switches ([@Klikini] - [#8286]) ([switch.rachio docs]) +- Marrantz SR5006 & SR5006 treated as AVR-X device | Fixed Mapping of Media Player and AUX input functions ([@scarface-4711] - [#8409]) ([media_player.denonavr docs]) +- New component to connect to VELUX KLF 200 Interface ([@Julius2342] - [#8203]) ([velux docs]) ([scene.velux docs]) (new-platform) +- Properly handle the case when a group includes itself. ([@andrey-git] - [#8398]) ([group docs]) +- Add set_operation_mode support to generic_thermostat ([@mtreinish] - [#8392]) ([climate.generic_thermostat docs]) +- Make gzips reproducible by excluding timestamp ([@armills] - [#8420]) +- Do not overwrite a custom hyperion light name with the hostname of the server. ([@doctorjames] - [#8391]) ([light.hyperion docs]) +- Fixed link to documentation ([@Julius2342] - [#8424]) ([velux docs]) ([scene.velux docs]) +- Fix KeyError (fixes #3721, fixes #7241) ([@fabaff] - [#8428]) ([sensor.uber docs]) +- Use HA lat/long for the start (fixes #3971) ([@fabaff] - [#8429]) ([sensor.uber docs]) +- bump python-mirobo requirement to support newer firmwares and more ([@rytilahti] - [#8431]) ([switch.xiaomi_vacuum docs]) +- New service `send_magic_packet` with new component `wake_on_lan` ([@azogue] - [#8397]) ([wake_on_lan docs]) (new-platform) +- Integrate utility functions into restricted Python environment ([@open-homeautomation] - [#8427]) ([python_script docs]) +- Allow Twitter notifications to include media ([@MikeChristianson] - [#8282]) ([notify docs]) ([notify.twitter docs]) +- Fix typo (sending USERNAME instead of PASSWORD) introduced in #7963 ([@thecynic] - [#8433]) ([lutron docs]) +- zha: Handle both input and output clusters ([@rcloran] - [#8410]) ([zha docs]) ([binary_sensor.zha docs]) ([light.zha docs]) ([sensor.zha docs]) +- Add support for Prometheus ([@rcloran] - [#8211]) ([prometheus docs]) (new-platform) +- Refactored Amcrest to use central hub component ([@tchellomello] - [#8184]) ([amcrest docs]) ([camera.amcrest docs]) ([sensor.amcrest docs]) (breaking change) (new-platform) +- Fix radiothermostat -1 value issue ([@aneisch] - [#8395]) ([climate.radiotherm docs]) +- Added media_extractor service ([@minchik] - [#8369]) ([media_extractor docs]) (new-platform) +- Updated pyvera ([@alanfischer] - [#8437]) ([vera docs]) +- Upgrade phue to 1.0 (fixes #7749) ([@fabaff] - [#8444]) ([light.hue docs]) +- Add effects ([@fabaff] - [#8442]) ([light.mystrom docs]) +- Exclude 'TAXI' product (fixes #8401) ([@fabaff] - [#8438]) ([sensor.uber docs]) +- Switch pyW215 to pypi ([@andrey-git] - [#8445]) ([switch.dlink docs]) +- Vizio SmartCast support ([@vkorn] - [#8260]) ([media_player.vizio docs]) (new-platform) +- DHT support for humidity and temperature offset ([@gitmopp] - [#8238]) ([sensor.dht docs]) +- Add support for rain and moisture sensors ([@sdague] - [#8440]) ([sensor.arwn docs]) +- Hass.io: Disable timeout when updating OS/supervisor/hass ([@balloob] - [#8447]) ([hassio docs]) +- Fix Arlo Q not working with 0.48.1 ([@viswa-swami] - [#8446]) ([camera.arlo docs]) +- Support for Plex servers with enforced SSL ([@nmaggioni] - [#8341]) ([media_player.plex docs]) +- Upgrade youtube_dl to 2017.7.9 ([@fabaff] - [#8450]) ([media_extractor docs]) +- Implement a bridge between HASS event bus and KNX bus to send events ([@open-homeautomation] - [#8449]) ([knx docs]) +- LIFX: improve light availability ([@amelchio] - [#8451]) ([light.lifx docs]) +- LIFX: make broadcast address configurable ([@amelchio] - [#8453]) ([light.lifx docs]) +- Backend support for themes ([@andrey-git] - [#8419]) +- upgrade broadlink ([@danielhiversen] - [#8462]) ([sensor.broadlink docs]) ([switch.broadlink docs]) +- upgrade rfxtrx lib ([@danielhiversen] - [#8463]) ([rfxtrx docs]) +- Plex: Add exception handler when connection fails ([@abmantis] - [#8179]) ([media_player.plex docs]) +- HomeMatic dependency upgrade + IP Wall Thermostat support ([@danielperna84] - [#8465]) ([homematic docs]) +- Add kiosk-mode panel ([@andrey-git] - [#8457]) + +[#7903]: https://github.com/home-assistant/home-assistant/pull/7903 +[#7913]: https://github.com/home-assistant/home-assistant/pull/7913 +[#8122]: https://github.com/home-assistant/home-assistant/pull/8122 +[#8179]: https://github.com/home-assistant/home-assistant/pull/8179 +[#8184]: https://github.com/home-assistant/home-assistant/pull/8184 +[#8199]: https://github.com/home-assistant/home-assistant/pull/8199 +[#8202]: https://github.com/home-assistant/home-assistant/pull/8202 +[#8203]: https://github.com/home-assistant/home-assistant/pull/8203 +[#8211]: https://github.com/home-assistant/home-assistant/pull/8211 +[#8230]: https://github.com/home-assistant/home-assistant/pull/8230 +[#8238]: https://github.com/home-assistant/home-assistant/pull/8238 +[#8260]: https://github.com/home-assistant/home-assistant/pull/8260 +[#8266]: https://github.com/home-assistant/home-assistant/pull/8266 +[#8272]: https://github.com/home-assistant/home-assistant/pull/8272 +[#8274]: https://github.com/home-assistant/home-assistant/pull/8274 +[#8276]: https://github.com/home-assistant/home-assistant/pull/8276 +[#8277]: https://github.com/home-assistant/home-assistant/pull/8277 +[#8278]: https://github.com/home-assistant/home-assistant/pull/8278 +[#8281]: https://github.com/home-assistant/home-assistant/pull/8281 +[#8282]: https://github.com/home-assistant/home-assistant/pull/8282 +[#8286]: https://github.com/home-assistant/home-assistant/pull/8286 +[#8289]: https://github.com/home-assistant/home-assistant/pull/8289 +[#8298]: https://github.com/home-assistant/home-assistant/pull/8298 +[#8300]: https://github.com/home-assistant/home-assistant/pull/8300 +[#8303]: https://github.com/home-assistant/home-assistant/pull/8303 +[#8304]: https://github.com/home-assistant/home-assistant/pull/8304 +[#8305]: https://github.com/home-assistant/home-assistant/pull/8305 +[#8306]: https://github.com/home-assistant/home-assistant/pull/8306 +[#8308]: https://github.com/home-assistant/home-assistant/pull/8308 +[#8310]: https://github.com/home-assistant/home-assistant/pull/8310 +[#8313]: https://github.com/home-assistant/home-assistant/pull/8313 +[#8314]: https://github.com/home-assistant/home-assistant/pull/8314 +[#8321]: https://github.com/home-assistant/home-assistant/pull/8321 +[#8322]: https://github.com/home-assistant/home-assistant/pull/8322 +[#8325]: https://github.com/home-assistant/home-assistant/pull/8325 +[#8326]: https://github.com/home-assistant/home-assistant/pull/8326 +[#8331]: https://github.com/home-assistant/home-assistant/pull/8331 +[#8332]: https://github.com/home-assistant/home-assistant/pull/8332 +[#8335]: https://github.com/home-assistant/home-assistant/pull/8335 +[#8337]: https://github.com/home-assistant/home-assistant/pull/8337 +[#8340]: https://github.com/home-assistant/home-assistant/pull/8340 +[#8341]: https://github.com/home-assistant/home-assistant/pull/8341 +[#8343]: https://github.com/home-assistant/home-assistant/pull/8343 +[#8344]: https://github.com/home-assistant/home-assistant/pull/8344 +[#8345]: https://github.com/home-assistant/home-assistant/pull/8345 +[#8348]: https://github.com/home-assistant/home-assistant/pull/8348 +[#8349]: https://github.com/home-assistant/home-assistant/pull/8349 +[#8352]: https://github.com/home-assistant/home-assistant/pull/8352 +[#8356]: https://github.com/home-assistant/home-assistant/pull/8356 +[#8358]: https://github.com/home-assistant/home-assistant/pull/8358 +[#8359]: https://github.com/home-assistant/home-assistant/pull/8359 +[#8361]: https://github.com/home-assistant/home-assistant/pull/8361 +[#8363]: https://github.com/home-assistant/home-assistant/pull/8363 +[#8364]: https://github.com/home-assistant/home-assistant/pull/8364 +[#8365]: https://github.com/home-assistant/home-assistant/pull/8365 +[#8366]: https://github.com/home-assistant/home-assistant/pull/8366 +[#8368]: https://github.com/home-assistant/home-assistant/pull/8368 +[#8369]: https://github.com/home-assistant/home-assistant/pull/8369 +[#8370]: https://github.com/home-assistant/home-assistant/pull/8370 +[#8371]: https://github.com/home-assistant/home-assistant/pull/8371 +[#8373]: https://github.com/home-assistant/home-assistant/pull/8373 +[#8374]: https://github.com/home-assistant/home-assistant/pull/8374 +[#8376]: https://github.com/home-assistant/home-assistant/pull/8376 +[#8378]: https://github.com/home-assistant/home-assistant/pull/8378 +[#8380]: https://github.com/home-assistant/home-assistant/pull/8380 +[#8384]: https://github.com/home-assistant/home-assistant/pull/8384 +[#8385]: https://github.com/home-assistant/home-assistant/pull/8385 +[#8387]: https://github.com/home-assistant/home-assistant/pull/8387 +[#8391]: https://github.com/home-assistant/home-assistant/pull/8391 +[#8392]: https://github.com/home-assistant/home-assistant/pull/8392 +[#8393]: https://github.com/home-assistant/home-assistant/pull/8393 +[#8395]: https://github.com/home-assistant/home-assistant/pull/8395 +[#8396]: https://github.com/home-assistant/home-assistant/pull/8396 +[#8397]: https://github.com/home-assistant/home-assistant/pull/8397 +[#8398]: https://github.com/home-assistant/home-assistant/pull/8398 +[#8400]: https://github.com/home-assistant/home-assistant/pull/8400 +[#8405]: https://github.com/home-assistant/home-assistant/pull/8405 +[#8409]: https://github.com/home-assistant/home-assistant/pull/8409 +[#8410]: https://github.com/home-assistant/home-assistant/pull/8410 +[#8419]: https://github.com/home-assistant/home-assistant/pull/8419 +[#8420]: https://github.com/home-assistant/home-assistant/pull/8420 +[#8424]: https://github.com/home-assistant/home-assistant/pull/8424 +[#8427]: https://github.com/home-assistant/home-assistant/pull/8427 +[#8428]: https://github.com/home-assistant/home-assistant/pull/8428 +[#8429]: https://github.com/home-assistant/home-assistant/pull/8429 +[#8431]: https://github.com/home-assistant/home-assistant/pull/8431 +[#8433]: https://github.com/home-assistant/home-assistant/pull/8433 +[#8437]: https://github.com/home-assistant/home-assistant/pull/8437 +[#8438]: https://github.com/home-assistant/home-assistant/pull/8438 +[#8440]: https://github.com/home-assistant/home-assistant/pull/8440 +[#8442]: https://github.com/home-assistant/home-assistant/pull/8442 +[#8444]: https://github.com/home-assistant/home-assistant/pull/8444 +[#8445]: https://github.com/home-assistant/home-assistant/pull/8445 +[#8446]: https://github.com/home-assistant/home-assistant/pull/8446 +[#8447]: https://github.com/home-assistant/home-assistant/pull/8447 +[#8449]: https://github.com/home-assistant/home-assistant/pull/8449 +[#8450]: https://github.com/home-assistant/home-assistant/pull/8450 +[#8451]: https://github.com/home-assistant/home-assistant/pull/8451 +[#8453]: https://github.com/home-assistant/home-assistant/pull/8453 +[#8457]: https://github.com/home-assistant/home-assistant/pull/8457 +[#8462]: https://github.com/home-assistant/home-assistant/pull/8462 +[#8463]: https://github.com/home-assistant/home-assistant/pull/8463 +[#8465]: https://github.com/home-assistant/home-assistant/pull/8465 +[@CharlesBlonde]: https://github.com/CharlesBlonde +[@Flavien]: https://github.com/Flavien +[@Julius2342]: https://github.com/Julius2342 +[@Kernald]: https://github.com/Kernald +[@Klikini]: https://github.com/Klikini +[@MikeChristianson]: https://github.com/MikeChristianson +[@PhracturedBlue]: https://github.com/PhracturedBlue +[@Sabesto]: https://github.com/Sabesto +[@Tommatheussen]: https://github.com/Tommatheussen +[@abmantis]: https://github.com/abmantis +[@aequitas]: https://github.com/aequitas +[@alanfischer]: https://github.com/alanfischer +[@alexrockt]: https://github.com/alexrockt +[@amelchio]: https://github.com/amelchio +[@andrey-git]: https://github.com/andrey-git +[@aneisch]: https://github.com/aneisch +[@armills]: https://github.com/armills +[@aronsky]: https://github.com/aronsky +[@azogue]: https://github.com/azogue +[@balloob]: https://github.com/balloob +[@clarkewd]: https://github.com/clarkewd +[@danielhiversen]: https://github.com/danielhiversen +[@danielperna84]: https://github.com/danielperna84 +[@dgomes]: https://github.com/dgomes +[@doctorjames]: https://github.com/doctorjames +[@fabaff]: https://github.com/fabaff +[@gitmopp]: https://github.com/gitmopp +[@heinemml]: https://github.com/heinemml +[@mattsch]: https://github.com/mattsch +[@mezz64]: https://github.com/mezz64 +[@michaelarnauts]: https://github.com/michaelarnauts +[@minchik]: https://github.com/minchik +[@mitchese]: https://github.com/mitchese +[@mjg59]: https://github.com/mjg59 +[@mjj4791]: https://github.com/mjj4791 +[@mtreinish]: https://github.com/mtreinish +[@nmaggioni]: https://github.com/nmaggioni +[@open-homeautomation]: https://github.com/open-homeautomation +[@persandstrom]: https://github.com/persandstrom +[@postlund]: https://github.com/postlund +[@pvizeli]: https://github.com/pvizeli +[@rcloran]: https://github.com/rcloran +[@robmarkcole]: https://github.com/robmarkcole +[@rytilahti]: https://github.com/rytilahti +[@scarface-4711]: https://github.com/scarface-4711 +[@sdague]: https://github.com/sdague +[@simaosimao]: https://github.com/simaosimao +[@tchellomello]: https://github.com/tchellomello +[@thecynic]: https://github.com/thecynic +[@viswa-swami]: https://github.com/viswa-swami +[@vkorn]: https://github.com/vkorn +[@w1ll1am23]: https://github.com/w1ll1am23 +[@wardcraigj]: https://github.com/wardcraigj +[@wmalgadey]: https://github.com/wmalgadey +[alarm_control_panel.totalconnect docs]: https://home-assistant.io/components/alarm_control_panel.totalconnect/ +[amcrest docs]: https://home-assistant.io/components/amcrest/ +[apcupsd docs]: https://home-assistant.io/components/apcupsd/ +[binary_sensor.hikvision docs]: https://home-assistant.io/components/binary_sensor.hikvision/ +[binary_sensor.modbus docs]: https://home-assistant.io/components/binary_sensor.modbus/ +[binary_sensor.octoprint docs]: https://home-assistant.io/components/binary_sensor.octoprint/ +[binary_sensor.pilight docs]: https://home-assistant.io/components/binary_sensor.pilight/ +[binary_sensor.zha docs]: https://home-assistant.io/components/binary_sensor.zha/ +[camera.amcrest docs]: https://home-assistant.io/components/camera.amcrest/ +[camera.arlo docs]: https://home-assistant.io/components/camera.arlo/ +[climate.flexit docs]: https://home-assistant.io/components/climate.flexit/ +[climate.generic_thermostat docs]: https://home-assistant.io/components/climate.generic_thermostat/ +[climate.radiotherm docs]: https://home-assistant.io/components/climate.radiotherm/ +[climate.tado docs]: https://home-assistant.io/components/climate.tado/ +[cover.template docs]: https://home-assistant.io/components/cover.template/ +[device_tracker.asuswrt docs]: https://home-assistant.io/components/device_tracker.asuswrt/ +[device_tracker.linksys_smart docs]: https://home-assistant.io/components/device_tracker.linksys_smart/ +[device_tracker.tplink docs]: https://home-assistant.io/components/device_tracker.tplink/ +[device_tracker.upc_connect docs]: https://home-assistant.io/components/device_tracker.upc_connect/ +[dyson docs]: https://home-assistant.io/components/dyson/ +[fan.dyson docs]: https://home-assistant.io/components/fan.dyson/ +[group docs]: https://home-assistant.io/components/group/ +[hassio docs]: https://home-assistant.io/hassio/ +[homematic docs]: https://home-assistant.io/components/homematic/ +[image_processing.dlib_face_detect docs]: https://home-assistant.io/components/image_processing.dlib_face_detect/ +[image_processing.dlib_face_identify docs]: https://home-assistant.io/components/image_processing.dlib_face_identify/ +[knx docs]: https://home-assistant.io/components/knx/ +[lametric docs]: https://home-assistant.io/components/lametric/ +[light.avion docs]: https://home-assistant.io/components/light.avion/ +[light.decora docs]: https://home-assistant.io/components/light.decora/ +[light.hue docs]: https://home-assistant.io/components/light.hue/ +[light.hyperion docs]: https://home-assistant.io/components/light.hyperion/ +[light.knx docs]: https://home-assistant.io/components/light.knx/ +[light.lifx docs]: https://home-assistant.io/components/light.lifx/ +[light.mystrom docs]: https://home-assistant.io/components/light.mystrom/ +[light.rflink docs]: https://home-assistant.io/components/light.rflink/ +[light.zha docs]: https://home-assistant.io/components/light.zha/ +[lutron docs]: https://home-assistant.io/components/lutron/ +[media_extractor docs]: https://home-assistant.io/components/media_extractor/ +[media_extractor docs]: https://home-assistant.io/components/media_extractor/ +[media_player.apple_tv docs]: https://home-assistant.io/components/media_player.apple_tv/ +[media_player.denonavr docs]: https://home-assistant.io/components/media_player.denonavr/ +[media_player.emby docs]: https://home-assistant.io/components/media_player.emby/ +[media_player.plex docs]: https://home-assistant.io/components/media_player.plex/ +[media_player.soundtouch docs]: https://home-assistant.io/components/media_player.soundtouch/ +[media_player.spotify docs]: https://home-assistant.io/components/media_player.spotify/ +[media_player.vizio docs]: https://home-assistant.io/components/media_player.vizio/ +[modbus docs]: https://home-assistant.io/components/modbus/ +[mqtt docs]: https://home-assistant.io/components/mqtt/ +[notify docs]: https://home-assistant.io/components/notify/ +[notify.discord docs]: https://home-assistant.io/components/notify.discord/ +[notify.lametric docs]: https://home-assistant.io/components/notify.lametric/ +[notify.slack docs]: https://home-assistant.io/components/notify.slack/ +[notify.twitter docs]: https://home-assistant.io/components/notify.twitter/ +[octoprint docs]: https://home-assistant.io/components/octoprint/ +[prometheus docs]: https://home-assistant.io/components/prometheus/ +[python_script docs]: https://home-assistant.io/components/python_script/ +[recorder docs]: https://home-assistant.io/components/recorder/ +[rflink docs]: https://home-assistant.io/components/rflink/ +[rfxtrx docs]: https://home-assistant.io/components/rfxtrx/ +[scene.velux docs]: https://home-assistant.io/components/scene.velux/ +[sensor.amcrest docs]: https://home-assistant.io/components/sensor.amcrest/ +[sensor.apcupsd docs]: https://home-assistant.io/components/sensor.apcupsd/ +[sensor.arwn docs]: https://home-assistant.io/components/sensor.arwn/ +[sensor.broadlink docs]: https://home-assistant.io/components/sensor.broadlink/ +[sensor.buienradar docs]: https://home-assistant.io/components/sensor.buienradar/ +[sensor.citybikes docs]: https://home-assistant.io/components/sensor.citybikes/ +[sensor.dht docs]: https://home-assistant.io/components/sensor.dht/ +[sensor.dyson docs]: https://home-assistant.io/components/sensor.dyson/ +[sensor.gtfs docs]: https://home-assistant.io/components/sensor.gtfs/ +[sensor.london_underground docs]: https://home-assistant.io/components/sensor.london_underground/ +[sensor.modbus docs]: https://home-assistant.io/components/sensor.modbus/ +[sensor.octoprint docs]: https://home-assistant.io/components/sensor.octoprint/ +[sensor.openweathermap docs]: https://home-assistant.io/components/sensor.openweathermap/ +[sensor.otp docs]: https://home-assistant.io/components/sensor.otp/ +[sensor.rflink docs]: https://home-assistant.io/components/sensor.rflink/ +[sensor.london_underground docs]: https://home-assistant.io/components/sensor.london_underground/ +[sensor.uber docs]: https://home-assistant.io/components/sensor.uber/ +[sensor.waqi docs]: https://home-assistant.io/components/sensor.waqi/ +[sensor.yweather docs]: https://home-assistant.io/components/sensor.yweather/ +[sensor.zha docs]: https://home-assistant.io/components/sensor.zha/ +[snips docs]: https://home-assistant.io/components/snips/ +[switch.broadlink docs]: https://home-assistant.io/components/switch.broadlink/ +[switch.dlink docs]: https://home-assistant.io/components/switch.dlink/ +[switch.modbus docs]: https://home-assistant.io/components/switch.modbus/ +[switch.rachio docs]: https://home-assistant.io/components/switch.rachio/ +[switch.rflink docs]: https://home-assistant.io/components/switch.rflink/ +[switch.xiaomi_vacuum docs]: https://home-assistant.io/components/switch.xiaomi_vacuum/ +[tado docs]: https://home-assistant.io/components/tado/ +[tts docs]: https://home-assistant.io/components/tts/ +[tts.amazon_polly docs]: https://home-assistant.io/components/tts.amazon_polly/ +[upnp docs]: https://home-assistant.io/components/upnp/ +[velux docs]: https://home-assistant.io/components/velux/ +[frontend docs]: https://home-assistant.io/components/frontend/ +[vera docs]: https://home-assistant.io/components/vera/ +[verisure docs]: https://home-assistant.io/components/verisure/ +[wake_on_lan docs]: https://home-assistant.io/components/wake_on_lan/ +[weather.buienradar docs]: https://home-assistant.io/components/weather.buienradar/ +[weather.openweathermap docs]: https://home-assistant.io/components/weather.openweathermap/ +[zha docs]: https://home-assistant.io/components/zha/ +[zha.const docs]: https://home-assistant.io/components/zha.const/ +[forum]: https://community.home-assistant.io/ +[issue]: https://github.com/home-assistant/home-assistant/issues +[discord]: https://discord.gg/c5DvZ4e diff --git a/source/addons/index.html b/source/addons/index.html index 1950e807b23..02f4b6c292f 100644 --- a/source/addons/index.html +++ b/source/addons/index.html @@ -16,6 +16,13 @@ regenerate: true + +

    + Check the Hass.io forums for add-on repositories managed by the community. +

    diff --git a/source/developers/api.markdown b/source/developers/api.markdown index feb599063b9..b46b1fdc4d4 100644 --- a/source/developers/api.markdown +++ b/source/developers/api.markdown @@ -11,8 +11,8 @@ footer: true Home Assistant provides various APIs. For detail please refer to [Home Assistant API](https://dev-docs.home-assistant.io/en/dev/) documentation. + * [Python API](https://dev-docs.home-assistant.io/) * [Websocket API](/developers/websocket_api/) - * [RESTful API](/developers/rest_api/) - * [Python API](/developers/python_api/) + * [REST API](/developers/rest_api/) + * [Python REST API](/developers/python_api/) * [Server-sent events](/developers/server_sent_events/) - diff --git a/source/developers/architecture_components.markdown b/source/developers/architecture_components.markdown index 9bf4bff3e37..eff2ff1f2e6 100644 --- a/source/developers/architecture_components.markdown +++ b/source/developers/architecture_components.markdown @@ -32,22 +32,22 @@ These components provide small pieces of home automation logic or involve servic For example, the [`device_sun_light_trigger` component](/components/device_sun_light_trigger/) tracks the state of devices and the sun to make sure that the lights are turned on when it gets dark and people are home. The component uses logic like this: -```plain - In the event that device 'Paulus Nexus 5' changes to the 'Home' state: - If the sun has set and the lights are not on: - Turn on the lights +```text +In the event that device 'Paulus Nexus 5' changes to the 'Home' state: + If the sun has set and the lights are not on: + Turn on the lights ``` -```plain - In the event that the combined state of all tracked devices changes to 'Not Home': - If the lights are on: - Turn off the lights +```text +In the event that the combined state of all tracked devices changes to 'Not Home': + If the lights are on: + Turn off the lights ``` -```plain - In the event of the sun setting: - If the lights are off and the combined state of all tracked device equals 'Home': - Turn on the lights +```text +In the event of the sun setting: + If the lights are off and the combined state of all tracked device equals 'Home': + Turn on the lights ``` Look [here](https://github.com/home-assistant/home-assistant/blob/master/config/custom_components/example.py) for a comprehensive example of a home automation component. diff --git a/source/hassio/addon_config.markdown b/source/developers/hassio/addon_config.markdown similarity index 94% rename from source/hassio/addon_config.markdown rename to source/developers/hassio/addon_config.markdown index e4e5d6bb5df..d6ed5d0527f 100644 --- a/source/hassio/addon_config.markdown +++ b/source/developers/hassio/addon_config.markdown @@ -7,6 +7,7 @@ sidebar: true comments: false sharing: true footer: true +redirect_from: /hassio/addon_config/ --- Each add-on is stored in a folder. The file structure looks like this: @@ -95,7 +96,7 @@ The config for an add-on is stored in `config.json`. | description | yes | Description of the add-on | arch | no | List of supported arch: `armhf`, `aarch64`, `amd64`, `i386`. Default all. | url | no | Homepage of the addon. Here you can explain the add-ons and options. -| startup | yes | `initialize` will start addon on setup of hassio. `before` homeassistant will start. `after` homeassistant will start or `once` for application they don't run as deamon. +| startup | yes | `initialize` will start addon on setup of hassio. `system` is for things like database and base not on other things. `services` will start before homeassistant. `application` is after homeassistant will start or `once` for application they don't run as deamon. | boot | yes | `auto` by system and manual or only `manual` | ports | no | Network ports to expose from the container. Format is `"container-port/type": host-port`. | host_network | no | If that is True, the add-on run on host network. @@ -111,7 +112,7 @@ The config for an add-on is stored in `config.json`. ### {% linkable_title Options / Schema %} -The `options` dict contains all available options and their default value. Set the default value to `null` if the value is required to be given by the user before the add-on can start. Only non-nested arrays are supported. +The `options` dict contains all available options and their default value. Set the default value to `null` if the value is required to be given by the user before the add-on can start. Only non-nested arrays and dictorys are supported. ```json { diff --git a/source/hassio/addon_development.markdown b/source/developers/hassio/addon_development.markdown similarity index 63% rename from source/hassio/addon_development.markdown rename to source/developers/hassio/addon_development.markdown index dc0c3eda648..e08e6c95720 100644 --- a/source/hassio/addon_development.markdown +++ b/source/developers/hassio/addon_development.markdown @@ -7,8 +7,17 @@ sidebar: true comments: false sharing: true footer: true +redirect_from: /hassio/addon_development/ --- Add-ons for Hass.io allows the user to extend the functionality around Home Assistant. This can be running an application that Home Assistant can integrate with (like an MQTT broker) or to share the configuration via Samba for easy editing from other computers. Add-ons can be configured via the Hass.io panel in Home Assistant. Under the hood, add-ons are Docker images published in [Docker Hub](https://hub.docker.com/). Developers can create [GitHub](https://github.com) repositories that contain multiple references to add-ons for easy sharing with the community. + +
      +
    1. Tutorial: Making your first add-on
    2. +
    3. Configuration
    4. +
    5. Local Testing
    6. +
    7. Publishing
    8. +
    9. Repositories
    10. +
    diff --git a/source/hassio/addon_publishing.markdown b/source/developers/hassio/addon_publishing.markdown similarity index 98% rename from source/hassio/addon_publishing.markdown rename to source/developers/hassio/addon_publishing.markdown index 011fed11f79..012eb425a32 100644 --- a/source/hassio/addon_publishing.markdown +++ b/source/developers/hassio/addon_publishing.markdown @@ -7,6 +7,7 @@ sidebar: true comments: false sharing: true footer: true +redirect_from: /hassio/addon_publishing/ --- There are two different ways of publishing add-ons. One is to publish pre-build containers to Docker Hub and the other option is to have users build the containers locally on their Hass.io instance. diff --git a/source/hassio/addon_repository.markdown b/source/developers/hassio/addon_repository.markdown similarity index 96% rename from source/hassio/addon_repository.markdown rename to source/developers/hassio/addon_repository.markdown index 662fa8ef08a..04152968bc4 100644 --- a/source/hassio/addon_repository.markdown +++ b/source/developers/hassio/addon_repository.markdown @@ -7,6 +7,7 @@ sidebar: true comments: false sharing: true footer: true +redirect_from: /hassio/addon_repository/ --- Add-ons repository can contain one or more add-ons. Each add-on is stored in it's own unique folder. For it to be indentified as a repository, a repository contains a configuration file. diff --git a/source/hassio/addon_testing.markdown b/source/developers/hassio/addon_testing.markdown similarity index 97% rename from source/hassio/addon_testing.markdown rename to source/developers/hassio/addon_testing.markdown index e7162741d8b..a78a672546a 100644 --- a/source/hassio/addon_testing.markdown +++ b/source/developers/hassio/addon_testing.markdown @@ -7,6 +7,7 @@ sidebar: true comments: false sharing: true footer: true +redirect_from: /hassio/addon_testing/ --- The fastest way to develop add-ons is by adding them to your local add-on repository. To access your local add-on repository, install either the [Samba add-on] or [SSH add-on]. diff --git a/source/hassio/addon_tutorial.markdown b/source/developers/hassio/addon_tutorial.markdown similarity index 98% rename from source/hassio/addon_tutorial.markdown rename to source/developers/hassio/addon_tutorial.markdown index 32855ad745c..8121ec86e7f 100644 --- a/source/hassio/addon_tutorial.markdown +++ b/source/developers/hassio/addon_tutorial.markdown @@ -7,6 +7,7 @@ sidebar: true comments: false sharing: true footer: true +redirect_from: /hassio/addon_tutorial/ --- So you've got Home Assistant going and you've been enjoying the built-in add-ons but you're missing this one application. Time to make your own add-on! In Hass.io 0.24 we introduced the option to have local add-ons be build on your device. This is great for developing new add-ons locally. @@ -203,4 +204,4 @@ Refresh the add-on store and re-install your add-on. You will now see the option - [Learn more about the available schema options.](/hassio/addon_config/#options--schema) - [See how options.json can be used inside `run.sh`](https://github.com/home-assistant/hassio-addons/blob/master/mosquitto/run.sh#L4-L6) -### [Next step: Add-on config reference »](/hassio/addon_config/) +### [Next step: Add-on config reference »](/developers/hassio/addon_config/) diff --git a/source/hassio/architecture.markdown b/source/developers/hassio/architecture.markdown similarity index 97% rename from source/hassio/architecture.markdown rename to source/developers/hassio/architecture.markdown index 5dbb1c4354e..173e3657ae3 100644 --- a/source/hassio/architecture.markdown +++ b/source/developers/hassio/architecture.markdown @@ -7,6 +7,7 @@ sidebar: true comments: false sharing: true footer: true +redirect_from: /hassio/architecture/ ---

    diff --git a/source/hassio/debugging.markdown b/source/developers/hassio/debugging.markdown similarity index 87% rename from source/hassio/debugging.markdown rename to source/developers/hassio/debugging.markdown index ae8eef22d6b..6b47eb12440 100644 --- a/source/hassio/debugging.markdown +++ b/source/developers/hassio/debugging.markdown @@ -7,8 +7,15 @@ sidebar: true comments: false sharing: true footer: true +redirect_from: /hassio/debugging/ --- +

    +This section is not for users. Use the [SSH add-on] to SSH into Hass.io. This is for developers of Hass.io. Do not ask for support if you are using these options. +

    + +[SSH add-on]: /addons/ssh/ + The following debug tips and tricks are for people who are running the Hass.io image and are working on the base image. If you use the generic Linux installer script, you should be able to access your host and logs as per your host. ## {% linkable_title SSH access to the host %} diff --git a/source/hassio/index.markdown b/source/hassio/index.markdown index 5265840726d..ebe99c5a784 100644 --- a/source/hassio/index.markdown +++ b/source/hassio/index.markdown @@ -9,4 +9,33 @@ sharing: true footer: true --- -Hass.io turns your Raspberry Pi (or other device) into the ultimate Home Automation hub. It takes away all the hassle of installing Home Assistant and related applications and keeping them up to date. Updates to the operating system, Home Assistant, and any add-ons can be done via the Home Assistant UI with a single click. +Hass.io turns your Raspberry Pi (or other device) into the ultimate home automation hub powered by Home Assistant. With Hass.io you can focus on integrating your devices and writing automations. + +[Go to the installation instructions »][install] + +The advantages of using Hass.io: + + - Free and open source + - Optimized for the Raspberry Pi + - 100% local home automation + - Easy installation and updates (powered by [ResinOS] and [Docker]) + - Management user interface integrated into Home Assistant + - Easily create and restore full backups of your whole configuration. + - One click install of many popular add-ons including voice assistant via [Snips.ai], encryption via [Let's Encrypt] and dynamic DNS via [Duck DNS].

    [Browse available add-ons »][all] + - Active community that is helpful and sharing add-ons including AppDaemon, Homebridge and InfluxDB.

    [Browse the forums »][forums]
    [Join the Hass.io chat »][chat]
    [Browse community add-on repositories »][comm-add-ons] + +

    + +Hass.io dashboard +

    + +[Snips.ai]: /addons/snips/ +[Let's Encrypt]: /addons/lets_encrypt/ +[Duck DNS]: /addons/duckdns/ +[forums]: https://community.home-assistant.io/c/hass-io +[comm-add-ons]: https://community.home-assistant.io/tags/hassio-repository +[all]: /addons/ +[chat]: https://discord.gg/K3UVxJd +[ResinOS]: https://resinos.io/ +[Docker]: https://www.docker.com/ +[install]: /hassio/installation/ diff --git a/source/hassio/installation.markdown b/source/hassio/installation.markdown index f8df3ef8d8c..d44d08f866b 100644 --- a/source/hassio/installation.markdown +++ b/source/hassio/installation.markdown @@ -9,26 +9,29 @@ sharing: true footer: true --- -Hass.io images are available for all available Raspberry Pi and intel nuc platforms. +Hass.io images are available for all available Raspberry Pi and Intel NUC platforms. - Download the appropriate image for your Raspberry Pi / intel nuc: - [Raspberry Pi / Zero][pi1] - [Raspberry Pi 2][pi2] - [Raspberry Pi 3][pi3] - - [Intel Nuc][nuc] + - [Intel NUC][nuc] - Flash the downloaded image to an SD card using [Etcher]. - Optional - Setup the WiFi or static ip: On the SD-card, edit the `system-connections/resin-sample` file and follow the [ResinOS howto][resinos-network]. - Insert SD card to Raspberry Pi and turn it on. On first boot, it downloads the latest version of Home Assistant which takes ~20 minutes (slower/faster depending on the platform). - You will be able to reach your installation at [http://hassio.local:8123][local]. +- Enable either the [Samba add-on][samba] or the [SSH add-on][ssh] to manage your configuration.

    If you copy over your existing Home Assistant configuration, make sure to enable the Hass.io panel by adding either `discovery:` or `hassio:` to your configuration.

    -### {% linkable_title Alternative: install on generic Linux server %} +## {% linkable_title Alternative: install on generic Linux server %} For advanced users, it is also possible to try Hass.io on your Linux server or inside a VM. To do so, [follow these instructions][linux]. +

    When you use this installation method, some add-ons will not be available and the documentation might not work for your installation.

    + [Etcher]: https://etcher.io/ [resinos-network]: https://docs.resin.io/deployment/network/2.0.0/ [pi1]: https://github.com/home-assistant/hassio-build/releases/download/0.8/resinos-hassio-0.8-raspberrypi.img.bz2 @@ -37,3 +40,5 @@ For advanced users, it is also possible to try Hass.io on your Linux server or i [nuc]: https://github.com/home-assistant/hassio-build/releases/download/0.8/resinos-hassio-0.8-intel-nuc.img.bz2 [linux]: https://github.com/home-assistant/hassio-build/tree/master/install#install-hassio [local]: http://hassio.local:8123 +[samba]: /addons/samba/ +[ssh]: /addons/ssh/ diff --git a/source/hassio/installing_third_party_addons.markdown b/source/hassio/installing_third_party_addons.markdown index 8db74287763..a6385b52786 100644 --- a/source/hassio/installing_third_party_addons.markdown +++ b/source/hassio/installing_third_party_addons.markdown @@ -9,7 +9,11 @@ sharing: true footer: true --- -Hass.io allows anyone to create add-on repositories to easily share their add-ons for Hass.io. To try this locally, you can use our example add-on repository at `https://github.com/home-assistant/hassio-addons-example`. +Hass.io allows anyone to create add-on repositories to easily share their add-ons for Hass.io. To try this locally, you can use our example add-on repository at + +```text +https://github.com/home-assistant/hassio-addons-example +```

    Home Assistant cannot guarantee the quality or security of third party add-ons. Use at your own risk. @@ -27,4 +31,4 @@ Add the urls of repositories (one per line) and then press "Save". A new card fo ### {% linkable_title Help: Repository is not showing up %} -If you have added a repository but it's not showing up, it means that the repository contains invalid configuration. Go to the Hass.io panel -> Supervisor card -> View logs and scroll to the bottom. It should tell you what went wrong. Report this information to the repository author. +If you have added a repository but it's not showing up, it means that the repository contains invalid configuration. Go to the Hass.io panel -> Three dot menu -> Advanced Settings -> Supervisor card -> View logs and scroll to the bottom. It should tell you what went wrong. Report this information to the repository author. diff --git a/source/hassio/run_local.markdown b/source/hassio/run_local.markdown index c12c602ea35..a93e9b211ad 100644 --- a/source/hassio/run_local.markdown +++ b/source/hassio/run_local.markdown @@ -9,15 +9,19 @@ sharing: true footer: true --- -On a normal Home Assistant installation you have access to the base machine and can install or add scripts that you can call with a `command_line` sensor/switch. Since Hass.IO uses Docker, you can not use this old way to perform local stuff. On its face, it looks quite restrictive, but it makes the whole system stable. +Hass.io is a managed environment. This means that you're unable to install applications that you can embed into Home Assistant using the `command_line` sensor/switch. -However, if you need to run a script to read data for a sensor or send commands to other devices on Hass.IO, you can do that with a add-on or on inside the Home Assistant container with a custom component. Here is one way to accomplish that using an add-on. For custom component, look at the [devoloper site][custom-component] and also read the [add-ons tutorial][addons-tutorial]. Now you can get started with your custom component in the right way. +There are two options if you need to run a script to read data from a sensor or send commands to other devices on Hass.IO. -First you need install a MQTT broker. You can use our [MQTT broker add-on][mqtt-addon]. Make sure you use logins and disable anonymous access if you want to secure the system. We provide no Hass.IO way to exchange data, that will be not realy good for security and is also to slow to exchange data between containers or stop and go stuff. That is the reason why we use a mqtt broker for it. +First option is to write a custom component for Home Assistant. Using Python you can communicate with your device. For custom component, look at the [devoloper site][custom-component]. + +The second option is to make a local add-on for Hass.io that sends the data to Home Assistant via MQTT. Before we dive into this, read up on [Hass.io add-on development][addons-tutorial]. + +For security and speed, Hass.io does not provide a way for containers to communicate directly. So the first step is to set up a communication channel. We're going to use MQTT for this using the [MQTT broker add-on][mqtt-addon]. ### {% linkable_title Sensors %} -Short story of that caption: We loop in our script to fetch data and push it to MQTT and wait until next process is ready. Here is a basic example and structure for that process. +We loop in our script to fetch data and push it to MQTT and wait until next process is ready. Here is a basic example and structure for that process. Our Dockerfile need to install: @@ -26,6 +30,7 @@ RUN apk --no-cache add jq mosquitto-clients ``` Now we can process it with `run.sh`: + ```bash #!/bin/bash set -e @@ -52,11 +57,11 @@ do sleep "$WAIT_TIME" done - ``` ### {% linkable_title Commands %} -Short story of that caption: We wait for incoming data from MQTT broker. We can also use an `input_boolean` that triggers an automation to publish a custom command to MQTT topic that can process multiple things in one add-on. + +We wait for incoming data from MQTT broker. We can also use an `input_boolean` that triggers an automation to publish a custom command to MQTT topic that can process multiple things in one add-on. Our Dockerfile need to install: @@ -88,10 +93,9 @@ do fi done < <(mosquitto_sub -h "$MQTT_SERVER" -p "$MQTT_PORT" -u "$USER" -P "$PASSWORD" -t "$TOPIC" -q 1) - ``` [MQTT-addon]: /addons/mosquitto/ [custom-component]: /developers/component_loading/ -[addons-tutorial]: /hassio/addon_tutorial/ +[addons-tutorial]: /developers/hassio/addon_tutorial/ diff --git a/source/hassio/zwave.markdown b/source/hassio/zwave.markdown new file mode 100644 index 00000000000..d6ef71f79a1 --- /dev/null +++ b/source/hassio/zwave.markdown @@ -0,0 +1,17 @@ +--- +layout: page +title: "Z-Wave" +description: "Instructions on how-to use Z-Wave with Hass.io." +date: 2017-04-30 13:28 +sidebar: true +comments: false +sharing: true +footer: true +--- + +To enable Z-Wave, plug your Z-Wave USB stick into your Raspberry Pi 3 and add the following to your `configuration.yaml`: + +```yaml +zwave: + usb_path: /dev/ttyACM0 +``` diff --git a/source/images/blog/2017-07-0.49/components.png b/source/images/blog/2017-07-0.49/components.png new file mode 100644 index 00000000000..86629d6dff4 Binary files /dev/null and b/source/images/blog/2017-07-0.49/components.png differ diff --git a/source/images/blog/2017-07-0.49/green-theme.png b/source/images/blog/2017-07-0.49/green-theme.png new file mode 100644 index 00000000000..d9672ab9558 Binary files /dev/null and b/source/images/blog/2017-07-0.49/green-theme.png differ diff --git a/source/images/hassio/screenshots/addon_repository_editor.png b/source/images/hassio/screenshots/addon_repository_editor.png deleted file mode 100644 index e0e2b212886..00000000000 Binary files a/source/images/hassio/screenshots/addon_repository_editor.png and /dev/null differ diff --git a/source/images/hassio/screenshots/dashboard.png b/source/images/hassio/screenshots/dashboard.png new file mode 100644 index 00000000000..997fad3d223 Binary files /dev/null and b/source/images/hassio/screenshots/dashboard.png differ diff --git a/source/images/hassio/screenshots/main_panel_store_icon.png b/source/images/hassio/screenshots/main_panel_store_icon.png index a6b04be1134..27e650fdf9d 100644 Binary files a/source/images/hassio/screenshots/main_panel_store_icon.png and b/source/images/hassio/screenshots/main_panel_store_icon.png differ diff --git a/source/images/hassio/screenshots/repositories_editor.png b/source/images/hassio/screenshots/repositories_editor.png index a02427d1659..9c3df30568c 100644 Binary files a/source/images/hassio/screenshots/repositories_editor.png and b/source/images/hassio/screenshots/repositories_editor.png differ