diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 79176875fce..7a45d78aab0 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -14,7 +14,7 @@ jobs:
with:
node-version: 12.x
- name: Setup NPM cache
- uses: actions/cache@v2.1.5
+ uses: actions/cache@v2.1.6
with:
path: ~/.npm
key: npm-${{ hashFiles('**/package-lock.json') }}
@@ -37,7 +37,7 @@ jobs:
with:
node-version: 12.x
- name: Setup NPM cache
- uses: actions/cache@v2.1.5
+ uses: actions/cache@v2.1.6
with:
path: ~/.npm
key: npm-${{ hashFiles('**/package-lock.json') }}
@@ -57,11 +57,11 @@ jobs:
- name: Check out files from GitHub
uses: actions/checkout@v2.3.4
- name: Setting up Ruby 2.6
- uses: ruby/setup-ruby@v1.71.0
+ uses: ruby/setup-ruby@v1.72.1
with:
ruby-version: 2.6
- name: Setup Ruby Gems cache
- uses: actions/cache@v2.1.5
+ uses: actions/cache@v2.1.6
with:
path: vendor/bundle
key: gems-${{ hashFiles('**/Gemfile.lock') }}
@@ -73,7 +73,7 @@ jobs:
bundle config path vendor/bundle
bundle install --jobs 4 --retry 3
- name: Setting up Jekyll cache
- uses: actions/cache@v2.1.5
+ uses: actions/cache@v2.1.6
with:
path: source/.jekyll-cache
key:
diff --git a/Gemfile b/Gemfile
index 319ea3796ce..e8ebf448207 100644
--- a/Gemfile
+++ b/Gemfile
@@ -21,7 +21,7 @@ group :jekyll_plugins do
end
gem 'sinatra', '2.1.0'
-gem 'nokogiri', '1.11.5'
+gem 'nokogiri', '1.11.6'
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library
diff --git a/Gemfile.lock b/Gemfile.lock
index 7ce15a08871..d4fd0b8d79d 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -70,14 +70,14 @@ GEM
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
- mini_portile2 (2.5.1)
+ mini_portile2 (2.5.3)
multi_json (1.15.0)
mustermann (1.1.1)
ruby2_keywords (~> 0.0.1)
- nokogiri (1.11.5)
+ nokogiri (1.11.6)
mini_portile2 (~> 2.5.0)
racc (~> 1.4)
- nokogiri (1.11.5-x64-mingw32)
+ nokogiri (1.11.6-x64-mingw32)
racc (~> 1.4)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
@@ -130,7 +130,7 @@ DEPENDENCIES
jekyll-sitemap (= 1.4.0)
jekyll-time-to-read (= 0.1.2)
jekyll-toc (= 0.17.1)
- nokogiri (= 1.11.5)
+ nokogiri (= 1.11.6)
rake (= 13.0.3)
sass-globbing (= 1.1.5)
sassc (= 2.1.0)
diff --git a/source/_docs/configuration/templating.markdown b/source/_docs/configuration/templating.markdown
index 8fb24a04519..70b48560ad7 100644
--- a/source/_docs/configuration/templating.markdown
+++ b/source/_docs/configuration/templating.markdown
@@ -24,7 +24,7 @@ Templating in Home Assistant is powered by the [Jinja2](https://palletsprojects.
We will not go over the basics of the syntax, as Jinja2 does a great job of this in their [templates documentation](https://jinja.palletsprojects.com/en/latest/templates/).
-The frontend has a {% my developer_templates title="template editor tool" %} to help develop and debug templates. Navigate to {% my developer_templates title="Developer Tools > Template" %}, create your template in the _Template editor_ and check the results on the right.
+The frontend has a {% my developer_template title="template editor tool" %} to help develop and debug templates. Navigate to {% my developer_template title="Developer Tools > Template" %}, create your template in the _Template editor_ and check the results on the right.
Templates can get big pretty fast. To keep a clear overview, consider using YAML multiline strings to define your templates:
@@ -51,7 +51,7 @@ script:
There are a few very important rules to remember when adding templates to YAML:
1. You **must** surround single-line templates with double quotes (`"`) or single quotes (`'`).
-1. It is advised that you prepare for undefined variables by using `if ... is not none` or the [`default` filter](https://jinja.palletsprojects.com/en/latest/templates/#default), or both.
+1. It is advised that you prepare for undefined variables by using `if ... is not none` or the [`default` filter](https://jinja.palletsprojects.com/en/latest/templates/#jinja-filters.default), or both.
1. It is advised that when comparing numbers, you convert the number(s) to a [`float`](https://jinja.palletsprojects.com/en/latest/templates/#float) or an [`int`](https://jinja.palletsprojects.com/en/latest/templates/#int) by using the respective [filter](https://jinja.palletsprojects.com/en/latest/templates/#list-of-builtin-filters).
1. While the [`float`](https://jinja.palletsprojects.com/en/latest/templates/#float) and [`int`](https://jinja.palletsprojects.com/en/latest/templates/#int) filters do allow a default fallback value if the conversion is unsuccessful, they do not provide the ability to catch undefined variables.
diff --git a/source/_examples/configuration_yaml_by_silvrrgit.markdown b/source/_examples/configuration_yaml_by_silvrrgit.markdown
deleted file mode 100644
index f798ec51fd2..00000000000
--- a/source/_examples/configuration_yaml_by_silvrrgit.markdown
+++ /dev/null
@@ -1,6 +0,0 @@
----
-title: "Configuration.yaml by SilvrrGIT"
-description: ""
-ha_category: Example configuration.yaml
-ha_external_link: https://github.com/SilvrrGIT/HomeAssistant
----
diff --git a/source/_includes/installation/operating_system.md b/source/_includes/installation/operating_system.md
index 8074cd0c920..d0be8627246 100644
--- a/source/_includes/installation/operating_system.md
+++ b/source/_includes/installation/operating_system.md
@@ -2,19 +2,49 @@
{% assign release_url = "https://github.com/home-assistant/operating-system/releases/download" %}
+{% if site.installation.types[page.installation_type].board %}
+
Follow this guide if you want to get started with Home Assistant easily or if you have little to no Linux experience
-{% if site.installation.types[page.installation_type].board %}
{% if page.installation_type == 'raspberrypi' %}
### Suggested Hardware
We will need a few things to get started with installing Home Assistant. Links below lead to Amazon US. If you’re not in the US, you should be able to find these items in web stores in your country.
-- [Power Supply](https://www.raspberrypi.org/help/faqs/#powerReqs) (at least 3A)
+- [Raspberry Pi 4](https://amzn.to/2S0Gcl1) (Raspberry Pi 3 is ok too, if you have one laying around)
+- [Power Supply for Raspberry Pi 4](https://amzn.to/2ReZ2Vq) or [Power Supply for Raspberry Pi 3](https://amzn.to/2R8yG7h)
- [Micro SD Card](https://amzn.to/2X0Z2di). Ideally get one that is [Application Class 2](https://www.sdcard.org/developers/overview/application/index.html) as they handle small I/O much more consistently than cards not optimized to host applications. A 32 GB or bigger card is recommended.
- SD Card reader. This is already part of most laptops, but you can purchase a [standalone USB adapter](https://amzn.to/2WWxntY) if you don't have one. The brand doesn't matter, just pick the cheapest.
-- Ethernet cable. Home Assistant can work with Wi-Fi, but an Ethernet connection would be more reliable.
+- Ethernet cable. Home Assistant can work with Wi-Fi, but an Ethernet connection is more reliable and highly recommended.
+
+{% endif %}
+
+{% if page.installation_type == 'odroid' %}
+
+### Suggested Hardware
+
+We will need a few things to get started with installing Home Assistant. Links below lead to Ameridroid. If you’re not in the US, you should be able to find these items in web stores in your country.
+
+To get started we suggest the ODROID N2+, it's the most powerful ODROID. It's fast and with built-in eMMC one of the best boards to run Home Assistant. It's also the board that powers our [Home Assistant Blue](/blue/).
+
+- [ODROID N2+](https://ameridroid.com/products/odroid-n2-plus?ref=eeb6nfw07e)
+- [Power Supply](https://ameridroid.com/products/12v-2a-power-supply-plug?ref=eeb6nfw07e)
+- [CR2032 Coin Cell](https://ameridroid.com/products/rtc-bios-battery?ref=eeb6nfw07e)
+- [eMMC Module](https://ameridroid.com/products/emmc-module-n2-linux-red-dot?ref=eeb6nfw07e)
+- [Case](https://ameridroid.com/products/odroid-n2-case?ref=eeb6nfw07e)
+
+If unavailable, we also recommend the [ODROID C4](https://ameridroid.com/products/odroid-c4?ref=eeb6nfw07e) or [ODROID XU4](https://ameridroid.com/products/odroid-xu4?ref=eeb6nfw07e).
+
+{% endif %}
+
+{% if page.installation_type == 'tinkerboard' %}
+
+### Suggested Hardware
+
+We will need a few things to get started with installing Home Assistant. Links below lead to Amazon US. If you’re not in the US, you should be able to find it in web stores in your country.
+
+- [Asus Tinkerboard S](https://amzn.to/3fFIcbI)
{% endif %}
@@ -39,8 +69,8 @@ We will need a few things to get started with installing Home Assistant. Links b
{% if variant.key == "odroid-n2" %}
[Guide: Flashing Odroid-N2 using OTG-USB](/hassio/flashing_n2_otg/)
- {% elsif variant.key == "rpi4" %}
- _(On the 8GB model 64-bit is recommended)_
+ {% elsif variant.key == "rpi4" or variant.key == "rpi3" %}
+ _(64-bit is recommended)_
{% endif %}
{% endfor %}
@@ -77,6 +107,10 @@ _Select and copy the URL or use the "copy" button that appear when you hover it.
{% else %}
+{% if page.installation_type != 'nuc' %}
+Follow this guide if you already are running a hypervisor, if not look at the [Raspberry Pi](/installation/raspberrypi) or the [ODROID](/installation/odroid)
+{% endif %}
+
### Download the appropriate image
{% if page.installation_type == 'nuc' %}
@@ -99,10 +133,9 @@ _Select and copy the URL or use the "copy" button that appear when you hover it.
{% endif %}
{% if page.installation_type == "nuc" %}
-1. Put the SD card in your card reader.
-2. Open balenaEtcher, select the Home Assistant image and flash it to the SD card.
-3. Unmount the SD card and remove it from your card reader.
-4. Once completed you will be able to reach Home Assistant on homeassistant.local:8123. If you are running an older Windows version or have a stricter network configuration, you might need to access Home Assistant at homeassistant:8123 or `http://X.X.X.X:8123` (replace X.X.X.X with your {{site.installation.types[page.installation_type].board}}’s IP address).
+1. Install the operating system from the link above on the drive you have on the NUC.
+2. Start the NUC with the drive you installed the operating system to as the boot device.
+3. Once the initial setup has completed you will be able to reach Home Assistant on homeassistant.local:8123. If you are running an older Windows version or have a stricter network configuration, you might need to access Home Assistant at homeassistant:8123 or `http://X.X.X.X:8123` (replace X.X.X.X with your {{site.installation.types[page.installation_type].board}}’s IP address).
{% else %}
### Create the Virtual Machine
diff --git a/source/_includes/installation/supervised.md b/source/_includes/installation/supervised.md
index cf23481752d..7d7f64be7c5 100644
--- a/source/_includes/installation/supervised.md
+++ b/source/_includes/installation/supervised.md
@@ -2,7 +2,7 @@
-This way of running Home Assistant will require the most of you. It also have strict requirements you need to follow.
+This way of running Home Assistant will require the most of you. It also has strict requirements you need to follow.
Unless you really need this installation type, you should install Home Assistant OS (this can also be a [virtual machine](#install-home-assistant-operating-system)), or [Home Assistant Container](#install-home-assistant-container).
@@ -13,4 +13,4 @@ Unless you really need this installation type, you should install Home Assistant
Once the Home Assistant Supervised installation is running and Home Assistant accessible you can continue with onboarding.
-{% include getting-started/next_step.html step="Onboarding" link="/getting-started/onboarding/" %}
\ No newline at end of file
+{% include getting-started/next_step.html step="Onboarding" link="/getting-started/onboarding/" %}
diff --git a/source/_integrations/compensation.markdown b/source/_integrations/compensation.markdown
index 16477ff9b47..e7fe40885d7 100644
--- a/source/_integrations/compensation.markdown
+++ b/source/_integrations/compensation.markdown
@@ -24,6 +24,8 @@ To enable the compensation sensor, add the following lines to your `configuratio
compensation:
media_player_db_volume:
source: media_player.yamaha_receiver
+ attribute: volume_level
+ unit_of_measurement: dB
data_points:
- [0.2, -80.0]
- [1.0, 0.0]
diff --git a/source/_integrations/device_trigger.mqtt.markdown b/source/_integrations/device_trigger.mqtt.markdown
index f088a7cbe68..53392f779dc 100644
--- a/source/_integrations/device_trigger.mqtt.markdown
+++ b/source/_integrations/device_trigger.mqtt.markdown
@@ -36,7 +36,7 @@ topic:
required: true
type: string
type:
- description: "The type of the trigger, e.g. `button_short_press`. Entries supported by the frontend: `button_short_press`, `button_short_release`, `button_long_press`, `button_long_release`, `button_double_press`, `button_triple_press`, `button_quadruple_press`, `button_quintuple_press`. If set to an unsupported value, will render as `subtype type`, e.g. `First button spammed` with `type` set to `spammed` and `subtype` set to `button_1`"
+ description: "The type of the trigger, e.g. `button_short_press`. Entries supported by the frontend: `button_short_press`, `button_short_release`, `button_long_press`, `button_long_release`, `button_double_press`, `button_triple_press`, `button_quadruple_press`, `button_quintuple_press`. If set to an unsupported value, will render as `subtype type`, e.g. `button_1 spammed` with `type` set to `spammed` and `subtype` set to `button_1`"
required: true
type: string
subtype:
diff --git a/source/_integrations/rainbird.markdown b/source/_integrations/rainbird.markdown
index 448ea170815..0ae7f649356 100644
--- a/source/_integrations/rainbird.markdown
+++ b/source/_integrations/rainbird.markdown
@@ -75,7 +75,8 @@ More complex configuration using all possible features could look like this exam
rainbird:
- host: IP_ADDRESS_OF_MODULE
password: YOUR_PASSWORD
- trigger_time: 6
+ trigger_time:
+ minutes: 6
zones:
1:
friendly_name: My zone 1
@@ -83,7 +84,8 @@ rainbird:
minutes: 6
2:
friendly_name: My zone 2
- trigger_time: 2
+ trigger_time:
+ minutes: 2
- host: IP_ADDRESS_OF_ANOTHER_MODULE
password: YOUR_ANOTHER_PASSWORD
trigger_time: 0:06
@@ -126,12 +128,11 @@ The service can be used as part of an automation script. For example:
automation:
- alias: "Turn irrigation on"
trigger:
- platform: time
- at: "5:30:00"
+ - platform: time
+ at: "5:30:00"
action:
- service: rainbird.start_irrigation
- target:
- entity_id: switch.sprinkler_1
- data:
- duration: 5
+ - service: rainbird.start_irrigation
+ data:
+ entity_id: switch.sprinkler_1
+ duration: 5
```
diff --git a/source/_integrations/ssdp.markdown b/source/_integrations/ssdp.markdown
index 1edb4a8e494..182df4edf55 100644
--- a/source/_integrations/ssdp.markdown
+++ b/source/_integrations/ssdp.markdown
@@ -26,12 +26,25 @@ ssdp:
The following integrations are automatically discovered by the SSDP integration:
+ - [AVM FRITZ!SmartHome](/integrations/fritzbox/)
+ - [Belkin WeMo](/integrations/wemo/)
- [deCONZ](/integrations/deconz/)
+ - [Denon AVR](/integrations/denonavr/)
+ - [Denon HEOS](/integrations/heos/)
- [DirecTV](/integrations/directv/)
- [Huawei LTE](/integrations/huawei_lte/)
+ - [Hyperion](/integrations/hyperion/)
+ - [Keenetic NDMS2 Router](/integrations/keenetic_ndms2/)
+ - [Konnected.io](/integrations/konnected/)
+ - [Logitech Harmony](/integrations/harmony/)
- [Philips Hue](/integrations/hue/)
- [Roku](/integrations/roku/)
- [Samsung SyncThru Printer](/integrations/syncthru/)
- [Samsung TV](/integrations/samsungtv/)
- - [UPnP](/integrations/upnp/)
+ - [Sonos](/integrations/sonos/)
- [Sony Songpal](/integrations/songpal/)
+ - [Synology DSM](/integrations/synology_dsm/)
+ - [Ubiquiti UniFi](/integrations/unifi/)
+ - [Universal Devices ISY994](/integrations/isy994/)
+ - [UPnP](/integrations/upnp/)
+ - [WiLight](/integrations/wilight/)
diff --git a/source/_integrations/updater.markdown b/source/_integrations/updater.markdown
index 93c70067736..78443a5485b 100644
--- a/source/_integrations/updater.markdown
+++ b/source/_integrations/updater.markdown
@@ -32,16 +32,16 @@ For an added bonus, an automation integration can be created to send a message w
```yaml
# Example configuration.yaml entry
automation:
- alias: "Update Available Notification"
- trigger:
- - platform: state
- entity_id: binary_sensor.updater
- from: "off"
- to: "on"
- action:
- - service: notify.notify
- data:
- message: "Home Assistant {{ state_attr('binary_sensor.updater', 'newest_version') }} is available."
+ - alias: "Update Available Notification"
+ trigger:
+ - platform: state
+ entity_id: binary_sensor.updater
+ from: "off"
+ to: "on"
+ action:
+ - service: notify.notify
+ data:
+ message: "Home Assistant {{ state_attr('binary_sensor.updater', 'newest_version') }} is available."
```
{% endraw %}
diff --git a/source/_lovelace/picture-glance.markdown b/source/_lovelace/picture-glance.markdown
index d97600e522c..776853bf4e5 100644
--- a/source/_lovelace/picture-glance.markdown
+++ b/source/_lovelace/picture-glance.markdown
@@ -62,7 +62,7 @@ show_state:
required: false
description: Show entity state text.
type: boolean
- default: true
+ default: false
theme:
required: false
description: Override the used theme for this card with any loaded theme. For more information about themes, see the [frontend documentation](/integrations/frontend/).
diff --git a/source/_posts/2021-05-28-community-highlights.markdown b/source/_posts/2021-05-28-community-highlights.markdown
new file mode 100644
index 00000000000..e10c98dec8f
--- /dev/null
+++ b/source/_posts/2021-05-28-community-highlights.markdown
@@ -0,0 +1,107 @@
+---
+title: "Community Highlights: 23rd edition"
+description: "Get a reminder so you don't forget to take your medicine, swipe through your cards and control your lights from a (proof of concept) 2D game"
+date: 2021-05-28 00:00:00
+date_formatted: "May 28, 2021"
+author: Klaas Schoute
+author_twitter: klaasnicolaas
+categories: Community
+og_image: /images/blog/2021-05-28-community-highlights/social.png
+---
+
+The 23rd edition of the Home Assistant Community Highlights! Some interesting
+things popped up around our community, which we thought was worth sharing.
+
+Do you want to share something for the next edition?
+Information on [how to share](#got-a-tip-for-the-next-edition).
+
+./Klaas
+*Intern on Home Assistant Energy*
+
+## Blueprint of the week
+------
+
+This week's blueprint is all about medication. It may happen that you forget
+to swallow it, what if you create an automation that sends you a message as a
+reminder every time? [Mati24](LINK) has now made a handy blueprint for that,
+try it out!
+
+{% my blueprint_import badge blueprint_url="https://community.home-assistant.io/t/advanced-medication-reminder/300137" %}
+
+Read more about it on the [community forum][week_blueprint] or install this
+automation in your instance with a click on the My button!
+
+## Swiper card
+------
+
+Not enough space on your Lovelace dashboard? Then try the [swiper card](https://github.com/bramkragten/swipe-card)
+made by [bramkragten](https://github.com/bramkragten), with which you can easily
+swipe through different cards in the same card frame.
+
+
+
+## Lovelace dashboard
+------
+
+Also this week we have a new Lovelace dashboard for the necessary portion of inspiration 😄
+This time the dashboard of [DoIGotSkillz](https://www.reddit.com/user/DoIGotSkillz/),
+who made one for use on a tablet wall mount.
+
+
+
+Would you also like your dashboard to be in the community highlight? Drop it on
+[Reddit][reddit] and maybe I'll pick it out for the next edition.
+
+## Homegame
+------
+
+Recently we had an [item][item] about switching entities in Minecraft, well this
+time it's a game again but in 2D. [svendroid](https://github.com/svendroid) made
+a proof of concept game that you can play in the browser, you can adjust the map
+so that your own light entities work with it.
+
+
+
+
+
+Doesn't this also remind you of the old Pokemon games from the past? 😅
+
+
+
+## Got a tip for the next edition?
+------
+
+Have you seen (or made) something awesome, interesting, unique, amazing,
+inspirational, unusual or funny, using Home Assistant?
+
+[Click here to send us your Community Highlight suggestion](/suggest-community-highlight).
+
+Also, don't forget to share your creations with us via Social Media:
+
+- Tweet it! Be sure to mention [@home_assistant][twitter]
+- Share it on our [Facebook group][facebook-group]
+- Post it to our [subreddit][reddit]
+- Tag [@homeasssistant][instagram] on Instagram
+- Or via chat, drop us a line in the [#lounge at Discord][chat]
+
+See you next edition!
+
+[chat]: https://www.home-assistant.io/join-chat
+[facebook-group]: https://www.facebook.com/groups/HomeAssistant
+[instagram]: https://www.instagram.com/homeassistant
+[reddit]: https://www.reddit.com/r/homeassistant
+[twitter]: https://www.twitter.com/home_assistant
+[blueprints]: https://community.home-assistant.io/c/blueprints-exchange
+[community]: https://community.home-assistant.io
+[week_blueprint]: https://community.home-assistant.io/t/advanced-medication-reminder/300137
+[item]: https://www.home-assistant.io/blog/2021/05/14/community-highlights/#mine-assistant
\ No newline at end of file
diff --git a/source/images/blog/2021-05-28-community-highlights/dashboard.png b/source/images/blog/2021-05-28-community-highlights/dashboard.png
new file mode 100644
index 00000000000..f2feadec995
Binary files /dev/null and b/source/images/blog/2021-05-28-community-highlights/dashboard.png differ
diff --git a/source/images/blog/2021-05-28-community-highlights/social.png b/source/images/blog/2021-05-28-community-highlights/social.png
new file mode 100644
index 00000000000..2fe28854805
Binary files /dev/null and b/source/images/blog/2021-05-28-community-highlights/social.png differ
diff --git a/source/installation/index.html b/source/installation/index.html
index 554e9f82ae9..f5f6b70e4f3 100644
--- a/source/installation/index.html
+++ b/source/installation/index.html
@@ -8,11 +8,16 @@ toc: true
+
+ The first step is to install Home Assistant. We recommend a dedicated system to run Home Assistant.
+ If you are unsure of what to choose, follow the Raspberry Pi guide to
+ install Home Assistant Operating System.
+
Home Assistant offers four different installation methods. We recommend using one of the following two methods:
-
Home Assistant Operating System: Minimal Operating System optimized to power Home Assistant.
+
Home Assistant Operating System: Minimal Operating System optimized to power Home Assistant.
It comes with Supervisor to manage Home Assistant Core and pre-installed add-ons. Recommended installation method.
Home Assistant Container: Standalone container-based installation of Home Assistant Core (e.g. Docker).
@@ -24,28 +29,24 @@ toc: true
The list below shows the installation method available based on the device and platform being used.
-
- We recommend a dedicated system to run Home Assistant. If you are unsure of what to choose, using a
- Raspberry Pi and the Home Assistant Operating System is a good start.
-
- If you are using the Home Assistant Blue, the Home Assistant Operating System is
- already installed. So you can skip this installation step.
+ If you are using the Home Assistant Blue, the Home Assistant Operating System is
+ already installed. Continue to onboarding.