diff --git a/Gemfile b/Gemfile index 60821c84bfca..aae3185e6e26 100644 --- a/Gemfile +++ b/Gemfile @@ -21,7 +21,7 @@ group :jekyll_plugins do end gem 'sinatra', '2.1.0' -gem 'nokogiri', '1.12.5' +gem 'nokogiri', '1.13.0' # 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 0f2a28fb0e60..5576ddda49d6 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.6.1) + mini_portile2 (2.7.1) multi_json (1.15.0) mustermann (1.1.1) ruby2_keywords (~> 0.0.1) - nokogiri (1.12.5) - mini_portile2 (~> 2.6.1) + nokogiri (1.13.0) + mini_portile2 (~> 2.7.0) racc (~> 1.4) - nokogiri (1.12.5-x64-mingw32) + nokogiri (1.13.0-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.12.5) + nokogiri (= 1.13.0) rake (= 13.0.6) sass-globbing (= 1.1.5) sassc (= 2.1.0) diff --git a/_config.yml b/_config.yml index bda039af7167..40883bd28dab 100644 --- a/_config.yml +++ b/_config.yml @@ -108,8 +108,8 @@ social: # Home Assistant release details current_major_version: 2021 current_minor_version: 12 -current_patch_version: 7 -date_released: 2021-12-29 +current_patch_version: 8 +date_released: 2022-01-04 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. diff --git a/source/_docs/configuration/devices.markdown b/source/_docs/configuration/devices.markdown index e042d212dd71..4a51048b9eee 100644 --- a/source/_docs/configuration/devices.markdown +++ b/source/_docs/configuration/devices.markdown @@ -59,25 +59,3 @@ switch 1: switch 2: platform: vera ``` - -## Grouping entities - -Once you have several entities set up, it is time to organize them into groups. -Each group consists of a name and a list of entity IDs. Entity IDs can be -retrieved from the web interface by using the -{% my developer_states title="States page in the Developer Tools" %}. - -```yaml -# Example configuration.yaml entry -group: - living_room: - entities: - - light.table_lamp - - switch.ac - bedroom: - entities: - - light.bedroom - - media_player.nexus_player -``` - -For more details please check the [Group](/integrations/group/) page. diff --git a/source/_docs/configuration/splitting_configuration.markdown b/source/_docs/configuration/splitting_configuration.markdown index 43472c7eb244..b378313d439b 100644 --- a/source/_docs/configuration/splitting_configuration.markdown +++ b/source/_docs/configuration/splitting_configuration.markdown @@ -183,6 +183,9 @@ This (large) sensor configuration gives us another example: You'll notice that this example includes a secondary parameter section (under the steam section) as well as a better example of the way comments can be used to break down files into sections. +All of the above can be applied when splitting up files using packages. To +learn more about packages, see the [Packages](/docs/configuration/packages) page. + That about wraps it up. If you have issues checkout `home-assistant.log` in the configuration directory as well as your indentations. If all else fails, head over to our [Discord chat server][discord] and ask away. diff --git a/source/_docs/locked_out.md b/source/_docs/locked_out.md index c1f0e47df63d..42f787437685 100644 --- a/source/_docs/locked_out.md +++ b/source/_docs/locked_out.md @@ -23,13 +23,13 @@ Connect a keyboard and monitor to your device. #### To reset a user's password, via the container command line -If you are running Home Assistant in a container, you can use the command line in the container with the `hass` command to change your password. The steps below refer to a Home Assistant container in Docker named `ha`. Note that while working in the container, commands will take a few moments to execute. +If you are running Home Assistant in a container, you can use the command line in the container with the `hass` command to change your password. The steps below refer to a Home Assistant container in Docker named `homeassistant`. Note that while working in the container, commands will take a few moments to execute. -1. `docker exec -it ha bash` to open to the container command line +1. `docker exec -it homeassistant bash` to open to the container command line 2. `hass` to create a default user, if this is your first time using the tool 3. `hass --script auth --config /config change_password existing_user new_password` to change the password 4. `exit` to exit the container command line -5. `docker restart ha` to restart the container +5. `docker restart homeassistant` to restart the container #### To reset a user's password, as an administrator via the web interface diff --git a/source/_docs/tools/dev-tools.markdown b/source/_docs/tools/dev-tools.markdown index 879583afbfc0..566c10a488ac 100644 --- a/source/_docs/tools/dev-tools.markdown +++ b/source/_docs/tools/dev-tools.markdown @@ -61,7 +61,7 @@ The Template Editor provides a way to quickly test templates prior to placing th By default, this will contain sample code that illustrates how templates can be written and tested. This sample code can be removed and replaced with your own. You can restore the default example by pressing the "Reset to Demo Template" button beneath the code editor. -For more information about Jinja2, visit [Jinja2 documentation](http://jinja.pocoo.org/docs/dev/templates/), and also read templating document [here](/topics/templating/). +For more information about Jinja2, visit [Jinja2 documentation](https://jinja.palletsprojects.com/en/latest/templates/), and also read templating document [here](/docs/configuration/templating). ## Events diff --git a/source/_includes/installation/container.md b/source/_includes/installation/container.md index 90cf621843ee..b8264db83e7d 100644 --- a/source/_includes/installation/container.md +++ b/source/_includes/installation/container.md @@ -74,6 +74,10 @@ Start it by running: docker-compose up -d ``` +Once the Home Assistant Container is running Home Assistant should be accessible using `http://:8123` (replace with the hostname or IP of the system). You can continue with onboarding. + +{% include getting-started/next_step.html step="Onboarding" link="/getting-started/onboarding/" %} + ### Exposing Devices In order to use Z-Wave, Zigbee or other integrations that require access to devices, you need to map the appropriate device into the container. Ensure the user that is running the container has the correct privileges to access the `/dev/tty*` file, then add the device mapping to your container instructions: diff --git a/source/_integrations/alarmdecoder.markdown b/source/_integrations/alarmdecoder.markdown index db34c2eb4f0e..2e3f7b8a6292 100644 --- a/source/_integrations/alarmdecoder.markdown +++ b/source/_integrations/alarmdecoder.markdown @@ -132,10 +132,14 @@ Using a combination of the available services and attributes, you can create swi value_template: "{{ is_state_attr('alarm_control_panel.alarm_panel', 'chime', true) }}" turn_on: service: alarmdecoder.alarm_toggle_chime + target: + entity_id: alarm_control_panel.alarm_panel data: code: !secret alarm_code turn_off: service: alarmdecoder.alarm_toggle_chime + target: + entity_id: alarm_control_panel.alarm_panel data: code: !secret alarm_code icon_template: >- diff --git a/source/_integrations/august.markdown b/source/_integrations/august.markdown index d026cb61194c..b1fc3542810f 100644 --- a/source/_integrations/august.markdown +++ b/source/_integrations/august.markdown @@ -35,8 +35,9 @@ The `august` integration allows you to integrate your [August](https://august.co | August Smart Lock (Gen 1) | no | | August Doorbell Cam (Gen 1, Gen2) | no | | August View | no | -| Yale Assure Locks with August/Yale Connect Module | yes | -| Yale Conexis L1 with August/Yale Connect Module | yes | +| Yale Assure Lock | yes | +| Yale Conexis L1 | yes | +| Yale Linus | yes | There is currently support for the following device types within Home Assistant: diff --git a/source/_integrations/blockchain.markdown b/source/_integrations/blockchain.markdown index d70e09345462..558ab322a0cb 100644 --- a/source/_integrations/blockchain.markdown +++ b/source/_integrations/blockchain.markdown @@ -14,6 +14,9 @@ The `Blockchain` sensor platform displays Bitcoin wallet balances from [blockcha To add the Blockchain sensor to your installation, specify a list of bitcoin addresses to watch in the `configuration.yaml` file. The sensor state will be the sum of the balances of all addresses listed. +Currently, the original Bitcoin address format is supported. +For example, the newer Segwit and Taproot format are not supported. + ```yaml # Example configuration.yaml entry sensor: diff --git a/source/_integrations/counter.markdown b/source/_integrations/counter.markdown index 199aa665fbc3..baa23b6757b6 100644 --- a/source/_integrations/counter.markdown +++ b/source/_integrations/counter.markdown @@ -79,7 +79,7 @@ Pick an icon that you can find on [materialdesignicons.com](https://materialdesi This integration will automatically restore the state it had prior to Home Assistant stopping as long as your entity has `restore` set to `true`, which is the default. To disable this feature, set `restore` to `false`. -If `restore` is set to `false`, the `initial` value will only be used when no previous state is found or when the counter is reset. +If `restore` is set to `true`, the `initial` value will only be used when no previous state is found or when the counter is reset. ## Services diff --git a/source/_integrations/cover.markdown b/source/_integrations/cover.markdown index 3816ca93de1b..6287f9363ee0 100644 --- a/source/_integrations/cover.markdown +++ b/source/_integrations/cover.markdown @@ -28,6 +28,10 @@ The way these sensors are displayed in the frontend can be modified in the [cust - **shutter**: Control of shutters, which are linked slats that swing out/in to covering an opening or may be tilted to partially cover an opening, such as indoor or exterior window shutters. - **window**: Control of a physical window that opens and closes or may tilt. +Here are a few examples of this representation in the UI: + +

Example of various device classes icons in `open` and `closed` state. The open image in this example has `state_color: true` specified in the Entities card configuration to receive the icon coloring.

+ ## Services ### Cover control services diff --git a/source/_integrations/daikin.markdown b/source/_integrations/daikin.markdown index 993dffa1889b..d558fcfd9e79 100644 --- a/source/_integrations/daikin.markdown +++ b/source/_integrations/daikin.markdown @@ -5,6 +5,7 @@ ha_category: - Climate - Sensor - Switch + - Energy ha_release: 0.59 ha_iot_class: Local Polling ha_config_flow: true diff --git a/source/_integrations/dsmr.markdown b/source/_integrations/dsmr.markdown index 410611dd61a2..3572534ba1da 100644 --- a/source/_integrations/dsmr.markdown +++ b/source/_integrations/dsmr.markdown @@ -17,7 +17,7 @@ ha_platforms: A sensor platform for Belgian, Dutch, Luxembourg and Swedish Smart Meters which comply to DSMR (Dutch Smart Meter Requirements), also known as 'Slimme meter' or 'P1 poort'. Swedish meters with a 'HAN port' are not supported by this integration. -- Currently support DSMR V2.2, V3, V4, V5, Belgian V5 variant, Luxembourg V5 variant (Smarty) and the Swedish V5 variant through the [dsmr_parser](https://github.com/ndokter/dsmr_parser) module by Nigel Dokter. +- Currently support DSMR V2.2, V3, V4, V5, Belgian V5 variant, Luxembourg V5 variant (Smarty), Swedish V5 variant and the EasyMeter Q3D (Germany) through the [dsmr_parser](https://github.com/ndokter/dsmr_parser) module by Nigel Dokter. - For official information about DSMR refer to: [DSMR Document](https://www.netbeheernederland.nl/dossiers/slimme-meter-15) - For official information about the P1 port refer to: [P1 Companion Standard](https://www.netbeheernederland.nl/_upload/Files/Slimme_meter_15_a727fce1f1.pdf) - For unofficial hardware connection examples refer to: [Domoticx](http://domoticx.com/p1-poort-slimme-meter-hardware/) @@ -33,6 +33,7 @@ A sensor platform for Belgian, Dutch, Luxembourg and Swedish Smart Meters which - For Dutch meters, choose DSMR version `2.2`, `4`, or `5` - For Luxembourg meters, choose DSMR version `5L` - For Swedish meters, choose DSMR version `5S` +- For EasyMeter Q3D, choose DSMR version `Q3D` ### Options @@ -59,6 +60,7 @@ This integration is known to work for: - Sagemcom XS210 ESMR5 - Sagemcom T211 - Ziv E0058 ESMR5 +- EasyMeter Q3D ### Connecting to the meter @@ -80,6 +82,7 @@ $ docker run --device /dev/ttyUSB0:/dev/ttyUSB0 -d --name="home-assistant" -v /h #### Serial to network proxies: - [ser2net](http://ser2net.sourceforge.net) +- [WIZnet WIZ110SR](https://www.wiznet.io/product-item/wiz110sr/) DIY solutions (ESP8266 based): diff --git a/source/_integrations/edl21.markdown b/source/_integrations/edl21.markdown index 196d4b080be0..8a5bf9117dac 100644 --- a/source/_integrations/edl21.markdown +++ b/source/_integrations/edl21.markdown @@ -20,12 +20,14 @@ Compatible transceivers: - [DIY](https://wiki.volkszaehler.org/hardware/controllers/ir-schreib-lesekopf-rs232-ausgang) - [Weidmann Elektronik Schreib-/Lesekopf USB](https://shop.weidmann-elektronik.de/index.php?page=product&info=24) +- [USB IR Lesekopf EHZ Lese-Schreib-Kopf Volkszähler Hichi Smartmeter](https://www.ebay.de/itm/313455434998) Tested smart meters: - APATOR Norax 3D (enable InF Mode as described in manual to retrieve full data) - DZG DWS76 (enable InF as described in manual to retrieve full data) - Iskraemeco MT175 (ISKRA MT175-D2A51-V22-K0t) +- EMH metering eHZ Generation K (enable InF as described in manual to retrieve full data) ## Configuration diff --git a/source/_integrations/eight_sleep.markdown b/source/_integrations/eight_sleep.markdown index c0eed2c3ab3e..3b6ac35ebc03 100644 --- a/source/_integrations/eight_sleep.markdown +++ b/source/_integrations/eight_sleep.markdown @@ -56,12 +56,47 @@ partner: ### Supported features -Sensors: +Sensors and associated attributes: - eight_left/right_bed_state + - Attributes: + - Target Heating Level + - Heating Active + - Heating Time Remaining - eight left/right_sleep_fitness + - Attributes: + - Fitness Date + - Fitness Duration Score + - Fitness Asleep Score + - Fitness Out-of-Bed Score + - Fitness Wakeup Score - eight_left/right_sleep_session + - Attributes: + - Session Start + - Tosses & Turns + - Processing (True/False) + - Time Slept (s) + - Light Sleep % + - Deep Sleep % + - REM Sleep % + - Respiratory Rate + - Heart Rate + - Sleep Stage + - Room Temperature + - Bed Temperature - eight_left/right_previous_sleep_session + - Attributes: + - Session Start + - Tosses & Turns + - Processing (True/False) + - Time Slept (s) + - Light Sleep % + - Deep Sleep % + - REM Sleep % + - Average Respiratory Rate + - Average Heart Rate + - Average Room Temperature + - Average Bed Temperature - eight_left/right_bed_temperature - eight_left/right_sleep_stage - eight_room_temperature @@ -93,3 +128,7 @@ script: target: 35 duration: 3600 ``` + +### Notice + +Please note this component relies on an undocumented API utilized by the Eight Sleep mobile app to communicate with the Eight Sleep servers. It is not supported by Eight Sleep and may malfunction if changes are made to either the mobile app operation or the API format. diff --git a/source/_integrations/firmata.markdown b/source/_integrations/firmata.markdown index a3739f91fe8f..8742c9e6aa2c 100644 --- a/source/_integrations/firmata.markdown +++ b/source/_integrations/firmata.markdown @@ -142,7 +142,7 @@ binary_sensor: required: true type: string pin: - description: The digital or analog pin number on the board. + description: The digital or analog pin number on the board. For analog pins the corresponding digital number must be used. Please use the pinout that corresponds to your board. For example, on the Arduino Uno, pin A2 corresponds to the digital pin number 16. required: true type: [integer, string] pin_mode: @@ -232,7 +232,7 @@ firmata: negate: true - name: my_other_door pin_mode: INPUT - pin: A1 + pin: 16 # A2 negate: true sensors: - name: my_sensor diff --git a/source/_integrations/flux_led.markdown b/source/_integrations/flux_led.markdown index f406307dcc45..56db433a9453 100644 --- a/source/_integrations/flux_led.markdown +++ b/source/_integrations/flux_led.markdown @@ -18,26 +18,41 @@ ha_config_flow: true ha_dhcp: true --- -The Flux LED integration supports several brands of switches, bulbs, and controllers that use the same protocol and have the HF-LPB100 chipset in common. Chances are high that your bulb or controller (eg. WiFi LED CONTROLLER) will work with this integration if you can control the device with the MagicHome app. - -This integration will provide local control over your LED lights/strips and can be configured to auto-scan your network for controllers or for you to manually configure individual lights by their IP address. +The Magic Home (aka Flux LED) integration supports several brands of smart sockets, LED bulbs, and LED controllers that use the same protocol over WiFi. If you can control your device with the MagicHome app, and it is listed as supported below, this integration can control the device. Example of bulbs: -- [Flux Smart Lighting](https://www.fluxsmartlighting.com/) -- [Flux WiFi Smart LED Light Bulb4](https://amzn.to/2X0dVwu) -- [WIFI smart LED light Bulb1](https://amzn.to/2J2fksr) +- [MagicLight Smart Bulbs](https://www.magiclightbulbs.com/lightbulbs) or [Amazon](https://www.amazon.com/gp/product/B081YJHHB1/) +- [RGBCW Downlights](https://www.amazon.com/gp/product/B093Q83G7S/) +- [RGBCW Floodlights](https://www.amazon.com/gp/product/B09J38NKPN) + +Examples of controllers with strips: + +- [MagicLight Strip Lights](https://www.magiclightbulbs.com/strip-lights) or [Amazon](https://www.amazon.com/gp/product/B08LPSS4J3/) Examples of controllers: -- [Ledenet WiFi RGBW Controller](https://amzn.to/2WZKXNa) -- [SUPERNIGHT WiFi Wireless LED Smart Controller](https://amzn.to/2WURx7w) +- [RGB](https://www.amazon.com/gp/product/B07C1LN7FZ/) +- [RGBW](https://www.amazon.com/gp/product/B07J9QCQNN/) +- [RGBCW](https://www.amazon.com/gp/product/B09BMC4JNJ/) +- [RGB/W/CW](https://www.amazon.com/gp/product/B01DY56N8U/) + +Examples of addressable controllers: + +- [Addressable v3](https://www.amazon.com/gp/product/B09BMBSCRF/) +Examples of addressable controllers with strip: +- [Addressable v1](https://www.amazon.com/gp/product/B07RLF7C86/) +- [Addressable v2](https://www.amazon.com/gp/product/B07B7CQ2ZB/) + +Examples of sockets: + +- [MagicLight Smart Plugs](https://www.magiclightbulbs.com/smart-plugs) or [Amazon](https://www.amazon.com/gp/product/B07XNBVVXV/) {% include integrations/config_flow.md %} -After the devices have been added they can be configured with different effects listed below. These settings can be accessed by navigating to the integration settings in Configuration -> Integrations and selecting the "Flux Led/Magic Home" configuration for the bulb or controller. +After the devices have been added they can be configured with different effects listed below. These settings can be accessed by navigating to the integration settings in Configuration -> Integrations and selecting the "Flux Led/Magic Home" configuration for the bulb or controller. Devices listed as unsupported below are likely to work, however, they have not been tested by the integration's developers. **Custom Effect**\ @@ -52,6 +67,8 @@ The following models have been tested with integration. | Model | Description | Notes | | ----- | --------------------------- | ------------------------------- | +| 0x01 | Legacy RGB Controller | Original protocol | +| 0x03 | Legacy CCT Controller | Original protocol | | 0x04 | UFO Controller RGBW | | | 0x06 | Controller RGBW | | | 0x07 | Controller RGBCW | | @@ -61,18 +78,19 @@ The following models have been tested with integration. | 0x1A | Christmas Light | | | 0x1C | Table Light CCT | | | 0x21 | Bulb Dimmable | | -| 0x25 | Controller RGB/WW/CW | Supports RGB,RGBW,RGBWW,CW,DIM | +| 0x25 | Controller RGB/WW/CW | Supports RGB, RGBW, RGBWW, CW, DIM | | 0x33 | Controller RGB | | | 0x35 | Bulb RGBCW | | | 0x41 | Controller Dimmable | | | 0x44 | Bulb RGBW | | +| 0x52 | Bulb CCT | | | 0x54 | Downlight RGBW | | | 0x93 | Switch 1c | | | 0x94 | Switch 1c Watt | | | 0x97 | Socket 1c | | -| 0xA1 | Addressable v1 | | -| 0xA2 | Addressable v2 | | -| 0xA3 | Addressable v3 | | +| 0xA1 | Addressable v1 | Supports UCS1903, SM16703, WS2811, WS2812B, SK6812, INK1003, WS2801, LB1914 | +| 0xA2 | Addressable v2 | Supports UCS1903, SM16703, WS2811, WS2811B, SK6812, INK1003, WS2801, WS2815, APA102, TM1914, UCS2904B | +| 0xA3 | Addressable v3 | Supports WS2812B, SM16703, SM16704, WS2811, UCS1903, SK6812, SK6812RGBW, INK1003, UCS2904B | ### Unsupported Models @@ -80,20 +98,26 @@ The following models have not been tested with integration but may work. | Model | Description | Notes | | ----- | --------------------------- | ------------------------------- | +| 0x02 | Legacy Dimmable Controller | Original protocol | | 0x09 | Ceiling Light CCT | | | 0x16 | Magnetic Light CCT | | | 0x17 | Magnetic Light Dimmable | | | 0x19 | Socket 2 USB | | | 0x18 | Plant Light | | | 0x1B | Spray Light | | +| 0x1E | Ceiling Light RGBCW | Probably works & same as 0x35 | | 0x62 | Controller CCT | May be discontinued | -| 0x52 | Bulb CCT | May be discontinued | | 0x95 | Switch 2c | | | 0x96 | Switch 4c | | | 0xD1 | Digital Light | | | 0xE1 | Ceiling Light | | | 0xE2 | Ceiling Light Assist | | -| 0xA4 | Addressable v4 | | +| 0xA4 | Addressable v4 | Probably works & same as 0xA3 | +| 0xA6 | Addressable v6 | Probably works & same as 0xA3 | + +### Troubleshooting + +If a strip controller device will not stay on wifi or goes offline during adjusting colors and effects, upgrading to a power supply with a higher amperage usually resolves any stability issues. ### Effects diff --git a/source/_integrations/fronius.markdown b/source/_integrations/fronius.markdown index bb780e48f3c3..e2d322440832 100644 --- a/source/_integrations/fronius.markdown +++ b/source/_integrations/fronius.markdown @@ -80,8 +80,10 @@ Recommended energy dashboard configuration for meter location in feed in path (` - For `Grid consumption` use the meters `Energy real consumed` entity. - For `Return to grid` use the meters `Energy real produced` entity. -- For `Solar production` add each inverters `Energy total` entity. -- `Battery systems` aren't supported directly. Use [Riemann sum](/integrations/integration/) with negative values of `Power battery` entity (from power_flow endpoint found in your `SolarNet` device) for charging and positive values for discharging. +- For `Solar production`: + - If no battery is connected to an inverter: Add each inverters `Energy total` entity. + - If a battery is connected to an inverter: Use [Riemann sum](/integrations/integration/) over `Power photovoltaics` entity (from power_flow endpoint found in your `SolarNet` device) +- `Battery systems` aren't supported directly. Use [Template](/integrations/template) to split and invert negative values of `Power battery` entity (from power_flow) for charging power (W) and positive values for discharging power (W). Then use [Riemann sum](/integrations/integration/) to integrate each into energy values (kWh). - For `Devices` use the Ohmpilots `Energy consumed` entity. ## Note diff --git a/source/_integrations/isy994.markdown b/source/_integrations/isy994.markdown index bbdc90705586..31a2637e5cbf 100644 --- a/source/_integrations/isy994.markdown +++ b/source/_integrations/isy994.markdown @@ -45,7 +45,7 @@ There is currently support for the following device types within Home Assistant: - Sensor - Switch -Home Assistant is capable of communicating with any binary sensor, cover, fan, light, lock, sensor and switch that is configured on the controller. Using the programs on the controller, custom binary sensors, cover, fan, lock, and switches can also be created. +Home Assistant is capable of communicating with any binary sensor, cover, fan, light, lock, sensor and switch that is configured on the controller. Using the programs on the controller, custom binary sensors, covers, fans, locks, and switches can also be created. {% include integrations/config_flow.md %} @@ -67,20 +67,20 @@ host: required: true type: string username: - description: The username that used to access the ISY interface. + description: The username that is used to access the ISY interface. required: true type: string password: - description: The password that used to access the ISY interface. + description: The password that is used to access the ISY interface. required: true type: string sensor_string: - description: This is the string that is used to identify which devices are to be assumed to be sensors instead of lights of switches. If this string is found in the device name or folder, Home Assistant will assume it is as a sensor or binary sensor (if the device has on/off or true/false states). This is only necessary for nodes that are not automatically detected as sensors by Home Assistant. Insteon door, window, motion and leak sensors should all be detected automatically. + description: This is the string that is used to identify which devices are to be assumed to be sensors instead of lights or switches. If this string is found in the device name or folder, Home Assistant will assume it is a sensor or binary sensor (if the device has on/off or true/false states). This is only necessary for nodes that are not automatically detected as sensors by Home Assistant. Insteon door, window, motion and leak sensors should all be detected automatically. required: false type: string default: sensor variable_sensor_string: - description: This is the string that is used to identify which Integer or State Variables are to be added as sensors. If this string is found in the device name, Home Assistant will assume it is as a sensor. + description: This is the string that is used to identify which Integer or State Variables are to be added as sensors. If this string is found in the device name, Home Assistant will assume it is a sensor. required: false type: string default: sensor @@ -149,7 +149,7 @@ All `isy994_control` events will have an `entity_id` and `control` parameter in ### Insteon Scenes & Keypad/Remote Buttons -All Insteon scenes configured in the ISY994 will show up as a `switch` in Home Assistant, as they do not support dimming or setting specific brightness settings as Home Assisstant's `light` component. +All Insteon scenes configured in the ISY994 will show up as a `switch` in Home Assistant, as they do not support dimming or setting specific brightness settings as Home Assistant's `light` component. Insteon Secondary Keypad buttons and Remote buttons are added to Home Assistant to allow support for using Control Events in Automations. These devices are added as `sensors` since they cannot be directly controlled (turned on/off); their state is the last ON level command they sent, in a range from `0` (Off) to `255` (On 100%). Note: these devices may report incorrect states before being used after a reboot of the ISY. Secondary Keypad buttons may be turned on or off using ISY Scenes (refer to ISY Documentation for more details). @@ -167,7 +167,7 @@ Send a command to an ISY Device using its Home Assistant entity ID. Valid comman | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | -| `entity_id` | no | Name(s) of entities to send the command, e.g., `light.front_porch`. | +| `entity_id` | no | Name(s) of target entities for the command, e.g., `light.front_porch`. | | `command` | no | The command to be sent to the device, e.g., `"fast_on"` | #### Service `isy994.send_raw_node_command` @@ -176,7 +176,7 @@ Send a "raw" (e.g., `DON`, `DOF`) ISY REST Device Command to a Node using its Ho | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | -| `entity_id` | no | Name(s) of entities to send the command, e.g., `light.front_porch`. | +| `entity_id` | no | Name(s) of target entities for the command, e.g., `light.front_porch`. | | `command` | no | The ISY REST Command to be sent to the device, e.g., `"DON"` | | `value` | yes | The integer value to be sent with the command, if required by the command, e.g., `255` | | `parameters` | yes | A `dict` of parameters to be sent in the query string for controlling colored bulbs or advanced parameters, e.g., `{ GV2: 0, GV3: 0, GV4: 255 }` | @@ -188,7 +188,7 @@ Request a Z-Wave Device parameter via the ISY. The parameter value will be retur | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------------------------------------------------------------------------------------------- | -| `entity_id` | no | Name of entity to send the command, e.g., `light.front_porch`. This must be an ISY Z-Wave Node. | +| `entity_id` | no | Name of target entity for the command, e.g., `light.front_porch`. This must be an ISY Z-Wave Node. | | `parameter` | no | The parameter number to retrieve from the end device. | #### Service `isy994.set_zwave_parameter` @@ -197,7 +197,7 @@ Update a Z-Wave Device parameter via the ISY. The parameter value will also be r | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------------------------------------------------------------------------------------------- | -| `entity_id` | no | Name of entity to send the command, e.g., `light.front_porch`. This must be an ISY Z-Wave Node. | +| `entity_id` | no | Name of target entity for the command, e.g., `light.front_porch`. This must be an ISY Z-Wave Node. | | `parameter` | no | The parameter number to set on the end device. | | `value` | no | The value to set for the parameter. May be an integer or byte string (e.g. "0xFFFF"). | | `size` | no | The size of the parameter, either 1, 2, or 4 bytes. | @@ -208,7 +208,7 @@ Rename a node or group (scene) on the ISY994. Note: this will not automatically | Service data attribute | Optional | Description | | ---------------------- | -------- | -------------------------------------------------------------- | -| `entity_id` | no | Name of entity to send the command, e.g., `light.front_porch`. | +| `entity_id` | no | Name of target entity for the command, e.g., `light.front_porch`. | | `name` | no | The new name to use within the ISY994. | #### Service `isy994.set_on_level` @@ -217,7 +217,7 @@ Send an ISY set_on_level command to a `light` Node to set the devices' local On | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | -| `entity_id` | no | Name(s) of entities to send the command, e.g., `light.front_porch`. | +| `entity_id` | no | Name(s) of target entities for the command, e.g., `light.front_porch`. | | `value` | no | The integer value to set the On Level to in a range of 0-255, e.g., `255` | #### Service `isy994.set_ramp_rate` @@ -226,7 +226,7 @@ Send an ISY set_ramp_rate command to a `light` Node to set the devices' ramp rat | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | -| `entity_id` | no | Name(s) of entities to send the command, e.g., `light.front_porch`. | +| `entity_id` | no | Name(s) of target entities for the command, e.g., `light.front_porch`. | | `value` | no | The integer index value to set the Ramp Rate to in a range of `0` (9.5 minutes) to `31` (0.1 Seconds), e.g., `28` | #### Service `isy994.system_query` @@ -330,13 +330,17 @@ A device is created by creating a directory, with the name for the device, under - *HA.lock* will create a lock. - *HA.switch* will create a switch. -A program, named *status*, is required under the program device directory. A program, named *actions*, is required for all program devices except for binary_sensor. Any other programs in these device directories will be ignored. The *status* program requires that you create a variable with the name of your choice. This variable will store the actual status of the new device and will be updated by the *action* program. +A program, named *status*, is required under the program device directory. A program, named *actions*, is required for all program devices except for binary_sensor. Any other programs in these device directories will be ignored.

-The *status* program in this directory is what indicates the state of the device: +The *status* program requires that you create a state variable with the name of your choice. Note that you must use a state variable, not an integer variable. This variable will store the actual status of the new device and will be updated by the *action* program. + +![Screenshot of switch variable](/images/isy994/isy994_switch_variable_example.png) + +The IF clause of the *status* program in the device directory is what indicates the state of the device: - *binary_sensor* on if the clause returns true, otherwise off. - *cover* closed if the clause returns true, otherwise open. diff --git a/source/_integrations/light.group.markdown b/source/_integrations/light.group.markdown index f293fd33af95..9de2200a3c2e 100644 --- a/source/_integrations/light.group.markdown +++ b/source/_integrations/light.group.markdown @@ -9,7 +9,7 @@ ha_quality_scale: internal ha_domain: group --- -The group light platform lets you combine multiple lights into one entity. All child lights of a light group can still be used as usual, but controlling the state of the grouped light will forward the command to each child light. +The light group platform lets you combine multiple lights into one entity. All child lights of a light group can still be used as usual, but controlling the state of the grouped light will forward the command to each child light. To enable this platform in your installation, add the following to your `configuration.yaml` file: diff --git a/source/_integrations/light.markdown b/source/_integrations/light.markdown index 659c2b75b879..a3a522bc7330 100644 --- a/source/_integrations/light.markdown +++ b/source/_integrations/light.markdown @@ -38,7 +38,7 @@ Most lights do not support all attributes. You can check the integration documen | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | -| `entity_id` | no | String or list of strings that point at `entity_id`s of lights. To target all the lights use `all` as `entity_id`. +| `entity_id` | no | String or list of strings that point at `entity_id`s of lights. To target all lights, set `entity_id` to `all`. | `transition` | yes | Number that represents the time (in seconds) the light should take to transition to the new state. | `profile` | yes | String with the name of one of the [built-in profiles](https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/light/light_profiles.csv) (relax, energize, concentrate, reading) or one of the custom profiles defined in `light_profiles.csv` in the current working directory. Light profiles define an xy color, brightness and a transition value (if no transition is desired, set to 0 or leave out the column entirely). If a profile is given, and a brightness is set, then the profile brightness will be overwritten. | `hs_color` | yes | A list containing two floats representing the hue and saturation of the color you want the light to be. Hue is scaled 0-360, and saturation is scaled 0-100. @@ -107,7 +107,7 @@ Turns one or multiple lights off. | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | -| `entity_id` | no | String or list of strings that point at `entity_id`s of lights. To target all the lights use all as `entity_id`. +| `entity_id` | no | String or list of strings that point at `entity_id`s of lights. To target all lights, set `entity_id` to `all`. | `transition` | yes | Integer that represents the time the light should take to transition to the new state in seconds. ### Service `light.toggle` diff --git a/source/_integrations/mqtt_statestream.markdown b/source/_integrations/mqtt_statestream.markdown index 01a01034e409..6d432d8f4a0e 100644 --- a/source/_integrations/mqtt_statestream.markdown +++ b/source/_integrations/mqtt_statestream.markdown @@ -8,7 +8,7 @@ ha_iot_class: Local Push ha_domain: mqtt_statestream --- -The `mqtt_statestream` integration publishes state changes in Home Assistant to individual MQTT topics. +The `mqtt_statestream` integration publishes state changes in Home Assistant to individual MQTT topics. [The MQTT integration](/integrations/mqtt/) is a prerequisite for MQTT Statestream to work. ## Configuration diff --git a/source/_integrations/netatmo.markdown b/source/_integrations/netatmo.markdown index 598cc26c3833..3dc3bd01a37a 100644 --- a/source/_integrations/netatmo.markdown +++ b/source/_integrations/netatmo.markdown @@ -233,7 +233,7 @@ client_secret: type: string {% endconfiguration %} -**After the client_id and client_secret is added to your `configuration.yaml` you must enable Netatmo through the integrations page.** +**After the `client_id` and `client_secret` are added to your `configuration.yaml` you must restart Home Assistant and then enable Netatmo through the integrations page.** Menu: **Configuration** -> **Devices & Services**. diff --git a/source/_integrations/nfandroidtv.markdown b/source/_integrations/nfandroidtv.markdown index 6b8448cbc525..c2b6d42c8217 100644 --- a/source/_integrations/nfandroidtv.markdown +++ b/source/_integrations/nfandroidtv.markdown @@ -125,4 +125,24 @@ icon: auth: "digest" ``` +Example of an automation with an service call, full configuration: + +{% raw %} + +```yaml +service: notify.living_room_tv +data: + title: "Thanks for the water!" + message: "Nigel is {{ states('sensor.nigel_moisture') }}% moisture" + data: + duration: 4 + position: "bottom-left" + fontsize: "medium" + transparency: "80%" + color: "teal" + interrupt: 0 +``` + +{% endraw %} + Please note that `path` is validated against the `allowlist_external_dirs` in the `configuration.yaml`. diff --git a/source/_integrations/sense.markdown b/source/_integrations/sense.markdown index 24758810c657..c423d036a44d 100644 --- a/source/_integrations/sense.markdown +++ b/source/_integrations/sense.markdown @@ -34,10 +34,10 @@ Sensors are added for both usage and production: - Usage: Current active power usage in Watts. - Production: Current active power production in Watts. - Trend sensors: Data provided for daily, weekly, monthly and yearly scales. Updated every 5 minutes. - - Usage: Power usage in kWh. - - Production: Power production in kWh. - - To Grid: Power exported to the grid in kWh. - - From Grid: Power imported from the grid in kWh. + - Usage: Energy usage in kWh. + - Production: Energy production in kWh. + - To Grid: Energy exported to the grid in kWh. + - From Grid: Energy imported from the grid in kWh. - Net Production: Measures total solar production against usage. - Net Production Percentage: Net production as a percentage value. - Solar Powered Percentage: Percentage of power used directly from solar. diff --git a/source/_integrations/shell_command.markdown b/source/_integrations/shell_command.markdown index 0f2e5e028332..51a487a9ece7 100644 --- a/source/_integrations/shell_command.markdown +++ b/source/_integrations/shell_command.markdown @@ -47,7 +47,7 @@ The `command` is executed within the [configuration directory](/docs/configurati If you are using [Home Assistant operating system](https://github.com/home-assistant/operating-system), the commands are executed in the `homeassistant` container context. So if you test or debug your script, it might make sense to do this in the context of this container to get the same runtime environment. -With a `0` exit code, the output (stdout) of the command is used as `value`. In case a command results in a non `0` exit code or is terminated by the `command_timeout`, the result is only logged to Home Assistant log and the value of the sensor is not updated. +With a `0` exit code, the output (stdout) of the command is used as `value`. In case a command results in a non `0` exit code or is terminated after a timeout of 60 seconds, the result is only logged to Home Assistant log and the value of the sensor is not updated. ## Examples diff --git a/source/_integrations/shelly.markdown b/source/_integrations/shelly.markdown index f48feed90695..69aa269de238 100644 --- a/source/_integrations/shelly.markdown +++ b/source/_integrations/shelly.markdown @@ -79,6 +79,16 @@ The integration uses the following strategy to name its entities: - If `Channel Name` is set in the device, the integration will use it to generate the entities' name, e.g. `Kitchen Light` - If `Channel Name` is set to the default value, the integration will use the `Device ID` and default channel name to generate the entities' name, e.g. `ShellyPro4PM-9808D1D8B912 switch_0`. +## Binary input sensors + +### Binary input sensors (generation 1) + +Depending on how a device's button type is configured, the integration will create binary sensors corresponding to those inputs. binary sensors are not created when the button type is `momentary` or `momentary_on_release`, for these types you need to use events for your automations. + +### Binary input sensors (generation 2) + +For generation 2 hardware it's possible to select if a device's input is connected to a button or a switch. Binary sensors are created only if the input mode is set to `switch`. When the input is of type `button` you need to use events for your automations. + ## Events If the **BUTTON TYPE** of the switch connected to the device is set to `momentary` or `detached switch`, integration fires events under the type `shelly.click` when the switch is used. You can use these events in your automations. diff --git a/source/_integrations/switch.command_line.markdown b/source/_integrations/switch.command_line.markdown index c50ae9d6cf89..b563c421564e 100644 --- a/source/_integrations/switch.command_line.markdown +++ b/source/_integrations/switch.command_line.markdown @@ -56,7 +56,7 @@ switches: description: The name used to display the switch in the frontend. required: false type: string - icon: + icon_template: description: Defines a template for the icon of the entity. required: false type: template diff --git a/source/_integrations/switch.markdown b/source/_integrations/switch.markdown index fd4fb074cc3d..19764e3176f6 100644 --- a/source/_integrations/switch.markdown +++ b/source/_integrations/switch.markdown @@ -33,4 +33,4 @@ In the frontend open the sidebar. At the bottom, under **Developer Tools**, clic | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | -| `entity_id` | no | The entity ID of the switch to control. To target all switches, set the entity ID to `all`| +| `entity_id` | no | String or list of strings that point at `entity_id`s of switches. To target all switches, set `entity_id` to `all`. diff --git a/source/_integrations/system_log.markdown b/source/_integrations/system_log.markdown index 6572ecdeefde..325f0a387472 100644 --- a/source/_integrations/system_log.markdown +++ b/source/_integrations/system_log.markdown @@ -8,7 +8,7 @@ ha_quality_scale: internal ha_domain: system_log --- -The `system_log` integration stores information about all logged errors and warnings in Home Assistant. To view your logs, navigate to **Configuration** -> **Logs**. In order to not overload Home Assistant with log data, only the 50 last errors and warnings will be stored. Older entries are automatically discarded from the log. It is possible to change the number of stored log entries using the parameter `max_entries`. +The `system_log` integration stores information about all logged errors and warnings in Home Assistant. To view your logs, navigate to **Configuration** -> **Settings** -> **Logs**. In order to not overload Home Assistant with log data, only the 50 last errors and warnings will be stored. Older entries are automatically discarded from the log. It is possible to change the number of stored log entries using the parameter `max_entries`. ## Configuration diff --git a/source/_integrations/tailscale.markdown b/source/_integrations/tailscale.markdown index cda49171b0ce..aa4068171eb5 100644 --- a/source/_integrations/tailscale.markdown +++ b/source/_integrations/tailscale.markdown @@ -21,6 +21,10 @@ The Tailscale integration integrates the [Tailscale](https://www.tailscale.com) with Home Assistant; giving you the possibility to monitor and automate on the state of the devices in your Tailscale VPN network (Tailnet). +Please, note that this integration integrates with data from the Tailscale API, +it is not a Tailscale client itself, and thus add Home Assistant to your +Tailscale VPN network. + ## Prerequisites To use the Tailscale integration, you will need to obtain an API key, diff --git a/source/_integrations/tuya.markdown b/source/_integrations/tuya.markdown index 5f3c1b743c63..7b37ac7d7dc2 100644 --- a/source/_integrations/tuya.markdown +++ b/source/_integrations/tuya.markdown @@ -100,10 +100,10 @@ Click the created project to enter the `Project Overview` page and get the `Auth description: Go to your cloud project on [Tuya IoT Platform](https://iot.tuya.com/). Find the **Access Secret** under [Authorization Key](#get-authorization-key) on the **Project Overview** tab. Account: - description: Tuya Smart or Smart Life app account. + description: Tuya Smart or Smart Life **app** account. Password: - description: The password of your app account. + description: The password of your **app** account. {% endconfiguration_basic %} diff --git a/source/_integrations/wled.markdown b/source/_integrations/wled.markdown index 1b568d3da7a7..f087720bd26e 100644 --- a/source/_integrations/wled.markdown +++ b/source/_integrations/wled.markdown @@ -143,3 +143,59 @@ data: ``` {% endraw %} + +### Activating a preset + +Activating a preset is an easy way to set a WLED light to a specific +configuration. Here is an example service call to set a WLED light +to a preset called My Preset: + +```yaml +- service: light.turn_on + target: + entity_id: light.wled +- service: select.select_option + target: + entity_id: select.wled_preset + data: + option: "My Preset" +``` + +### Automation Using Specific Palette Name + +An automation to turn on a WLED light and select a specific palette and +set intensity, and speed can be created by first calling the `light.turn_on` +service, then calling the `select.select_option` service to select the +palette, then call the `number.set_value` service to set the intensity +and again to set the speed. + +Here is an example of all of these put together into an automation: + +```yaml +- alias: "Turn on WLED rain effect when weather changes to rainy" + trigger: + - platform: state + entity_id: sensor.weather_condition + to: "rainy" + action: + - service: light.turn_on + target: + entity_id: light.wled + data: + effect: "Rain" + - service: select.select_option + target: + entity_id: select.wled_color_palette + data: + option: "Breeze" + - service: number.set_value + target: + entity_id: number.wled_intensity + data: + value: 200 + - service: number.set_value + target: + entity_id: number.wled_speed + data: + value: 255 +``` diff --git a/source/_integrations/zwave_js.markdown b/source/_integrations/zwave_js.markdown index 061cc4220c57..5a231111f63c 100644 --- a/source/_integrations/zwave_js.markdown +++ b/source/_integrations/zwave_js.markdown @@ -548,7 +548,7 @@ The Z-Wave network can be configured via the built-in Z-Wave JS control panel in **Option 3: The Zwavejs2Mqtt Docker container** -This is the recommended approach if you're running Home Assistant Container. See the [Zwavejs2Mqtt documentation](https://zwave-js.github.io/Zwavejs2Mqtt/#/getting-started/quick-start) for instructions. +This is the recommended approach if you're running Home Assistant Container. See the [Zwavejs2Mqtt documentation](https://zwave-js.github.io/zwavejs2mqtt/#/getting-started/quick-start) for instructions. This method provides the same server application and UI as the Zwavejs2Mqtt add-on. After installing the Docker image, make sure you enable the WS Server in the Home Assistant section of Settings page. @@ -680,8 +680,8 @@ Names set in Home Assistant will not import into Zwavejs2Mqtt. #### How can I add (include) a new device to my Z-Wave network? 1. In Home Assistant: open Configuration -> Integrations -> Z-Wave JS -> Configure. -2. Press `Add node`. -3. Press `Start Inclusion`. The Z-Wave controller is now in inclusion mode and will not respond to other commands. +2. Press `+ ADD DEVICE`. +3. The Z-Wave controller is now in inclusion mode and will not respond to other commands. 4. Put the device you want to add in inclusion mode. Refer to its manual how this is done. 5. The UI should confirm that the node was added and it will be immediately visible in Home Assistant. After a short while (seconds to minutes) the entities should also be created. 6. If the controller fails to add/find your device, cancel the inclusion process (to unblock your network again). In some cases it might help to first remove a node (exclusion) before you add it, even when the device has not been added to this Z-Wave network yet. Another approach would be to factory reset the device. Info about that is in the manual of your device. @@ -704,8 +704,8 @@ S2 security does not impose additional network traffic and provides additional b #### How do I remove (exclude) a device from my Z-Wave network? 1. In Home Assistant: open Configuration -> Integrations -> Z-Wave JS -> Configure. -2. Press `Remove node`. -3. Press `Start Exclusion`. The Z-Wave controller is now in exclusion mode and will not respond to other commands. +2. Press `REMOVE DEVICE`. +3. Press `START EXCLUSION`. The Z-Wave controller is now in exclusion mode and will not respond to other commands. 4. Put the device you want to remove in exclusion mode. Refer to its manual how this is done. 5. The UI should confirm that the node was removed and the device and entities will be removed from Home Assistant. @@ -755,4 +755,12 @@ If the interview is complete, then the device does not yet have a device file fo When trying to determine why something isn't working as you expect, or when reporting an issue with the integration, it is helpful to know what Z-Wave JS sees as the current state of your Z-Wave network. To get a dump of your current network state, follow the menu: -**Configuration** -> **Integrations** -> **Z-Wave JS** -> **Configure** -> **Download a dump of your network to help diagnose issues** \ No newline at end of file +**Configuration** -> **Integrations** -> **Z-Wave JS** -> **Configure** -> **Download a dump of your network to help diagnose issues** + +#### How to access the Z-Wave JS logs + +Z-Wave JS writes details to its logs. To access these logs go to the following. + + **Configuraton** -> **Devices & Services** -> **Integrations(tab)** -> **Z-Wave JS (CONFIGURE)** -> **Logs(tab)** + +You need to keep this browser tab open for logging to be active. diff --git a/source/_lovelace/area.markdown b/source/_lovelace/area.markdown index e4305f13e684..aea6c2dbc28e 100644 --- a/source/_lovelace/area.markdown +++ b/source/_lovelace/area.markdown @@ -17,7 +17,7 @@ To add the Area card to your user interface, click the Lovelace menu (three dots Buttons will appear on the card for the entities in the area including fan, light and switch. A motion sensor icon will appear in the top left if a motion sensor is in the area and motion is detected by the motion sensor. -If a camera is added to the area you can show the camera feed instead of the area pictue. +If a camera is added to the area you can show the camera feed instead of the area picture. {% configuration %} type: @@ -60,6 +60,6 @@ Complex example - type: area area: bedroom navigation_path: my_bedroom - show_camera:true + show_camera: true theme: green ``` diff --git a/source/_posts/2021-12-11-release-202112.markdown b/source/_posts/2021-12-11-release-202112.markdown index 22e45753cafc..cadfbbd0e725 100644 --- a/source/_posts/2021-12-11-release-202112.markdown +++ b/source/_posts/2021-12-11-release-202112.markdown @@ -57,6 +57,7 @@ holidays. So, the first release in 2022, will be Wednesday, 2 February 2022._ - [Release 2021.12.5 - December 23](#release-2021125---december-23) - [Release 2021.12.6 - December 27](#release-2021126---december-27) - [Release 2021.12.7 - December 29](#release-2021127---december-29) +- [Release 2021.12.8 - January 4](#release-2021128---january-4) - [If you need help...](#if-you-need-help) - [Breaking Changes](#breaking-changes) - [Updates for custom integration developers](#updates-for-custom-integration-developers) @@ -812,6 +813,98 @@ like before. Done by [@marvin-w]. [sonos docs]: /integrations/sonos/ [tuya docs]: /integrations/tuya/ +## Release 2021.12.8 - January 4 + +- Update version of iZone library to add some bug fixes ([@Swamp-Ig] - [#61548]) ([izone docs]) +- Fix Tuya vacuum display battery level ([@dougiteixeira] - [#61643]) ([tuya docs]) +- Update no_ip URL ([@fabaff] - [#62477]) ([no_ip docs]) +- Do not create a number LED brightness entity for Xiaomi Miio devices that do not support it ([@bieniu] - [#62819]) ([xiaomi_miio docs]) +- Fix local_ip handling in KNX options flow ([@marvin-w] - [#62969]) ([knx docs]) +- Fix reporting correct colormode for 3rd party Hue lights ([@marcelveldt] - [#63015]) ([hue docs]) +- Hue allow per-device availability override ([@marcelveldt] - [#63025]) ([hue docs]) +- Bump pyatmo to 6.2.1 ([@cgtobi] - [#62291]) ([netatmo docs]) +- Bump pyatmo to v6.2.2 ([@cgtobi] - [#63053]) ([netatmo docs]) +- Ignore serial number "blank" from NUT ([@ollo69] - [#63066]) ([nut docs]) +- Bump greeclimate to 1.0.1 ([@cmroche] - [#63092]) ([gree docs]) +- Fix Shelly error fetching device triggers for sleeping devices ([@thecode] - [#63103]) ([shelly docs]) +- Fix systemmonitor CPU temp for Armbian on PineA64 ([@ktaragorn] - [#63111]) ([systemmonitor docs]) +- Fix CO/CO2 sensors mixup in Google Assistant ([@ryborg] - [#63152]) ([google_assistant docs]) +- Bump flux_led to 0.27.28 to fix missing white channel on SK6812RGBW strips ([@bdraco] - [#63154]) ([flux_led docs]) +- Add default Fronius logger model for v0 API ([@trdischat] - [#63184]) ([fronius docs]) +- Prevent doorbird integration from overloading the device on startup ([@bdraco] - [#63253]) ([doorbird docs]) +- Bump flux_led to 0.27.32 to fix incorrect strip order on A2 devices ([@bdraco] - [#63262]) ([flux_led docs]) +- Sisyphus: Fix bad super call ([@balloob] - [#63327]) ([sisyphus docs]) +- Fix status type in Shelly climate platform ([@bieniu] - [#63347]) ([shelly docs]) +- Bump micloud to 0.5 ([@starkillerOG] - [#63348]) ([xiaomi_miio docs]) +- Work around ingress glitch with 304 responses ([@masto] - [#63355]) ([hassio docs]) +- Fix Hue grouped light color_mode calculation ([@marcelveldt] - [#63374]) ([hue docs]) +- Fix missing timezone in GTFS timestamp sensor ([@frenck] - [#63401]) ([gtfs docs]) +- Handle missing monitored users in Plex options ([#63411]) [@jjlawren] +- Handle no enabled ipv4 addresses in the network integration ([#63416]) [@bdraco] + +[#63411]: https://github.com/home-assistant/core/pull/63411 +[#63416]: https://github.com/home-assistant/core/pull/63416 +[#61548]: https://github.com/home-assistant/core/pull/61548 +[#61643]: https://github.com/home-assistant/core/pull/61643 +[#62291]: https://github.com/home-assistant/core/pull/62291 +[#62477]: https://github.com/home-assistant/core/pull/62477 +[#62819]: https://github.com/home-assistant/core/pull/62819 +[#62969]: https://github.com/home-assistant/core/pull/62969 +[#63015]: https://github.com/home-assistant/core/pull/63015 +[#63025]: https://github.com/home-assistant/core/pull/63025 +[#63053]: https://github.com/home-assistant/core/pull/63053 +[#63066]: https://github.com/home-assistant/core/pull/63066 +[#63092]: https://github.com/home-assistant/core/pull/63092 +[#63103]: https://github.com/home-assistant/core/pull/63103 +[#63111]: https://github.com/home-assistant/core/pull/63111 +[#63152]: https://github.com/home-assistant/core/pull/63152 +[#63154]: https://github.com/home-assistant/core/pull/63154 +[#63184]: https://github.com/home-assistant/core/pull/63184 +[#63253]: https://github.com/home-assistant/core/pull/63253 +[#63262]: https://github.com/home-assistant/core/pull/63262 +[#63327]: https://github.com/home-assistant/core/pull/63327 +[#63347]: https://github.com/home-assistant/core/pull/63347 +[#63348]: https://github.com/home-assistant/core/pull/63348 +[#63355]: https://github.com/home-assistant/core/pull/63355 +[#63374]: https://github.com/home-assistant/core/pull/63374 +[#63401]: https://github.com/home-assistant/core/pull/63401 +[@Swamp-Ig]: https://github.com/Swamp-Ig +[@balloob]: https://github.com/balloob +[@bdraco]: https://github.com/bdraco +[@bieniu]: https://github.com/bieniu +[@cgtobi]: https://github.com/cgtobi +[@cmroche]: https://github.com/cmroche +[@dougiteixeira]: https://github.com/dougiteixeira +[@fabaff]: https://github.com/fabaff +[@frenck]: https://github.com/frenck +[@ktaragorn]: https://github.com/ktaragorn +[@marcelveldt]: https://github.com/marcelveldt +[@marvin-w]: https://github.com/marvin-w +[@masto]: https://github.com/masto +[@ollo69]: https://github.com/ollo69 +[@ryborg]: https://github.com/ryborg +[@starkillerOG]: https://github.com/starkillerOG +[@thecode]: https://github.com/thecode +[@trdischat]: https://github.com/trdischat +[doorbird docs]: /integrations/doorbird/ +[flux_led docs]: /integrations/flux_led/ +[fronius docs]: /integrations/fronius/ +[google_assistant docs]: /integrations/google_assistant/ +[gree docs]: /integrations/gree/ +[gtfs docs]: /integrations/gtfs/ +[hassio docs]: /integrations/hassio/ +[hue docs]: /integrations/hue/ +[izone docs]: /integrations/izone/ +[knx docs]: /integrations/knx/ +[netatmo docs]: /integrations/netatmo/ +[no_ip docs]: /integrations/no_ip/ +[nut docs]: /integrations/nut/ +[shelly docs]: /integrations/shelly/ +[sisyphus docs]: /integrations/sisyphus/ +[systemmonitor docs]: /integrations/systemmonitor/ +[tuya docs]: /integrations/tuya/ +[xiaomi_miio docs]: /integrations/xiaomi_miio/ + ## If you need help... ...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e). diff --git a/source/_posts/2022-01-07-android-quest.markdown b/source/_posts/2022-01-07-android-quest.markdown new file mode 100644 index 000000000000..374156fbad98 --- /dev/null +++ b/source/_posts/2022-01-07-android-quest.markdown @@ -0,0 +1,75 @@ +--- +title: "Oculus Quest Meet the Smart Home!" +description: "Automate your home based on how you use your Quest!" +date: 2022-01-07 00:00:00 +date_formatted: "January 07, 2022" +comments: true +author: Daniel Shokouhi +categories: Release-Notes +og_image: /images/blog/2022-01-android-quest/quest_sensors.png +--- + + +![Screenshot of the Android app](/images/blog/2022-01-android/quest_sensors.png) + +Hey Everyone! We hope you all had a great new years and holidays spent with the family! This past holiday season had some pretty cool toys going around. Cool toys to us mean more things to tinker with. One of the most popular gifts this year was no doubt the Oculus Quest and to be honest, how could it not be right? + +Naturally, working on the Android app some of us wondered how does the app perform on such a device? Well, it actually works pretty well and you can start building automations based on your usage today! + +Get it on SideQuest + + +## Oculus Quest data in Home Assistant + +Home Assistant Companion for Quest gives you access in Home Assistant to over 40 data points about your headset. For example, our [interactive sensor] updates as soon as the screen comes on, which means you're wearing the headset. This allows you to make sure your lights are bright enough to play VR. + +Ever play on your headset until it dies and then sits around waiting for it to charge up? Using the battery sensors you can get notified when your headset is fully charged and ready to play that next round. + +Keep the music on in the background while you are playing? Automate your media player volume level based on whether your Quest microphone is muted. + +It is not all about automations either. You can open the Home Assistant interface on your Quest (in 2D) and see who rang the doorbell. You can even talk back if your doorbell supports it! + +We are just getting started with things. As usual our users are really good at finding more unique use cases that we didn't even consider. So get your device [set up with Sidequest], [install the app] and start automating today! + +![Screenshot of App on Quest](/images/blog/2022-01-android/app_on_quest.png) + +## Hello Sidequest! + +Wait Sidequest, what is that? Sidequest is the alternative App Store for the Oculus Quest. + +In VR terminology our app is a "2D app". The official Oculus Quest store only recently started allowing 2D apps and we are still working on a version that meets their requirements. So while we are waiting, we wanted to release something so we can get feedback how you are using it to automate things. + +The app on Sidequest is the [minimal version] of the Home Assistant Companion Android app. While the Quest runs Android, it doesn't have the Google services. This means no widgets, no shortcuts, and no support for the standard notifications. + +## 2022.1 Release for Android + +We can't just make a post like this and ignore the new release for the Phone app that just went out the other day without highlighting it right?! While the 2022.1 release may not be as jam-packed as 2021.12 we do still have some neat features to cover. + +* A new sensor to determine if your devices [work profile] is active by [zmarties]. This sensor will update as soon as a state change is detected allowing you to make unique automations based on the profile being active. +* [dshokouhi] has added a new sensor allowing you to see what the [Last Used App] was. Pair this new sensor with the Quest and you can make specific automations based on what game you are currently playing! + +![Screenshot of Last Used App](/images/blog/2022-01-android/last_used_app.png) + +* [jpelgrom] has worked on our WebSocket implementation to finally bring in areas to the app. Device controls are the first feature to get area support so you can easily add entities from areas. The area will also be shown in the device control button itself. Be on the lookout for more area support in other parts of the app as it should make finding entities a lot easier. +* [JBassett] has also made more progress on the WebSocket implementation by bringing in better error handling to prevent the application from crashing and producing a lot of unnecessary errors. +* For the Wear OS app [SkechyWolf] has added support for the back button to properly function and exit the app. + +A big thank you to all of our contributors and users for bringing in awesome features and great feedback/bugs. We look forward to improving the android app even further in 2022! As always please remember to add your feature requests and bugs to GitHub. + +## Changelog + +- 2022.1.1 - https://github.com/home-assistant/android/releases/tag/2022.1.1 + + +[zmarties]: https://github.com/zmarties +[dshokouhi]: https://github.com/dshokouhi +[JBassett]: https://github.com/JBassett +[SkechyWolf]: https://github.com/SkechyWolf +[jpelgrom]: https://github.com/jpelgrom +[set up with Sidequest]: https://sidequestvr.com/setup-howto +[install the app]: https://sidequestvr.com/app/6427/home-assistant +[work profile]: https://companion.home-assistant.io/docs/core/sensors#work-profile-sensor +[Last Used App]: https://companion.home-assistant.io/docs/core/sensors#last-used-app-sensor +[minimal version]: https://companion.home-assistant.io/docs/core/android-flavors +[interactive sensor]: https://companion.home-assistant.io/docs/core/sensors#interactive-sensor +[good lighting]: https://support.oculus.com/articles/headsets-and-accessories/using-your-headset/turn-off-tracking/ diff --git a/source/images/blog/2022-01-android/Companion.png b/source/images/blog/2022-01-android/Companion.png new file mode 100755 index 000000000000..dd20c7005687 Binary files /dev/null and b/source/images/blog/2022-01-android/Companion.png differ diff --git a/source/images/blog/2022-01-android/app_on_quest.png b/source/images/blog/2022-01-android/app_on_quest.png new file mode 100755 index 000000000000..799ee4a9e781 Binary files /dev/null and b/source/images/blog/2022-01-android/app_on_quest.png differ diff --git a/source/images/blog/2022-01-android/last_used_app.png b/source/images/blog/2022-01-android/last_used_app.png new file mode 100755 index 000000000000..2c516815e12e Binary files /dev/null and b/source/images/blog/2022-01-android/last_used_app.png differ diff --git a/source/images/blog/2022-01-android/quest_sensors.png b/source/images/blog/2022-01-android/quest_sensors.png new file mode 100755 index 000000000000..dda0024d6581 Binary files /dev/null and b/source/images/blog/2022-01-android/quest_sensors.png differ diff --git a/source/images/isy994/isy994_switch_variable_example.png b/source/images/isy994/isy994_switch_variable_example.png new file mode 100644 index 000000000000..bdd0700471c4 Binary files /dev/null and b/source/images/isy994/isy994_switch_variable_example.png differ diff --git a/source/images/screenshots/cover_classes_icons.png b/source/images/screenshots/cover_classes_icons.png new file mode 100644 index 000000000000..0897bddb8b6b Binary files /dev/null and b/source/images/screenshots/cover_classes_icons.png differ