2021.6: A little bit of everything
A little bit of everything. That is probably the best way to describe this release. It is a packed release, with a lot of small new features everywhere!
Sonos got quite a bit of love, Hue now supports push updates, the UI has a lot of usability tweaks, MQTT added quite a few attributes, themes can now support modes… seriously, I can go on forever with this list.
So, no new big features (something might be cooking for the next release…), but a nice release that has something for everybody. Definitely worth scanning the all changes section for your favorite integrations.
../Frenck
- Support for custom Dark mode themes
- Collapsed attributes
- Time format settings
- Disable polling updates on any integration
- Network integration
- Other noteworthy changes
- New Integrations
- New Platforms
- Integrations now available to set up from the UI
- Release 2021.6.1 - June 3
- Release 2021.6.2 - June 4
- Release 2021.6.3 - June 7
- Release 2021.6.4 - June 11
- Release 2021.6.5 - June 15
- Release 2021.6.6 - June 20
- If you need help…
- Breaking Changes
- Farewell to the following
- All changes
Support for custom Dark mode themes
Previously, all themes automatically used our light theme as the base to build on. As of today, themes can be based on our default dark theme as well!
Not only that, @spacegaier added support for themes that can support both a Dark & Light mode in a single theme! This allows Home Assistant to select the dark or light mode of your custom theme automatically.
Screenshot of a custom theme supporting both light & dark mode.
If you are a theme developer, you can find more information on how this works in the frontend documentation.
Oh, and of course, all your existing themes will still just work as before.
Collapsed attributes
Some entities provide quite a few attributes and those show up in the user interface. Most of the time, you don’t need to those and often contain technical data that only confuse or clutter.
To unclutter the more information entity dialog from these attributes a bit, the attributes will now show up collapsed into a bar and can be revealed with a click.
Screen recording of the collapsible entity attributes.
Time format settings
A couple of releases back, we added the possibility to select the number format that Home Assistant uses when showing numbers. Awesome! But… what about the formatting of time?
That question was raised a lot that release and many of you requested the same feature for time formatting, for example, if one prefers a 24-hour format.
Well, you can thank @spacegaier for this one:
Screenshot of new time format setting.
You can find this new setting in your user profile.
Disable polling updates on any integration
One returning feature request, for many integrations, is adding controls for tuning the polling interval an integration uses.
For example, if an integration has an API that needs to be paid for and you don’t need too many updates, it can be a cost saver to use a slower polling interval.
Another often requested example is things like battery-powered devices, or maybe a device you only want to poll during the day and not during the night.
This release, we add support for disabling polling on every integration via the integration system options; for ALL integrations.
Screenshot of the system options of an integration showing the disable polling option.
Wait? Disable polling?! Yes :)
So, there are many different requests on, for example, changing polling rates (also known as scan interval), but also requests for polling on a schedule, or, only based on other input (e.g., triggered by a motion sensor).
Therefore, we decided to provide the maximum flexibility for any use case you
can come up with. Disabling polling makes Home Assistant stop polling
automatically. However, you can use the
homeassistant.update_entity
service on those entities to trigger a poll for information.
This means, once you’ve disabled polling for an integration, you can create automations and completely customize when you poll that integration from that point on. All based on your own schedule, conditions or triggers.
Network integration
This release adds a new Network integration, created by @bdraco, to help other Home Assistant integrations to get the right information about your network.
It also provides you a single place to tell Home Assistant about your network. It is an advanced feature and thus will only show up if you have advanced mode enabled on your user profile.
You probably don’t need to change these settings, by default, Home Assistant will auto-detect the right configuration. However, if you have a more complex network configuration, with multiple network adapters or VLANs, you can now select the interface Home Assistant integrations should use.
Screenshot of new Home Assistant Network settings in the general configuration.
Please note that this is a new feature that needs to be implemented/used by other integrations. At this point, not all integrations will honor these settings yet.
Other noteworthy changes
There is much more juice in this release; here are some of the other noteworthy changes this release:
- The Modbus has been receiving lots and lots of love from @janiversen, a big shout out to him for continuously improving it for the past weeks!
- The Hue integration now supports push updates! Blazing fast response times if you are using that platform.
- @balloob and @bdraco have been working on replacing date/time/timezone handling in Home Assistant. Right on time.
- All services, for all integrations, now have updated information for their service calls. This means all service calls now have a nice new UI. Amazing job @tkdrob!
- Support for the new colors modes is slowly expanding. This release Elgato, Z-Wave JS, KNX and MQTT have added support.
- Sonos got some love from @mountainsandcode, @AaronDavidSchneider and @jjlawren. A lot of fixes and improvements, but also added support for controlling the state of the hardware buttons and controlling your Sonos alarms!
- The developer state tools, now shows the
name of the entity additional to the entity ID. Searching/filtering the list
now supports wildcards (
*
). Thanks, @spacegaier! - Thanks to @PeteBa, there is now a
recorder.purge_entities
service that allows you to purge data from the recorder database for specified entities. - Watson TTS has added a bunch of new voices to choose from, thanks @demikl!
- Ding dong! @bdraco added support for doorbell buttons to the HomeKit Controller integration.
- BMW Connected Drive, now provides a bunch of sensors about your last trip. Thanks, @EddyK69!
- @emericklaw added a new feature that allows you to duplicate a scene!
- My Home Assistant now supports linking to the Ingress interface of an add-on!
- Light templates now have support for effects, transitions and a bunch more properties, thanks to @jacekpaszkowski!
- VeSync now supports Etekcity light bulbs, thanks @sdrapha.
- The universal media player now supports overriding a lot of commands! Thanks for adding that @Drafteed!
- @mdz continues expanding the SmartTub integration adding service to change filtration settings and snoozing reminders.
- The Elgato integration now supports the new Elgato LED strips.
- If you are into Oracle DB, @mciupak made sure our recorder can now use that.
- Z-Wave JS integration now shows progress when adding or re-interviewing a device. Thanks, @cgarwood!
- The Nexia integration now also supports controlling American Standard thermostat, added by @bdraco.
- @Drafteed added support for changing channels on your LG NetCast TV, thanks!
- @mib1185 ensured that the UX for counters and number helpers look nice!
New Integrations
We welcome the following new integrations this release:
- Bosch Smart Home Controller, added by @tschamm
- Garages Amsterdam, added by @klaasnicolaas
- Kraken, added by @eifinger
- Meteoclimatic, added by @adrianmo
- Nettigo Air Monitor, added by @bieniu
- Network configuration, added by @bdraco
- SIA Alarm Systems, added by @eavanvalkenburg
- Syncthing, added by @zhulik
- System Bridge, added by @timmo001
- Wallbox, added by @hesselonline
New Platforms
The following integration got support for a new platform:
- Goal Zero Yeti now has switches to control outlets, added by @tkdrob
- OmniLogic added switches to control relays and pumps, done by @djtimca
- Mazda Connected Services can now control locks, thanks to @bdr99
- AVM FRITZ!Box Tools added a binary sensor to indicate connectivity and sensors for uptime and external IP. Added by @chemelli74
- Modbus now supports lights & fans, added by @vzahradnik
- Sonos now has switches to control enable/disable alarms, added by @AaronDavidSchneider
Integrations now available to set up from the UI
The following integrations are now available via the Home Assistant UI:
- Buienradar, done by @RobBie1221
- Growatt, done by @indykoning
Release 2021.6.1 - June 3
- Fix last activity consideration for AVM Fritz!Tools device tracker (@mib1185 - #51375) (fritz docs)
- Handle Sonos connection issues better when polling (@jjlawren - #51376) (sonos docs)
- Fix no value error for heatit climate entities (@raman325 - #51392) (zwave_js docs)
- Fix Tibber Pulse device name and sensor update (@Danielhiversen - #51402) (tibber docs)
- Fix shopping list “complete all” service name (@spacegaier - #51406) (shopping_list docs)
- Bump aiohomekit to 0.2.67 (fixes #51391) (@Jc2k - #51418) (homekit_controller docs)
- Bump zwave-js-server-python to 0.26.1 (@raman325 - #51425) (zwave_js docs)
- Update frontend to 20210603.0 (@bramkragten - #51442) (frontend docs)
Release 2021.6.2 - June 4
- Hot fix version of Apply modbus interval patch (@balloob - #51487) (modbus docs)
- Update to iaqualink 0.3.90 (@flz - #51452) (iaqualink docs)
- Retry isy994 setup later if isy.initialize times out (@bdraco - #51453) (isy994 docs)
- xknx 0.18.3 (@farmio - #51277) (knx docs)
- Update xknx to version 0.18.4 (@farmio - #51459) (knx docs)
- Bump aiolyric to 1.0.7 (@timmo001 - #51473) (lyric docs)
- Improve logging for SamsungTV (@chemelli74 - #51477) (samsungtv docs)
- Upgrade elgato to 2.1.1 (@frenck - #51483) (elgato docs)
- Protect our user agent (@balloob - #51486)
Release 2021.6.3 - June 7
- Use a single job to ping all devices in the Broadlink integration (@felipediel - #51466) (broadlink docs)
- Fix loop in tod binary sensor (@bdraco - #51491) (tod docs)
- AsusWRT fix keyerror when firmver is missing from info (@timmo001 - #51499) (asuswrt docs)
- Handle missing options in foreign_key for MSSQL (@bdraco - #51503) (recorder docs)
- Fix missing Tibber power production (@Danielhiversen - #51505) (tibber docs)
- Bump garminconnect_aio to 0.1.4 (@cyberjunky - #51507) (garmin_connect docs)
- Bump pyialarm to 1.8.1 (@RyuzakiKK - #51519) (ialarm docs)
- Improve log message when zone missing in geolocation trigger (@exxamalte - #51522) (geo_location docs)
- Ensure host is always set with samsungtv SSDP discovery (@bdraco - #51527) (samsungtv docs)
- Bump aiorecollect to 1.0.5 (@bachya - #51538) (recollect_waste docs)
- Fix garmin_connect config flow multiple account creation (@cyberjunky - #51542) (garmin_connect docs)
- Bump dwdwfsapi to 1.0.4 (@stephan192 - #51556) (dwd_weather_warnings docs)
- Increase isy setup timeout to 60s (@bdraco - #51559) (isy994 docs)
- Fix Sonos restore calls (@jjlawren - #51565) (sonos docs)
- Update builder to 2021.06.2 (@pvizeli - #51582)
- Fix deprecated value_template for MQTT light (@emontnemery - #51587) (mqtt docs)
Release 2021.6.4 - June 11
- Fix Sonos battery sensors on S1 firmware (@jjlawren - #51585) (sonos docs)
- Handle missing section ID for Plex clips (@jjlawren - #51598) (plex docs)
- Reduce ovo_energy polling rate to be less aggressive (@blastoise186 - #51613) (ovo_energy docs)
- Do not configure Shelly config entry created by custom component (@bieniu - #51616) (shelly docs)
- Fix Onvif get_time_zone from device (@pszafer - #51620)
- Ensure samsungtv reloads after reauth (@bdraco - #51714) (samsungtv docs)
- Fix race condition in samsungtv turn off (@bdraco - #51716) (samsungtv docs)
Release 2021.6.5 - June 15
- Replace garminconnect_aio with garminconnect_ha (@cyberjunky - #51730) (garmin_connect docs)
- Bump pydaikin, fix airbase issues (@fredrike - #51797) (daikin docs)
- Add httpcore with version 0.13.3 (@ludeeus - #51799)
- Bump pyialarm to 1.9.0 (@RyuzakiKK - #51804) (ialarm docs)
Release 2021.6.6 - June 20
- Fix whois expiration date (@kantselovich - #51868) (whois docs)
- Add Omnilogic switch defaults for max_speed and min_speed (@djtimca - #51889) (omnilogic docs)
- Bump pyRFXtrx to 0.27.0 (@RobBie1221 - #51911) (rfxtrx docs)
- Bump pydaikin to 2.4.3 (@fredrike - #51926) (daikin docs)
- Fix AccuWeather sensors updates (@bieniu - #52031) (accuweather docs)
- Fix double subscriptions for local push notifications (@balloob - #52039) (mobile_app docs)
- Catch unexpected battery update payloads on Sonos (@jjlawren - #52040) (sonos 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.
Read on →Community Highlights: 23rd edition
The 23rd edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, which we thought was worth sharing.
Do you want to share something for the next edition? Information on how to share.
./Klaas
Intern on Home Assistant Energy
Blueprint of the week
This week’s blueprint is all about medication. It may happen that you forget to swallow it, what if you create an automation that sends you a message as a reminder every time? Mati24 has now made a handy blueprint for that, try it out!
Read more about it on the community forum or install this automation in your instance with a click on the My button!
Swiper card
Not enough space on your Lovelace dashboard? Then try the swiper card made by bramkragten, with which you can easily swipe through different cards in the same card frame.
Lovelace dashboard
Also this week we have a new Lovelace dashboard for the necessary portion of inspiration 😄 This time the dashboard of DoIGotSkillz, who made one for use on a tablet wall mount.
Would you also like your dashboard to be in the community highlight? Drop it on Reddit and maybe I’ll pick it out for the next edition.
Homegame
Recently we had an item about switching entities in Minecraft, well this time it’s a game again but in 2D. svendroid made a proof of concept game that you can play in the browser, you can adjust the map so that your own light entities work with it.
Doesn’t this also remind you of the old Pokemon games from the past? 😅
Got a tip for the next edition?
Have you seen (or made) something awesome, interesting, unique, amazing, inspirational, unusual or funny, using Home Assistant?
Click here to send us your Community Highlight suggestion.
Also, don’t forget to share your creations with us via Social Media:
- Tweet it! Be sure to mention @home_assistant
- Share it on our Facebook group
- Post it to our subreddit
- Tag @homeassistant on Instagram
- Or via chat, drop us a line in the #lounge at Discord
See you next edition!
Community Highlights: 22nd edition
The 22nd edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, we thought was worth sharing.
Do you want to share something for the next edition? Information on how to share.
./Klaas
Intern on Home Assistant Energy
Blueprint of the week
Are you one of those who always leave the doors open?
Then this week we have a nice blueprint for you! BasTijs has made a blueprint that announces through text-to-speech in the house, that a door is open and only stops when the door is closed again.
Try it out! Read more about it on the community forum or install this automation in your instance with a click on the My button!
Sun card
On our Home Assistant reddit page we also encountered another nice project, namely that of AitorDB. Who made a Lovelace card that shows the position of the sun when it rises, is at its highest point and sets again.
Collapsed card
Is your Lovelace dashboard overflowing with cards and do you want to make some free space? Then try the card made by RossMcMillan92, which makes it possible to collapse entire cards and reappear as a dropdown.
Hyperion - HA bridge
You have those TVs where LEDs are mounted on the back so that the colors of the TV continue over the wall behind it, this is also called ambilight. If your TV is not equipped with this, you can also make this yourself through the Hyperion project. pimw has also written an instruction post about this on our community forum on how to connect the bridge to Home Assistant.
Got a tip for the next edition?
Have you seen (or made) something awesome, interesting, unique, amazing, inspirational, unusual or funny, using Home Assistant?
Click here to send us your Community Highlight suggestion.
Also, don’t forget to share your creations with us via Social Media:
- Tweet it! Be sure to mention @home_assistant
- Share it on our Facebook group
- Post it to our subreddit
- Tag @homeassistant on Instagram
- Or via chat, drop us a line in the #lounge at Discord
See you next edition!
Community Highlights: 21st edition
The 21st edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, we thought was worth sharing.
Do you want to share something for the next edition? Information on how to share.
./Klaas
Intern on Home Assistant Energy
Blueprint of the week
Imagine, you are listening to music and suddenly you get a call, then of course you first want to turn the music down a bit to understand the person, what if we automate that with a blueprint!
This week’s blueprint is that of JackPoint, which will mute your media player when you receive a call and are at home. Try it out! Read more about it on the community forum or install this automation in your instance with a click on the My button!
Would you rather not have the media player muted but, for example, paused or take another action? More variants can be found on the Blueprint Exchange!
Car Telemetry
A few editions earlier we had shown the dashboard of Make_Itt_Work and it contained telemetry data from his car. The question was of course how does he do that?! Well, that question now has an answer, a video has come online with all the details.
Shower Duration
We’ve talked enough about saving energy, but using water efficiently is just as important. With the project from farstreet, which consists of some hardware and an automation, you could time how long you are in the shower and indicate with a LED light how long you have been under it.
Finished taking a shower? Then you can hear what your shower time was through a media player.
Mine Assistant
This item is especially nice for the Minecraft players, Andy has managed to switch a light in Home Assistant by means of a redstone block in Minecraft! In the Reddit post you can find more information about this project, as well code to get started yourself.
Got a tip for the next edition?
Have you seen (or made) something awesome, interesting, unique, amazing, inspirational, unusual or funny, using Home Assistant?
Click here to send us your Community Highlight suggestion.
Also, don’t forget to share your creations with us via Social Media:
- Tweet it! Be sure to mention @home_assistant
- Share it on our Facebook group
- Post it to our subreddit
- Tag @homeassistant on Instagram
- Or via chat, drop us a line in the #lounge at Discord
See you next edition!
Why Home Assistant doesn't have an external API for integrations
Home Assistant is the world’s largest home automation platform talking with over 1900 different devices and services. Home Assistant works with these via “integrations”.
Each integration runs inside Home Assistant. They convert the data from the device into data that Home Assistant understands and forward commands from Home Assistant back to the device. For this to work a device or service needs to have an application programming interface (API).
It is not possible for a device or service to provide lights, switches or other device types via the Home Assistant API without an integration. It can be faked, but it won’t work correctly. We explicitly did not add this feature because of interoperability.
If Home Assistant were to offer this option, devices and services would no longer be required to create an API for control – they could just implement ours. This creates vendor lock-in, locks other home automation platforms out and hurts the open Internet of Things ecosystem.
You should be able to access your data from your devices without any restrictions. Requiring a specific application to get to your data is not the solution.
Our goal is a home where all smart devices can be managed locally.
This stance will hurt us in the short term because we get less integrations. It is more work for a manufacturer to create an API and a Home Assistant integration.
In the long term the user will win. Devices with local APIs will still work 10 years from now and no one will be held hostage by vendor lock-in because some of their devices only work with Home Assistant.
Note about Home Assistant APIs: Home Assistant does have an API, just not for integrations. It allows you to access all your data in real-time. We also have a data science portal that documents how you can query the historical data stored on disk.
Easier notifications in iOS 2021.5
Notifications are a popular feature of the Companion apps, but the differences between Android and iOS made it painful to use them to their full potential. Starting with today’s release of iOS 2021.5, the vast majority of functionality is now shared across both platforms. As part of this, the notifications documentation has been extensively updated as well.
Actionable notifications
Building actionable notifications for iOS and watchOS no longer requires defining categories in advance of using them; instead, you can include the actions right in the notification. Support for macOS will be included in a future release. Categories were one of the hurdles around multi-server support, so removing them entirely solves that part!
Included in the documentation is how to migrate from categories to dynamic actions. Both are still supported in the app at this time, but categories will be removed in the future.
Below is an example script which sends an actionable notification and uses script variables, wait for trigger, and choose to decide what to run.
# In a script's `sequence` or an automation's `actions`
- alias: "Set up action variables"
variables:
# Including 'id' in 'action' allows us to identify this script run
# and not accidentally trigger for other notification actions
action_very: "{{ 'VERY_' ~ context.id }}"
action_mod: "{{ 'MOD_' ~ context.id }}"
- alias: "Send the notification"
service: notify.mobile_app_zac_iphone
data:
message: "Are you hungry?"
data:
actions:
- action: "{{ action_very }}"
title: "Very Hungry"
- action: "{{ action_mod }}"
title: "Moderately Hungry"
- alias: "Wait for a response"
wait_for_trigger:
# We wait for specific actions because we don't want to run for
# any action, only for a response to the one we just sent
- platform: event
event_type: mobile_app_notification_action
event_data:
action: "{{ action_very }}"
- platform: event
event_type: mobile_app_notification_action
event_data:
action: "{{ action_mod }}"
- alias: "Handle the response"
choose:
- conditions: "{{ wait.trigger.event.data.action == action_very }}"
sequence:
- service: notify.notify
data:
message: "⚠️ Soylent Launch Incoming"
- service: homeassistant.turn_on
target:
entity_id: switch.soylent_dispenser
- conditions: "{{ wait.trigger.event.data.action == action_mod }}"
sequence:
- service: notify.notify
data:
message: "Anyone want to grab a croissant? -Zac"
This works for both platforms without including any platform-specific logic! Other features around actionable notifications are also shared, including adding a URL to open when picking an action:
actions:
- action: "URI"
title: "View More"
uri: "/lovelace/some-dashboard"
Replacing, grouping, clearing
Replacing existing notifications or threading certain notifications was another difference between platforms, and the iOS-specific versions were a bit less ergonomic, so the Android versions now work for both. You can now use the simpler tag
and group
keys:
- service: notify.mobile_app_<your_device>
data:
message: "The front door is unlocked!"
data:
# replace any existing front_door_lock notifications
tag: front_door_lock
# thread with other doors notifications
group: doors
You can also remove an existing notification by its tag:
- service: notify.mobile_app_<your_device>
data:
message: clear_notification
data:
tag: front_door_lock
Attachments
Attachments no longer require certain categories for dynamic attachment, so you can include streaming playback of a camera for any notification:
- service: notify.mobile_app_<your_device>
data:
message: "Motion detected"
data:
entity_id: camera.outside
Specifying a non-dynamic attachment is a little easier now, allowing you to short-hand the attachment part:
- service: notify.mobile_app_<your_device>
data:
message: "3D Print Complete"
data:
image: /media/local/3dprinter/latest.jpg
You can use video
, image
and audio
. Only image
is supported on Android.
You may have noticed that iOS notifications have file limits; this release adds on-demand downloading of attachments that exceed the size limit or when requested using the lazy
attachment option.
Future areas of improvement
We’re still on the lookout for places of confusion or redundancy in notifications across the iOS and Android apps. What would you like to see improved?
Community Highlights: 20th edition
Damn! We are already at the 20th edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, we thought was worth sharing.
Do you want to share something for the next edition? Information on how to share.
./Klaas
Intern on Home Assistant Energy
Blueprint of the week
Recently Home Assistant has received support for the use of alarm keypads
with deCONZ, which works with an alarm control panel entity and the deconz_alarm_event
.
Therefore this week’s blueprint is that of Robban, with which you can use a physical (Zigbee) keypad to switch your alarm on or off.
Keep in mind: the support in deCONZ rest plugin is still in an alpha stage.
Try it out! Read more about it on the community forum or install this automation in your instance with a click on the My button!
Lovelace Dashboard
Also this week we have a new Lovelace dashboard for the necessary portion of inspiration 💡 This time it has become that of StreetInevitable5427, a beautiful Neon UI that looks so sleek that you would love to hang it on your wall 🖼️
Take also a look at the original post on Reddit. Would you like your dashboard to be in the community highlight? Drop it on Reddit and maybe I’ll pick it out for the next edition.
Browser Extension
Fresh off the press, we came across something really cool on the community forum.
bokub has made browser extensions for Chrome and Firefox with which you can display a Lovelace dashboard in your browser and thus quickly switch a light, for example.
ESPHome 1.17
A new version of ESPHome has also been released this week! 🥳
In particular, I would like to point out the new pulse_meter component, which is ideal for if you want to measure all your energy via a pulse LED on your smart meter or when you want to read what your water consumption is.
The pulse meter component is also what I’ve used for the hardware I’ve been working on. I’ve made a range of improvements since the last time I shared it. Now including a status LED so it’s easy to check if it’s working. pic.twitter.com/GwaVZS0HQj
— Klaas Schoute (@klaasnicolaas) May 4, 2021
By combining measuring how many pulses there are within a time frame and the time between each pulse, you get even better accurate readings!
Got a tip for the next edition?
Have you seen (or made) something awesome, interesting, unique, amazing, inspirational, unusual or funny, using Home Assistant?
Click here to send us your Community Highlight suggestion.
Also, don’t forget to share your creations with us via Social Media:
- Tweet it! Be sure to mention @home_assistant
- Share it on our Facebook group
- Post it to our subreddit
- Tag @homeassistant on Instagram
- Or via chat, drop us a line in the #lounge at Discord
See you next edition!
2021.5: Stability, performance, triggers, color modes!
Here I am again, a month later. Are you used to these monthly release cycles yet? Hello, 2021.5! Nice to see you this May!
I would say this release is a bit less feature rich compared to the previous release (which was epic, in my opinion!). But it is not a bad thing!
Some really good stability improvements have been introduced this release! Not the hot new items you want to explore immediately, but these fundamental things will really help our systems now and in the future. Making this release an upgrade that would be a smooth sail for most of us (check the breaking changes).
The most visual part changed this release can be found in the facelift that the integrations dashboard got. Oh, and the new color modes for lights is an amazing improvement as well!
May… For me, that feels like the summer is slowly trying to make its appearance and I’m looking forward to it 🕶. Do you have a summer Home Automation project figured out yet?
Oh, and don’t forget to tune into the release party live stream later today! (Spoiler alert: I’ve heard we might have a special guest, only Paulus didn’t want to tell me who it is…)
2021.5 Stream Party on YouTube: https://www.youtube.com/watch?v=bvAKUz-bmqU
../Frenck
- Database upgrades & performance
- Startup visibility - What is taking so long?
- Why Home Assistant didn’t restart when I pressed the restart button?
- Updated look and feel for the integration dashboard
- Color modes!
- Trigger-based binary template sensor
- Docker images now signed and available on the GitHub Container Registry
- Other noteworthy changes
- New Integrations
- New Platforms
- Integrations now available to set up from the UI
- Release 2021.5.1 - May 7
- Release 2021.5.2 - May 10
- Release 2021.5.3 - May 11
- Release 2021.5.4 - May 14
- Release 2021.5.5 - May 19
- If you need help…
- Breaking Changes
- Farewell to the following
- All changes
Database upgrades & performance
There is a database upgrade in this release, but worry not as database upgrades now happen in the background and no longer prevent Home Assistant from starting. During migration, Home Assistant will prevent being restarted or stopped until the migration has been completed.
Thanks to @lmagyar and @raman325 we now can store events up to 64 characters and the recorder won’t get stuck if there is one exceeding that length.
And if you have ever had to wait for the recorder to shut down, worry no more as Home Assistant can now shut down successfully, even when the database is broken.
Talking about broken databases: if you have ever had database corruption of your SQLite database, you probably know how much of a pain it is to get things back up and running again. We recently added live recovery to allow Home Assistant to recover and start a new database when the recorder encountered corruption when saving events or states to the database. This release extends this live recovery to work during migration and purge. This also means no more waiting for a database check on unclean shutdown!
Finally, the recorder performance has been improved by reducing the write frequency.
Startup visibility - What is taking so long?
Ever wondered why starting up Home Assistant took so long?
Stop wondering, as you can now see which integration is delaying startup as the integration taking the longest time to set up is now displayed when Home Assistant is starting.
Screenshot of Home Assistant reporting integrations that are being set up.
And in case you missed those notifications, you can always check the information panel afterward.
Screenshot of information panel showing integration set up times.
This My button brings you right to it:
Why Home Assistant didn’t restart when I pressed the restart button?
So, why didn’t Home Assistant restart when you press the restart button? This question we have seen quite a few times and was a rather annoying occurrence that has been improved.
The restart button now provides feedback! So you know right away if a restart can’t happen because of invalid configuration, broken integration or database upgrade in progress.
We adjusted timeouts and fixed a few places where shutdown would block forever, for example, when restarting Home Assistant the configuration gets checked and there was a case that could hang in this check forever.
This means restarts are faster now! As more parts of Home Assistant now cancel/react to the shutdown procedure better than before (from the Month of What the Heck).
We also audited the top 35 integrations to make sure they stop polling on stop. Thanks for turning on analytics!
Updated look and feel for the integration dashboard
The Integrations dashboard has been updated to have a more compact look and provide more useful information.
For example, it now shows the state of the integration and in case of a failure, it will now tell you why that is.
Screenshot of the updated integrations dashboard.
Additionally, you can now recognize integrations that rely on the cloud (they show a little cloud label) and integrations that are installed as custom integration (they show a little package label).
Color modes!
We now have support for RGBWW, RGBW and many more color modes!
Previously, we relied mainly on HS (Hue Saturation) & Brightness (HSB/HSV) and colors in Home Assistant was based on that. But now, an integration can provide the actual color mode an light supports. This allows Home Assistant (and integrations) to adjust the behavior for the light better.
For example, the frontend will adjust the color picker based on the color mode of the light. The more info dialog for lights have been modernized to support this change:
Screenshot of the updated more info dialog for lights.
Please note, that at this moment not all integrations are able to support color modes yet. However, all lights do have an nice updated UI as in the screenshot.
Trigger-based binary template sensor
In the previous release, we introduced a trigger-based template sensor. This release extends on that features by adding support for trigger-based binary sensors using templates.
Trigger-based binary sensors can also be configured with an auto_off
duration.
This will automatically turn a binary sensor state to off
after the specified
duration.
template:
- trigger:
- platform: event
event_type: netatmo_event
event_data:
type: movement
binary_sensor:
- name: "Motion"
# We use auto_off, so just set it to true on each trigger
state: "true"
device_class: motion
# Automatically turn off 60 seconds after the last event
auto_off: 60
Some other ideas:
- Store webhook information in Home Assistant
- One that updates based on a time trigger once a day (e.g., “Is is my birthday?” binary sensor).
Docker images now signed and available on the GitHub Container Registry
We are now using both DockerHub and the new GitHub Container Registry.
If you want to use the new GitHub Container Registry, just use:
ghcr.io/home-assistant/home-assistant
(Instead of homeassistant/home-assistant
)
Our core images are now also signed with CodeNotary and allowing you to check the integrity of our images.
CodeNotary is a distributed Ledger solution using the immudb as a database for built-in cryptographic proof and verification.
If you are running the Home Assistant Operating System or a Supervised installation type, we already check the integrity of our distributed content. If you running the Container installation, you can install the VCN tool.
Now you can use it like so:
docker pull ghcr.io/home-assistant/home-assistant:2021.5.0
vcn authenticate --org home-assistant.io docker://ghcr.io/home-assistant/home-assistant:2021.5.0
This will tell/confirm that the image you have, is actually created and shipped by the Home Assistant project.
Other noteworthy changes
There is much more juice in this release; here are some of the other noteworthy changes this release:
- Are you in meetings a lot? The new mutesync integration shows if you’re in a meeting and if you’re muted in Home Assistant. This will unlock some cool do-not-disturb automations.
- We did an audit of memory leaks and fixed a couple of generic cases in our core codebase. But also fixed over 15 cases during unload/reload in popular integrations.
- The TTS service by Home Assistant Cloud now uses an improved bitrate, making it sound even more impressive.
- ClimaCell now supports the v4 API. So, If you’ve wanted to test it out you can now actually use it with the new API keys. Thanks @raman325!
- If you are into templating, we now have
min()
andmax()
available as functions in Jinja templates. - The AdGuard integration now supports multiple instances thanks to @eifinger.
- When viewing your logs in the frontend, the log entry will tell you if the log was created by a custom integration.
- If you have a Sonos Move or Sonos Roam, you can now see their battery level and charging state. Thanks for that @hufman and @jjlawren.
- Template covers now can have an opening and closing state, which was added by @bdr99, thanks for that!
- The ZHA integration now has configuration options in the UI, allowing you to set things like default transition times for your lights. Thanks @dmulcahey!
- The Z-Wave JS integration now allows you to re-interview a device from the UI thanks to @cgarwood.
- @cgarwood didn’t stop there, you can now opt-in for sending Z-Wave JS telemetry to the Z-Wave JS project to help them out. This can be turned on in the Z-Wave JS configuration panel.
New Integrations
We welcome the following new integrations this release:
- Compensation, added by @Petro31
- iAlarm, added by @RyuzakiKK
- Kostal Plenticore, added by @stegm
- Met Éireann, added by @DylanGore
- motionEye, added by @dermotduffy
- Mutesync, added by @currentoor
- Picnic, added by @corneyl
- SiteSage Emonitor, added by @bdraco
New Platforms
The following integration got support for a new platform:
- ClimaCell added sensor that provide a whole bunch of additional data, done by @raman325
- deCONZ now has support for alarm control panels, added by @Kane610
- Mazda Connected Services now provides a device tracker for your car, added by @bdr99
- National Weather Service (NWS) added support for weather sensors, added by @MatthewFlamm
- Rituals Perfume Genie now provides sensors and binary sensors, added by @milanmeu
- Sonos added battery & charging binary sensors for Sonos speakers that have those, done by @jjlawren
- Zigbee Home Automation (ZHA) now has support for alarm control panels, added by @dmulcahey
Integrations now available to set up from the UI
The following integrations are now available via the Home Assistant UI:
- Enphase Envoy, done by @bdraco
- Google Maps Travel Time, done by @raman325
- SMA Solar, done by @rklomp
- Waze Travel Time, done by @raman325
- Ezviz, done by @RenierM26
- AVM FRITZ!Box Tools, done by @chemelli74
Release 2021.5.1 - May 7
- Fix mysensors default persistence file on import (@MartinHjelmare - #48410) (mysensors docs)
- Only initialize Nuki configurations (@darkson95 - #49747) (nuki docs)
- Denonavr bugfixes (@scarface-4711 - #49984) (denonavr docs)
- Fix group selector (@tkdrob - #50088) (group docs)
- Fix RM pro temperature sensor (@felipediel - #50098) (broadlink docs)
- Ignore empty output from MQTT fan’s value template (@jbouwh - #50122) (mqtt docs)
- Bump python-miio dependency (@rytilahti - #50129) (xiaomi_miio docs)
- Bump sqlalchemy to 1.4.13 (@bdraco - #50138) (recorder docs)
- Fix zwave_js websocket api KeyError on unloaded entry (@MartinHjelmare - #50154) (zwave_js docs)
- Fix unique_id issue on onewire config entries (@epenet - #50161) (onewire docs)
- Add color_mode support to group light (@emontnemery - #50165) (group docs)
- Move not loaded websocket constant to zwave_js (@MartinHjelmare - #50188)
- Add value map for Climacell V3 pollen sensors (@raman325 - #50200) (climacell docs)
- Ensure tesla setup is retried on timeout (@bdraco - #50202) (tesla docs)
- Allow SimpliSafe startup to retry on failure (@bachya - #50211) (simplisafe docs)
- Bump aiohue to 2.3.0 (@balloob - #50217) (hue docs)
- support more alarm panels (@dmulcahey - #50235) (zha docs)
- Fix Netatmo climate (@cgtobi - #50238) (netatmo docs)
- Fix light turn_on color conversion (@emontnemery - #50251) (light docs)
- Add color_mode to demo light (@emontnemery - #49694) (demo docs)
Release 2021.5.2 - May 10
- Catch non payload modbus messages (@janiversen - #49910) (modbus docs)
- Fix incorrect attribute checks in Modbus hub (@vzahradnik - #50241) (modbus docs)
- Fix amcrest detection of sensor reset (@FrnchFrgg - #50249) (amcrest docs)
- Skip Huawei LTE device registry setup with no identifiers or connections (@scop - #50261) (huawei_lte docs)
- Fix Sonos polling bug (@jjlawren - #50265) (sonos docs)
- Update ovoenergy to 1.1.12 (@timmo001 - #50268) (ovo_energy docs)
- Update denonavr to version 0.10.7 (@scarface-4711 - #50288) (denonavr docs)
- Bump ha-philipsjs to 2.7.3 (@elupus - #50293) (philips_js docs)
- Fix tplink unloading when no switches are present (@bdraco - #50301) (tplink docs)
- Fix ESPHome timestamp sensor (@frenck - #50305) (esphome docs)
- Revert Rachio to seconds instead of total_seconds (@brg468 - #50307) (rachio docs)
- Support multiple disks in systemmonitor (@ColinRobbins - #50362) (systemmonitor docs)
- Bump androidtv to 0.0.59 (@JeffLIrion - #50367)
- Bump hatasmota to 0.2.12 (@emontnemery - #50372) (tasmota docs)
- Increase httpx timeout for Tesla (@alandtse - #50376) (tesla docs)
- Fix location of current_play_mode (@jjlawren - #50386) (sonos docs)
- Bump pysonos to 0.0.45 (@jjlawren - #50407) (sonos docs)
Release 2021.5.3 - May 11
- Handle transport errors when updating media via events (@bdraco - #50480) (sonos docs)
- Hotfix for Sonos favorites race condition (@jjlawren - #50495) (sonos docs)
- Include _StopScript.cause in trace (@emontnemery - #50441)
- update denonavr version 0.10.8 (@scarface-4711 - #50476) (denonavr docs)
- Bump aiohue to 2.3.1 (@balloob - #50506) (hue docs)
Release 2021.5.4 - May 14
- Fix Sonos favorites race condition v2 (@jjlawren - #50575) (sonos docs)
- Fix battery attribute (@cgtobi - #50405) (netatmo docs)
- Bumps aioasuswrt to 1.3.4 (@kennedyshead - #50414) (asuswrt docs)
- Skip adding battery on S1 Sonos devices (@jjlawren - #50536) (sonos docs)
- Bump pyhaversion from 21.3.0 to 21.5.0 (@ludeeus - #50540) (version docs)
- Update light device actions to check supported_color_modes (@emontnemery - #50611) (light docs)
- Fix IQVIA failing to start if any API call fails (@bachya - #50615) (iqvia docs)
- Update light intents to check supported_color_modes (@emontnemery - #50625) (light docs)
Release 2021.5.5 - May 19
- Upgrade freesms to 0.2.0 (@frenck - #50853) (free_mobile docs)
- Backport Sonos handle subscription failures (@jjlawren - #50796) (sonos docs)
- Bump hatasmota to 0.2.13 (@emontnemery - #50662) (tasmota docs)
- Bump pysonos to 0.0.47 (@jjlawren - #50792) (sonos docs)
- Bump pyatmo to 4.2.3 (@cgtobi - #50801) (netatmo 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.
Read on →Community Highlights: 19th edition
The 19th edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, we thought was worth sharing.
Amazing to see how many reactions there have been after sharing the internship progress, we have seen many cool things and if you have any input you can still share this of course! ❤️
Do you want to share something for the next edition? Information on how to share.
./Klaas
Blueprint of the week
This week’s blueprint is that of delphiki, with which you can plan on which days of the week your vacuum cleaner should start cleaning and at what time. Try it out! Read more about it on the community forum or install this automation in your instance with a click on the My button!
Lovelace Dashboard
Also this week we have a new Lovelace dashboard for the necessary portion of inspiration 💡 This time it has become that of Make_Itt_Work, where he also processed the telemetry data from his car in the dashboard. Now we are of course very curious how that works? 😄
Take also a look at the original post on Reddit. Would you like your dashboard to be in the community highlight? Drop it on Reddit and maybe I’ll pick it out for the next edition.
Vacuum Card
Besides being able to automate when your vacuum cleaning robot gets started, you probably also want to show the status of your robot in Lovelace. Then try the vacuum card from denysdovhan, with which you can show that in a beautiful way and there is support for the well-known models that are now available on the market.
OpenTTS 2.0
Maybe the name still sounds fairly unknown to you, but OpenTTS is an add-on, which gives you the possibility to use multiple open source text-to-speech systems. So that you can eventually have text spoken on: for example, a Google Home speaker. synesthesiam recently released a new version of OpenTTS and you can install it as an add-on in Home Assistant.
Give it a try!
Got a tip for the next edition?
Have you seen (or made) something awesome, interesting, unique, amazing, inspirational, unusual or funny, using Home Assistant?
Click here to send us your Community Highlight suggestion.
Also, don’t forget to share your creations with us via Social Media:
- Tweet it! Be sure to mention @home_assistant
- Share it on our Facebook group
- Post it to our subreddit
- Tag @homeassistant on Instagram
- Or via chat, drop us a line in the #lounge at Discord
See you next edition!
Community Highlights: 18th edition
The 18th edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, we thought was worth sharing.
Do you want to share something for the next edition? Information on how to share.
./Klaas
Blueprint of the week
You probably recognize it, while watching a movie you need to go to the toilet and you forget to pause the movie! What if you could automate this with a blueprint?
With the blueprint from jfedor you can pause your media player by turning on a light and if you turn it off within a certain time, the media player will continue. Read more about it on the community forum or install this automation in your instance with a click on the my button!
Lovelace Dashboard
Also this week we have a new Lovelace dashboard for the necessary portion of inspiration 😄 This time it has become that of Crixle, what he has made in the past 5 months. Possibly this design can be used quite well for a tablet on the wall. Take also a look at the original post on Reddit
Would you also like your dashboard to be in the community highlight? Drop it on Reddit and maybe I’ll pick it out for the next edition.
EV Charger Card
Looking for a way to show the charging of your electric car in a beautiful way in Lovelace? Then try the EV Charger card made by tmjo.
Home Assistant Energy
Internship progress
It has been 11 weeks since I started as an intern at Nabu Casa, where I focus on how Home Assistant can be used to gain insight into your energy data and how to optimize your consumption. Time to give a brief summary of what is currently going on.
We are currently trying to design a ready-made Lovelace dashboard, in which all your energy data comes together. You can see a first paper prototype sketch below, if you have input on this topic, please share it with me via the Twitter thread!
In addition, I’m also working on an analog pulse meter, working with ESPHome that you can use to read the pulse LED on a meter. YAML configs for power plugs from Blitzwolf etc.
More information can also be found in the twitter thread below.
I'm doing an internship at @NabuCasa with the goal to discover how @home_assistant can be used to gain insight in your energy usage and help optimize it.
— Klaas Schoute (@klaasnicolaas) April 20, 2021
I will be using this thread to show some of the things that I have done so far. pic.twitter.com/0lLJxt15Nn
Got a tip for the next edition?
Have you seen (or made) something awesome, interesting, unique, amazing, inspirational, unusual or funny, using Home Assistant?
Click here to send us your Community Highlight suggestion.
Also, don’t forget to share your creations with us via Social Media:
- Tweet it! Be sure to mention @home_assistant
- Share it on our Facebook group
- Post it to our subreddit
- Tag @homeassistant on Instagram
- Or via chat, drop us a line in the #lounge at Discord
See you next edition!