2022.2: Let’s start streamlining!

I’m not sure if this is really fitting; it is February already… but since
this is the first release of the year, I’m going to say it anyway:

Happy New Year 🥂

And, since we have skipped the January release, this release became a big one.
Over 2,500 contributions make this release the largest one we have ever
shipped! Including 15 brand-new integrations and 13 existing integrations,
which are now available to set up via the user interface.

Now don’t be scared when you look at the breaking changes section. It is a lot,
however, most of those are cleanup of old deprecations, or caused by things
moving to the UI. No better way to start a fresh year, than by cleaning up 🧹

By the way, in case you’ve missed it, @balloob published a blog post last
week about the focus for Home Assistant in 2022: Streamlining Experiences.
I’m stoked about it, and am really looking forward to what this year will do
for Home Assistant! Go 2022!

What is your new years’ resolution for your smart home this year?

Enjoy the release!

../Frenck

Updates from Nabu Casa

Before we dive into this release, we have some news and updates from
Nabu Casa to share with you.

Annual subscriptions now available for the United States

The ability to subscribe to Home Assistant Cloud
anually, was one of the most requested features since Nabu Casa was founded and has been
announced at the State of the Open Home in December.

As of today, annual subscriptions to Home Assistant Cloud are available
for the United States. 🎉

Read more about the announcement on the Nabu Casa website

Improved infrastructure

Nabu Casa’s new payment system is part of revamped cloud system that they are
rolling out, and this will bring more improvements to the Home Assistant Cloud
services.

They already improved our remote access infrastructure to make sure it’s routing
as close to you as possible. Last week they rolled out improvements
to the infrastructure that significantly improved the speed of the
Google Assistant and Amazon Alexa integrations.

Zack Barett and Mike Degatano join Nabu Casa

We are also happy to announce Zack Barett and
Mike Degatano will be joining Nabu Casa to work
on Home Assistant.

Zack will be helping out on different aspects of Home Assistant, including the
Home Assistant YouTube channel,
and the Home Assistant Frontend.

Mike is going to be focusing on extending and improving the Home Assistant
Supervisor and the eco system around it (like its internal plugins and add-ons).

Welcome! Excited to have you on board! 🎉

Media improvements

The media browser has been renamed to: “Media”. Nice, simple, and clean.

And, it now has a nice media bar in the bottom to control the media you
are playing:

Screenshot showing media with the new media bar

The experience of browsing the media has been improved and extended with new
capabilities. The URL in your browser will change when browsing media, so you
can now bookmark these pages. An integration can now browse media of supported
sources provided by other integrations.

For example, if you have set up the Spotify and Sonos integration, you can now
browse your Spotify to play it on your Sonos devices; and Cast now has support
for playing Plex media straight from the browser.

Sonos, VLC (via Telnet), and Roku added support for playing local media! Combining
this with the VLC add-on can turn your Home Assistant device into a
media player for your local media. In the video below, Zack will demonstrate how
that works:

Check for updates

A common question, directly seen after a Home Assistant Core, Operating System,
or add-on release announcement: “I don’t see the update yet? How do I update?”

Checking for updates is done by your system – every few hours – automatically.
However, you sometimes want to check for updates without waiting for
this to happen.

This made us realize that doing that was scattered and hidden in several places
depending on which part you wanted to check updates for. Therefore, we
have added a nice and simple “Check for updates” button in the main
configuration screen.

Screenshot showing the new Check for Updates button in the configuration screen
Checking for any update is now just a single click.

This feature is currently available for the Home Assistant OS,
and Home Assistant Supervised installation methods.

Diagnostics for integrations and devices

To make debugging and reporting issues with integrations or devices easier,
both in terms of reporting it, and for developers to fix them, we introduce:
Diagnostics.

Diagnostics can be provided by integrations and allow you to download diagnostic
information about an integration or device you have set up.

Screenshot showing the Download Diagnostics button on a Sonos device page
Screenshot of the Download Diagnostics button on the device page

The downloadable diagnostics file can be viewed as a text file,
and can be shared when reporting an issue in our issue tracker.

Diagnostics data can be extremely helpful in finding the root causes of
an issue and getting them fixed. As a matter of fact, it helped us pinpointing
and fixing issues during the beta of this release.

The good news is that 61! integrations already added support for this new
diagnostics feature, including Z-Wave JS, ESPHome, Sonos, Shelly, WLED,
Unifi, Nest, deCONZ, KNX, Tuya, Roku, Samsung TV, and many more!

Finding known issues and where to report new ones

Are you experiencing an issue with an integration? Want to know if your issue
is already known and reported? Or, maybe you are not sure where our
issue tracker can be found?

We added a small menu option to each integration, helping with that.

Screenshot showing the known issues menu item an integration card
Clicking the “Known issues” item will open up our issue tracker for this integration.

This button will bring you to our issue tracker, showing all currently known
and open issues for this integration.

Is your issue not listed? Well, if this integration provides diagnostics,
download those. Next, go back to issue tracker, using the new known issues link,
and click the “New issue” button in the top right corner to report your issue.
Fill out the form and attach the diagnostics file by dragging and
dropping it into the form.

Improved handling of device tracker entities

If you run an integration that provides device trackers from your router or
something like the UniFi Network integration, you are probably aware those
can create many entities!

This has been improved now. As of today, by default, only device tracker
entities that match up with an existing – known by Home Assistant – device
will be enabled by default. This keeps Home Assistant nice and tidy.

If Home Assistant does not know the device, but you still would like to track
a specific one, that is still possible. In that case, you can enable the
particular device tracker entities you’d like to have.

Scenes now have a state

Scenes never had a state, well that is not entirely true, it would always
say: “scening”.

To make the state of a scene more valuable, it will now have the last timestamp
of when the scene was activated. This has a couple of advantages:

  • You can see when a scene was last activated.
  • History of when a scene was activated in the logbook, and who did that.
  • You can now automate on a scene being activated.

The last one is pretty useful as a scene can now be used to trigger even more
actions via automations. For example, you could start playing media or send
a TTS announcement when a scene activated.

Screenshot of the logbook of a scene
Now the scene has a state; it also got logbook entries.

Search in the configuration panel

There is now a search in the top right of the configuration dashboard, which
opens the Quick Bar. This also works on mobile devices.

It allows you to access and search for just about anything within
Home Assistant. From accessing add-ons, configuration panels,
and even entities and devices.

Screenshot showing the new search in the configuration screen

Tip: Did you know you can press c (for command) and e (for entity) on you
keyboard from anywhere in Home Assistant to bring up that same Quick Bar?

Button helper and template

In the previous release, we introduced
the button entity. One of the most asked questions about the button has been:
“How can I create my own button entity?”

This release introduces the button helper, and those can be created via
the UI and using YAML ( as the input_button).

These button helpers can be used to trigger automations and we have ensured they
work with Alexa, Google Assistant, and HomeKit.

Additionally, there is now a template entity for buttons available as well.
Here is an example:

# Example configuration.yaml
template:
  button:
    - name: "Send message"
      press:
        - service: notify.frenck
          data:
            message: "My button has been pressed!"

Templating enhancements

There are a couple of nice enhancements to this release for the more advanced
use cases that stand out.

Shorthand condition notations in actions

Shorthand condition notations are pretty helpful and are now supported in
conditions actions; For use in automations and scripts.

For example:

sequence:
  - condition: "{{ is_state('device_tracker.iphone', 'away') }}"

Immediate if (iif)

We now have an immediate if (iif)
template function and filter that can be used as a short alternative version
to an if/else statement.

These can help shortening a lot of if/else constructs that for example, return
a “Yes” or “No” (or similar) value in templates. Some examples:

{{ iif(is_state('light.kitchen', 'on'), 'Yes', 'No') }}
{{ is_state('light.kitchen', 'on') | iif('Yes', 'No') }}
{{ (state('light.kitchen') == 'on') | iif('Yes', 'No') }}

Streamlining Experiences

With Home Assistant the last few years we’ve been focusing on making things easier, stable, and faster. More things can be managed via the UI, most YAML-based integrations can be reloaded without restarting and if something breaks, safe mode and built-in backups have your back.

We have amazing contributors who work on making Home Assistant better every single day. However, you can’t keep growing by adding new things in the same structure. An interface made for 4 items will become confusing once the 10th item is added (like our profile page). A veteran Home Assistant user might be fine because they have seen the growth feature by feature and know exactly where to find what. For new users it is overwhelming.

For 2022 the motto will be “streamlining experiences”. We want to better organize and integrate all the different features that make up Home Assistant.

For example, there should be a built-in way, for both YAML and the UI, to easily send a notification with a camera snapshot to your phone, pick a song to play for an automation, or use text-to-speech to notify you when something is happening. All these things are possible today but require too much knowledge of how the various parts work.

We’ll have 11 releases this year and each release should streamline more things.

Have a good and healthy 2022 and see you at our first release on February 2!

Paulus

Get-it-on-SIDEQUEST

Oculus Quest Meet the Smart Home!

Screenshot of the Android app

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

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

  • 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
Overview of their deployment

Energy management research using Home Assistant

Two weeks ago we hosted the State of the Open Home. It included a presentation by Prof. Michael Kane and Maharsi Pathak from the department of Civil and Environmental Engineering at Northeastern University.

They presented about their research into lowering grid demand by reducing thermostat temperatures. They want to learn when and why a reduced temperature is too uncomfortable causing tenants to become thermally frustrated and reverting the reduction.

With Home Assistant we want every home to be about privacy, choice and durability and it’s how we built Home Assistant. Because we believe in choice, all data in Home Assistant is accessible and one can extend or built on top of our platform.

This architecture made it possible for Prof. Kane to create a custom version of Home Assistant for his research that gathers data about all devices, surveys users based on changes to devices and exports all this data back to their research lab. For this they leverage device integrations, added a custom survey feature to the UI and push notifications from the Home Assistant companion app to draw the user’s attention to the surveys.

But what makes me extra happy is that their research is focusing on home energy management. This has been a feature we added to Home Assistant in 2020 as our way to help tackle the climate crisis. It makes me proud to see that we are able to help researchers do their work and we hope to see more of this. We’re also looking forward to collaborating with Prof. Kane on using his research to improve Home Assistant.

Overview of their deployment

The Open Home

The Open Home is our vision for the smart home. It defines the values that we put at the heart of every decision we make at Home Assistant. It’s woven into our architecture, licensing, community and everything else.

The Open Home is about privacy, choice and durability.

If you prefer video, skip to the end.

Privacy

Your home should be your safe space. A place where you can be your true self without having to bother about what the world thinks of you. A place where you don’t need to act differently to avoid an algorithm categorizing your behavior.

Privacy for the Open Home means that devices need to work locally. No one else needs to know if you turn on a light bulb or change the thermostat.

It is okay for a product to offer a cloud connection, but it should be extra and opt-in.

Choice

Devices in your home gather data about itself and their surroundings. Your data. Vendors shouldn’t be able to limit your access to your data or limit the interoperability of your devices with the rest of your smart home.

Choice for the Open Home means that devices need to make the gathered data available through local APIs. This avoids vendor lock-in and allows users to create their own smart home with devices from different manufacturers.

Durability

If there is one thing that technology firms are very good at, it is launching new products. However, maintaining the products and making sure they keep working is an afterthought for most. The result is that vendors can decide to no longer support your device, crippling it’s features or even prevent it from working at all.

As we install more and more devices in our home, durability is becoming more and more important. We shouldn’t have to buy everything new every couple of years because the manufacturer decided to move on.

Durability for the Open Home means that devices are designed and built to keep working. Not just this year, but for the next decade.

State of the Open Home

At the State of the Open Home, we presented our vision and how we, together with our friends from open source and academia, are working towards achieving it.

Genie logo

Demo: Genie, privacy-preserving virtual assistant by Stanford

Last week we hosted the State of the Open Home and it included a demo of Genie.

Genie is an open, privacy-preserving virtual assistant by Stanford OVAL. During the impressive demo they showed it’s latest capabilities. The demos run on a Baidu speaker with custom firmware and on a Pi Zero. In both cases it connects to the Genie server running as an official Home Assistant add-on to do it’s magic.

Genie is the successor to the Almond project. With the help of various grants and sponsors Stanford is working on making Genie ready for general use.

If you want to learn more, check out the Genie website and the getting started guide on how to make your own. To get in touch with other Genie users and their dev team, check their Discord
or community forums.

If you end up using Genie at home, don’t forget to share the love and share your demo’s and tutorials.

Genie logo

en_badge_web_generic

Android 2021.12: Wear OS Beta!

Screenshot of the Android app

Hey Everyone! It’s time for the December 2021 Android release. It has been a while since the last Android release as the team has been very busy working on many new and exciting features. To kick things off we would like to announce that there is now a Wear OS app that you can find in the Play Store alongside todays phone app release!

Get it on Google Play

Wear OS Beta

For the past couple of months the Android repo has been seeing a lot new contributors coming and bringing in some amazing work. There is now a Wear OS Beta app released in the Play Store! A big thank you to leroyboerefijn, dshokouhi, JBassett, Kisty, apo-mak,
SkechyWolf and HunterX86 for all your hard work! A lot of work has been done to share the codebase between the phone and the watch because we wanted the watch to also have a standalone experience in case you are not near your phone. The app will remain as a Beta for several months but we feel in its current state it is ready for you to enjoy. The reason we have decided to keep it with a beta label for now is because there is more work to be done and some of the underlying libraries being used have not received a stable release yet.

Screenshot of Wear OS on wrist

As of today you can login to the app using either the watch or you can open up the phone app and head over to App Configuration and login using the new Wear OS settings section! Once you are logged in you will see a brief loading screen while we get your entities ready. To avoid some of the loading delays we have a Favorites feature that will allow you to add your most used entities to appear at the top of the app for quick and easy access. You can add/remove these entities using the Settings screen in the watch app or you can add/remove and change the order using the phone app. We highly recommend setting up your favorite entities as they will be available during the loading process.

Screenshot of Wear OS Home Screen
Screenshot of Wear OS Home Screen

The Wear OS app also offers a tile for even faster access to execute or toggle your devices without needing to open the app. You can select up to 7 entities to toggle or execute inside the settings portion of the app. We recommend using custom MDI icons to easily distinguish between your entities as the default will make it hard to tell apart when you have 2 lights side by side.

Screenshot of Wear OS Tile
Screenshot of Wear OS Tile

Initial support for sensors has also been added! Upon logging in the default battery sensors will be registered in your Home Assistant server. The app will wait for a network connection to provide an update so you won’t have to worry about it constantly maintaining a connection. Soon we will be looking into adding a UI to enable/disable sensors as well as evaluating all current phone sensors and adding whichever ones we can!

One thing to keep in mind is that its important to ensure both the phone and watch are on the same version in order for some of the features to work as expected. Feel free to join the beta and help development by finding bugs and submitting feature requests! Be on the look out for future updates to the Wear OS app!

Screenshot of Wear OS Settings in Phone app
Screenshot of Wear OS Settings in Phone app

Websockets and Instant Widget Updates

A very big internal feature was also added to both apps this release and that is the introduction of websockets! Websockets is one of the many APIs that Home Assistant offers. With this new API the app can now do cool things like register for entity updates to have instant widgets! Previous versions of the app relied on the Home Assistant REST API to do things like get an entity state or execute a service call. Now with websockets the app will no longer need to poll the server requesting for entity updates as needed, instead we now get a constant stream of entity updates. This allows us to keep your widgets up to date with the latest state or template and also allows us to keep the Android Power Menu up to date. The Wear OS app also benefits by having instant updates on the home screen.

GIF of instant updates
GIF of instant updates

There is still a lot more to be done with respect to websockets but the good news is that foundation is there for more developers to come and consume the API. We have already seen some interest and PRs so I would expect this feature to improve even further over time! Big thank you to JBassett for getting this done!

Theme and UI Updates

In this release we had a lot of changes being done to the overall theme of the app to better fit with the design of the Home Assistant frontend theme. The status and navigation bar will now match your theme of choice. The overall loading experience has also had some improvements to align more closely to the browser loading experience. Thank you to LasseRosenow for all your hard work here!

With the release of Jetpack Compose we have decided to start migrating all UI elements to Compose. If you are familiar with Android Development then you will remember that the UI is always built with XML and then referenced in your activities/fragments. Now with Compose, XML is no longer needed and bulding robust UI’s becomes a breeze. We find these new libraries to be very easy to use and it has allowed us to improve upon our internal architecture to make things easier for new and upcoming features.

In the phone app the entire onboarding experience has been rewritten in Compose, including a brand new welcome screen to help first time users understand what Home Assistant is all about. The notification detail page found in notification history has also received a compose update. The Wear OS home screen is actually built using compose including the new settings screens found in the phone app.

Screenshot of welcome screen
Screenshot of welcome screen

Other Changes

With so many changes since the last update its impossible to list all of the other cool new features but here is a list of some welcomed improvements:

  • New sensor to report the state of High Accuracy Mode by dshokouhi
  • New notification parameters to change the Status Bar Icon and also to alert once for any given notification by dshokouhi
  • New WebView settings to keep the screen on and to auto play videos by dshokouhi and skynetua
  • New notification command to keep the screen on by skynetua
  • Updated notification commands to accept URL encoding in extras by mvn23
  • BLE Transmitter improvements to power output and adverister mode by Alfiegerner and amadeo-alex
  • Quick Settings Tile limit increased from 5 to 12 by dshokouhi
  • Support for Android 12 by dshokouhi
  • Updated design for Media Player Widget by jannis3005

Screenshot of Media Player Widget
Screenshot of Media Player Widget

  • Support for cookie based authentication by duncf
  • Setting to always try the internal URL first. This is helpful to those who like to leave location off by dshokouhi
  • Support for entity category and state class in sensors by dshokouhi

Big thank you to everyone involved. Please keep those bug reports and feature requests coming! Be sure to watch the State of the Open Home address for what to expect in 2022 and a live demo of some of the features above!

Changelog

  • 2021.5.1 – https://github.com/home-assistant/android/releases/tag/2021.5.1
  • 2021.6.2 – https://github.com/home-assistant/android/releases/tag/2021.6.2
  • 2021.9.0 – https://github.com/home-assistant/android/releases/tag/2021.9.0
  • 2021.10.0 – https://github.com/home-assistant/android/releases/tag/2021.10.0
  • 2021.12.0 – https://github.com/home-assistant/android/releases/tag/2021.12.0

2021.12: New configuration menu, the button entity, and gorgeous area cards!

Home Assistant Core 2021.12, the final release of the year 2021; And
I really think this release will contain a holiday gift for everyone!

With the holiday season coming, it is time to slow down a bit for the project,
and enjoy time with our family. In a couple of weeks, 2022 will be here!

All I want to add to these last release notes of 2021 is: Thank you.

Thank you for hanging out with the project. Thank you for contributing, and
thank you for reporting an issue. Thank you for helping out a fellow Home
Assistant user on the forum, chat, Reddit, or anywhere else. Thank you for
sharing your experiences, ideas, automations, scripts, YouTube videos,
and blogs; and above all:
Thank you for using Home Assistant ❤️

Happy holidays and for the last time in 2021: Enjoy the release!

../Frenck

PS: We are skipping the January release because of the
holidays. So, the first release in 2022, will be Wednesday, 2 February 2022.

Brand new configuration panel

The configuration panel has been revamped. Everything is more compact and
categorized. A bit of added color so you can recognize the item you need more
quickly.

Screenshot of the new areas panel

The Supervisor panel and its sidebar item have been removed, and the panel
has been merged into the configuration panel. All OS, Core & Add-on
updates are now shown in the top of the configuration panel.

If you are using our Android, iOS, or macOS Companion apps, the sidebar menu
to configure those has also been moved into the configuration panel.

All configuration related items, neatly organized in a single place 🤘

The button entity

Introducing a new entity: the button entity.
Yes, it’s a button. What can you do with it? Press it!

We already have a switch entity in Home Assistant, but a switch has a state;
switches are either on or off. A button, however, is a push-button, like a
stateless or momentary switch.

Button entities can be provided by integrations and can be used for things like:

Examples use cases of button entities
Examples use cases of button entities.

These are all things that can be triggered from Home Assistant but do not
really have explicit on or off states.

We have added support for this button entity to Google Assistant, Alexa and
HomeKit; allowing you to “press” those buttons from your favorite voice
assistant.

For this release, MQTT & KNX added support for providing buttons. The Shelly,
WLED, Elgato, Litter-Robot, TOLO Sauna, Tuya, Renault, and NAM integrations
have added button entities.

Additionally, ESPHome 2021.12
has added full support for buttons too! Besides adding a restart button,
you can now create button entities from ESPHome to trigger something on
your DIY project from Home Assistant.

Redesigned area panel and the area Lovelace card

The area panel has been redesigned. Instead of a list of areas, it now
shows a card for each area. The card shows a picture of the area.

Wait, a picture? Yes! You can now upload a picture for your area straight
from the Home Assistant frontend. So, you can make it look something like this:

Screenshot of the new areas panel

But that is not all, @zsarnett created a brand new area Lovelace card.
This card will use the picture you’ve uploaded for your area, and it
automatically populates with entities of devices you have assigned
to that specific area.

Screenshot of a new area Lovelace card
Screenshot of a new area Lovelace card.

Users that can only log in from the local network

This new feature allows you to make users that are only allowed to log in
from the local network and not from the internet or cloud.

This can be useful if you have users that are not always at your home or
a dedicated user for a wall tablet that never needs to log in remotely.

Screenshot of user configuration in Home Assistant with local only enabled.

Z-Wave JS SmartStart and entity categories

Setting up your Z-Wave device with Home Assistant is now easier than ever,
as Z-Wave JS now supports Z-Wave SmartStart!

When you have a SmartStart capable Z-Wave stick and device, you can now
set up the device by simply scanning the QR code on the device, using your
webcam, or using your mobile phone with the Home Assistant Companion app.

Including devices to your Z-Wave network has never been easier.

Screenshot of scanning the QR code to add a Z-Wave SmartStart device in Home Assistant.

Additionally, Z-Wave JS had added support for entity categories, so
all your Z-Wave sensors are now neatly organized.

Blueprint scripts

This was actually in Home Assistant Core 2021.11 release, but we forgot to
mention it completely… Shame on us… Retry!

You can now create, provide, share Blueprints for scripts! This works
the same as with automations, except… well, it provides a script instead.

Script blueprints can be shared and imported, exactly like we do with
automations now. These can be really helpful to provide to other Home Assistant
users, as these scripts can be re-used in, e.g., other automations.

Triggering on any, but only state changes

Until now, writing automations that trigger on any state change of an entity,
but not on any attribute changes, was nearly impossible without adding
additional conditions.

We have now added a way to trigger on any state change, regardless of the state,
without triggering on attribute changes. If you set from or to, and
leave it empty, it will match any state but ignore attributes.

automation:
  trigger:
    - platform: state
      entity_id: media_player.living_room
      to: ~

The above example will only trigger if the state of the living room media
player changes, but not if any of its attributes change.

The same syntax is also supported for attributes. To trigger on all changes of
a specific attribute, you can use a similar syntax:

automation:
  trigger:
    - platform: state
      entity_id: media_player.living_room
      attribute: volume_level
      to: ~

The above example will only trigger if the volume level of the living room
media player changes.

Cast issues resolved

You might be aware of issues with using the Google Cast features
in Home Assistant. For example, casting a Lovelace dashboard didn’t
work as reliably as it should have been.

We have some good news, these casting issues have been resolved!

Although a bugfix, we think the impact was significant enough to warrant
its mention in the release notes.

Other noteworthy changes

There is much more juice in this release; here are some of the other
noteworthy changes this release:

  • The Hue integration now only uses the v2 API when talking to compatible hubs.
    This means that all light updates and remote presses are instantly available
    in Home Assistant, and scenes are now also natively supported.
    Amazing job, thanks @marcelveldt!
  • @farmio completely rewrote the Fronius integration adding support
    for all the latest, and greatest Home Assistant offers. Nice!
  • Besides supporting the new button entity, ESPHome now also supports
    setting the mode and unit of measurement on number entities.
    Thanks, @jesserockz!
  • Magic Home (Flux LED) got lots of love from @bdraco, adding support
    for new devices and features along the way.
  • @jbouwh improved the as_datetime template method, which now supports
    the UNIX timestamp.
  • The motionEye integration added sensors and service, thank you @dermotduffy.
  • WLED devices can now be restarted and upgraded from Home Assistant.
  • @chemelli74 added the climate platform support for Shelly, and
    @mib1185 added support for rebooting and upgrading Shelly devices.
  • Entities provided by the Vallox integration now have unique IDs
    and can be adjusted from the UI. Thanks @viiru-!
  • The Pi-hole integration now has a binary sensor to indicate an update is
    available, added by @andreasbrett.
  • System Bridge has two new services for sending keyboard events to
    the remote machine, added by @timmo001.
  • @klada added support for media player groups to Denon HEOS.
  • The REST platform now supports templates for its headers and query
    parameters. Thanks, @koying.
  • Mill now supports its 3rd generation heaters, thanks @Danielhiversen
  • @hmmbob added support for ms-MY, nl-BE, pa-IN to Google TTS.
  • Nanoleaf now pushes updates into Home Assistant, thanks @milanmeu.
  • @micha91 extended Yamaha MusicCast with number entities for controlling
    equalizers, dialogue volume/lift, and the display brightness.
  • The Levoit Core 400S air purifier is now supported by the VeSync integration,
    thanks for that @jparchem.
  • The state of number helpers is now exposed to Prometheus. Nice, @alim4r!
  • @tschamm added support for shutter controls to Bosch SHC.
  • Notifications for Android TV can now send a notification with custom icons;
    Awesome adding @redahb!
  • MQTT has seen multiple improvements in this release:
    • The select and number platforms now have command_template support (@jbouwh)
    • Switches now support device_class (@koying)
    • MQTT platforms can now set the object_id option (@Smeagolworms4)
    • Selects can now have a single or no options (@emontnemery)
    • Added ‘trigger’ support for Alarm Control Panels (@XaF)
    • Added lock.open support (@Hypnos3)

This release adds support for long-term statistics to the following integrations:

And the following integrations now have entity categories:

New Integrations

We welcome the following new integration this release:

Integrations now available to set up from the UI

The following integrations are now available via the Home Assistant UI:

Additionally, KNX can now partially be set up via the UI. The
connection is done via the UI, the entities are configuration in YAML; just
like before. Done by @marvin-w.

Release 2021.12.1 – December 12

  • Fix Sonos sub & surround switch state reporting (@jjlawren – #61531) (sonos docs)
  • Update logic for nest media source can_play for events (@allenporter – #61537) (nest docs)
  • Fix HomeKit covers with device class window and no tilt (@bdraco – #61566) (homekit docs)
  • Update frontend to 20211212.0 (@bramkragten – #61577) (frontend docs)
  • Fix Hue transition calculation (@marcelveldt – #61581) (hue docs)
  • enable grouped light if enabled in previous integration (@marcelveldt – #61582) (hue docs)
  • Only publish nest camera event messages once per thread and bump nest version (@allenporter – #61587) (nest docs)
  • Fix for failing Solarlog integration in HA 2021.12 (@Ernst79 – #61602) (solarlog docs)
  • Fix availability for 3th party Hue lights (@marcelveldt – #61603) (hue docs)
  • Bump aiopvapi to 1.6.19 to fix async_timeout passing loop (@bdraco – #61618) (hunterdouglas_powerview docs)
  • Bump aiohue to 3.0.3 (@balloob – #61627) (hue docs)

Release 2021.12.2 – December 15

  • Bump pysmappee to 0.2.29 (@bsmappee – #61160) (smappee docs)
  • Upgrade lupupy to 0.0.24 (@majuss – #61598) (lupusec docs)
  • Suppress errors for legacy nest api when using media source (@allenporter – #61629) (nest docs)
  • Bump total_connect_client to 2021.12 (@austinmroczek – #61634) (totalconnect docs)
  • Add additional-tag to machine builds (@ludeeus – #61693)
  • Bump aiohue to 3.0.4 (@balloob – #61709) (hue docs)
  • Update pymelcloud to 2.5.6 (@vilppuvuorinen – #61717) (melcloud docs)
  • Add check for incompatible device trigger in Hue integration (@marcelveldt – #61726) (hue docs)
  • Fix turn_off with transition for grouped Hue lights (@marcelveldt – #61728) (hue docs)
  • Fix Flash effect for Hue lights (@marcelveldt – #61733) (hue docs)
  • Blacklist availability check for a light at startup in Hue integration (@marcelveldt – #61737) (hue docs)
  • Upgrade tailscale to 0.1.5 (@frenck – #61744) (tailscale docs)
  • Bump brunt package to 1.0.1 (@eavanvalkenburg – #61784) (brunt docs)
  • Fix ZHA unoccupied setpoints. (@MattWestb#61791) (zha docs)
  • Don’t override pychromecast MediaController’s APP ID (@emontnemery – #61796) (cast docs)
  • Bump pychromecast to 10.2.1 (@emontnemery – #61811) (cast docs)
  • Tibber, update library, fixes #61525 (@Danielhiversen – #61813) (tibber docs)
  • Bump python-miio to 0.5.9.2 (@rytilahti – #61831) (xiaomi_miio docs)
  • Ensure SimpliSafe websocket reconnects upon new token (@bachya – #61835) (simplisafe docs)
  • Allow setting local_ip for knx routing connections (@marvin-w – #61836) (knx docs)
  • Fix broken Environment Canada (@michaeldavie – #61848) (environment_canada docs)
  • Bump google-nest-sdm to 0.4.8 (@allenporter – #61851) (nest docs)
  • Bump aiohue to 3.0.5 (@marcelveldt – #61875) (hue docs)
  • Update frontend to 20211215.0 (@bramkragten – #61877) (frontend docs)

Release 2021.12.3 – December 17

  • Update ebusdpy version (@sindudas – #59899) (ebusd docs)
  • Nextbus upcoming sort as integer (@ViViDboarder – #61416) (nextbus docs)
  • Add restore logic to Shelly climate platform (@chemelli74 – #61632) (shelly docs)
  • Fix OwnetError preventing onewire initialisation (@epenet – #61696) (onewire docs)
  • Fix notify platform setup for KNX (@marvin-w – #61842) (knx docs)
  • Bump aiohue to 3.0.6 (@marcelveldt – #61974) (hue docs)
  • Brunt dependency bump to 1.0.2 (@eavanvalkenburg – #62014) (brunt docs)
  • Bump flux_led to 0.26.15 (@bdraco – #62017) (flux_led docs)
  • Fix none-check in template light (@emontnemery – #62089) (template docs)
  • Add missing timezone information (@DeerMaximum – #62106) (vallox docs)
  • Improve availability for Shelly Valve (@chemelli74 – #62129) (shelly docs)
  • Fix Non-thread-safe operation in homekit light events (@bdraco – #62147) (homekit docs)
  • Fix Non-thread-safe operation in logbook (@bdraco – #62148) (logbook docs)
  • Bump google-nest-sdm to 0.4.9 (@allenporter – #62160) (nest docs)
  • Add guard in call to activate_scene in Hue (@marcelveldt – #62177) (hue docs)
  • Fix threading error in scripts with repeat or choose actions (@emontnemery – #62168)
  • Fix threading error in zha (@emontnemery#62170) (zha docs)

If you need help…

…don’t hesitate to use our very active forums or join us for a little chat.

Experiencing issues introduced by this release? Please report them in our issue tracker. Make sure to fill in all fields of the issue template.

New NetDaemon Release: Use C# to automate Home Assistant

Great news for Home Assistant users who’s preferred way of coding is C#: NetDaemon has just released a new version of their open source platform that allows you to use C# 10 for .Net 6 to write your applications or automations for Home Assistant.

This release includes a new API called HassModel which makes it easier than ever to interact with Home Assistant from .Net. It generates strong typed interfaces based on the entities in your own Home Assistant instance, their attributes and all available services and their parameters. Intellisense can be used to discover all your entities and available services directly from your IDE.

Check out the documentation and how to get started with NetDaemon

This project is not affiliated with Home Assistant, but leverages our open API.