2023.6: Network storage, favorite light colors, new integrations dashboard

Home Assistant Core 2023.6! 🎉

Get ready for a classic, old-fashioned, jam-packed release! 🤯

I am excited about so many things being shipped in this release that it is hard to pick a favorite 😅 This release has it all.

Being able to directly use and back up my Home Assistant configuration to my network storage is absolutely incredible! But I also really enjoy the new and clean integrations dashboard and pages.

The feature that greatly improved the Home Approval Factor in my household is definitely the addition of the new favorite colors in the light dialogs 🎨

Enjoy the release!

../Frenck

Don’t forget to join our release party live stream on YouTube 7 June 2023, at 12:00 PDT / 21:00 CEST!

Connect and use your existing network storage

Do you have a network storage in your home? Like a QNAP or Synology NAS? This release adds the ability to add and use that storage with Home Assistant!

This long and highly requested feature is now available when running the Home Assistant Operating System. In the Settings > System > Storage menu, you can now find a whole new set of controls to connect to your storage and use it to, for example, use your network share as a media source in Home Assistant.

Screenshot showing two external network storages attached to Home Assistant.

Even better: You can use it as a target for your backups so that when Home Assistant creates a backup for you, it will store it directly on your network storage.

Multiple network storages are also supported; if you like, you can easily add more.

Integrations dashboard & pages

The integrations dashboard has gotten a major overhaul!

There have been quite some usability issues with the previous version of the integration dashboard. For example, if you use ESPHome with many devices, you are undoubtedly familiar with the annoying scrolling in that little card. Or, big error messages stretching those cards out, messing up the whole page.

This release brings in a whole new integrations dashboard that addresses many of these issues, aiming to provide a cleaner and more consistent experience.

Screenshot showing the look and feel of the new integrations dashboard.

Device based integrations, like ESPHome, are combined: no more scrolling. A failing integration no longer stretches the layout or makes the layout “jump” during retries. Custom integrations and integrations relying on the cloud are now more visibly marked.

Selecting the cog icon on the integration card will bring you to a brand new integrations page, showing all information about the integration:

Screenshot showing an integration page, in this case, the integration page of ESPHome.

In the above example, the ESPHome integration page shows all devices this integration has. All the information and options, previously squashed into the integration dashboard, are now available here.

These brand new integration pages are helpful in other places in Home Assistant. For example, the device pages can now link back directly to the integration that provided it.

Light entity dialog improvements: favorite colors

Recently we introduced new controls in the light entity dialog, and this release iterates on the design by adding the current brightness, new controls, and adding favorite colors! 🎨

Screenshot showing the improved light entity dialog, with the new favorite colors.

Each light (or light group) has its own set of colors. These colors can be added, changed, removed, and reorganized using drag-and-drop. To enter edit mode, select and hold one of the colors:

Screen recording demonstrating editing favorite colors.

Added to the entity dialog: last changed

By popular request, the information on when an entity was last changed has been added back to the new entity information dialogs.

Not only that, @piitaya added a very nice easter egg! You can click on it to toggle between the relative and absolute format!

Screen recording demonstrating how to toggle between relative and absolute time.

Related information

Which automation is using that blueprint? Well, Home Assistant can now tell you that! On the Settings > Automations & Scenes > Blueprints page, select the three dotted menu on any blueprint to discover which automations are using that blueprint.

Not only that, if you accidentally try to remove a blueprint that is still in use, Home Assistant will stop you from removing it and tell you which automations still rely on it.

Hold on; there is more related! The related items in the entity information dialog were improved as well. The old list of links is gone, and it now shows a way more modern view of all related items for an entity:

Screenshot of the improved related entity information dialog.

Notice how it nicely links back to the new integration page here too!

Copy ’n paste support in the automation editor

An amazing contribution by @karwosts in this release that adds cut, copy & paste capabilities to the automation and script editors!

You can now copy and paste any trigger, condition, and action into different places of your automation and even paste it into a different automation altogether!

Screen recording demonstrating cutting & pasting a condition in the automation editor.

Python 3.11 and significant performance upgrades

This release ships running on Python 3.11! In case you are wondering, what is that? Well, Python is the language the Core of Home Assistant is written in.

Why it matters? It is seriously faster! 🚀

If you run the Home Assistant Operating System or are using the Home Assistant Container installation type: You won’t have to do anything as we handle the upgrade to Python 3.11 for you.

And that is not all in terms of performance. We’ve also upgraded internal parts, including a newer SQLite version that should be faster. Oh! And, of course, @bdraco has been all over the place to optimize a lot (a lot lot).

This release can be expected to be a lot faster (or less consuming) of resources at runtime.

Matter 1.1

The Matter implementation within Home Assistant is now based on the freshly released 1.1 version of the Matter standard. This brings a ton of stability fixes and improvements, but unfortunately, no new features.

Thanks to @Diegorro98, we do now have support for tilt covers! Besides that, this Home Assistant release ships with several generic bugfixes and optimizations; we’ve managed to squeeze out some additional performance to make state updates for your Matter devices lightning-fast 🚀

All these stability improvements to both the Matter stack and our implementation did not go unnoticed:

Z-Wave updates

There has been quite a bit of progress on Z-Wave in Home Assistant.

Thanks to @raman325, the integration reached platinum level 🏆 on our quality scale. This means the integration now does things right according to best practices which should mean a better user experience in general.

Have you ever turned on a Z-Wave light from the Home Assistant UI just to see the toggle going off again after a couple of seconds, then after some more seconds seeing it going back to on? This long-standing issue (that even got the nickname flip/flop) for certain devices, that are slow to respond to their state has finally been addressed.

For those of you that like to automate everything, you can now automate not only the Z-Wave device state but also the device configuration. We added device configuration parameter entities so that almost every Z-Wave device setting is now available as an entity.

Not stopping there, we also added entities for device connection statistics, which you can use to, for example, create a notification if a device generates more than a certain amount of dropped messages. If you want to track a misbehaving device, you can enable these sensors to view the history of the connection performance.

In the background, @AlCalzone is working tirelessly on the Z-Wave JS driver, which is the foundation of our Z-Wave integration. Among other things, some devices are now faster to interview during addition, and more devices can be configured.

New entities! Date, time, date/time

We welcome three new entity types in this release: date, time & datetime.

These entities allow integrations to provide date, time, or date/time input controls from the UI. They are very similar to the input datetime helper but are available for use by integrations.

Screenshot showing the new date & time entities introduced How the new time, date, and date/time entities will look like on your dashboards.

They are so new that no integrations are using them yet, but you can expect to see usage in (custom) integrations of these soon!

Thanks for creating those @raman325!

Other noteworthy changes

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

  • When using services in the UI (like in the automation editor), only options and settings available to the selected target devices & entities will be shown. This makes the UI much cleaner! Thanks, @emontnemery and @bramkragten!
  • The Roborock integration (introduced in the previous release) received much love and now provides a wide range of new entities. Thanks @Lash-L!
  • The Android TV Remote integration now provides a media player entity too! Nice, @Drafteed!
  • KNX now provides its own panel, allowing you to upload your KNX project file, and offers a group monitor for live bus diagnostics. Information from the project is also used for device triggers. Amazing @marvin-w and @farmio!
  • @bdraco added the option to disable Webhooks for ONVIF in case your camera isn’t fully following specifications.
  • The variables action is now also available in the automation and script editors in the UI. Thanks, @piitaya
  • The add-on dashboard now has a search bar. Helpful, @bramkragten!
  • The Samsung TV now has a remote entity, allowing you to send remote key presses directly to your TV! Thanks @peitschie!
  • The States in the developer tools now uses the entity ID in the entity ID picker. Thanks, @bramkragten!
  • @gjohansson-ST added a service to change a running timer helper, @frenck did something similar and added a service to set the value of a counter helper.
  • The AccuWeather integration now provides sensors for the weather condition and solar irradiance values. Thanks, @bieniu
  • You can now update your QNAP QSW directly from Home Assistant. Nice @Noltari!
  • The BMW Connected Drive now allows you to toggle climate on/off and new entities related to the charging of your car. Thanks, @rikroe and @cpoulsen!

New Integrations

We welcome the following new integrations in this release:

This release also has a new virtual integration. Virtual integrations are stubs that are handled by other (existing) integrations to help with findability. This one is new:

Integrations now available to set up from the UI

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

Release 2023.6.1 - June 8

Release 2023.6.2 - June 14

Release 2023.6.3 - June 23

Need help? Join the community!

Home Assistant has a great community of users who are all more than willing to help each other out. So, join us!

Our very active Discord chat server is an excellent place to be at, and don’t forget to join our amazing forums.

Found a bug or issue? Please report it in our issue tracker, to get it fixed! Or, check our help page for guidance for more places you can go.

Are you more into email? Sign-up for our Building the Open Home Newsletter to get the latest news about features, things happening in our community and other news about building an Open Home; straight into your inbox.

Backward-incompatible changes

Python

All Home Assistant versions, of which the Home Assistant project manages the Python version for you, have been upgraded to Python 3.11. This affects the following installation types:

  • Home Assistant Operating System
  • Home Assistant Container
  • Home Assistant Supervised

This might affect you when using custom integrations, as those must be compatible with Python 3.11.

Furthermore, as of this release, Python 3.10 is deprecated, and support will be removed in Home Assistant 2023.8. This only affects you if you are running Home Assistant Core installation type in your own Python virtual environment. Please update your Python version to Python 3.11.

If you run Home Assistant OS, Home Assistant Container, or Home Assistant Supervised, we have taken care of this for you; you will be using Python 3.11 automatically on upgrade.

APC UPS Daemon

sensor.ups_self_test_interval sensor now properly splits unit “days” from the raw data. Previously, it would show 7 days as the sensor state. Now it shows 7 with a unit “Days”.

(@yuxincs - #93844) (documentation)

Counter

The counter entities no longer restore their previous manually set configuration (using the - now deprecated - counter.configure service) on Home Assistant startup. Instead, it will now use the configuration as set in the helper configuration in the UI (or as configured YAML, if used).

This behavior is removed, as it caused configuration issues, as the new configuration was never applied again (but forever restored). This behavior was out of the ordinary for Home Assistant and thus now standardized.

The value of the counter is still restored and available across Home Assistant restarts.

(@frenck - #93344) (documentation)

Command Line

The Command Line integration changes its YAML configuration format from an old-style platform configuration to a more modern integration-style configuration format.

For example, if you have a binary sensor configured previously as:

# Example configuration.yaml entry
binary_sensor:
  - platform: command_line
    command: "cat /proc/sys/net/ipv4/ip_forward"

That same binary sensor is now configured under the command_line integration configuration as:

# Example configuration.yaml entry
command_line:
  - binary_sensor:
      command: "cat /proc/sys/net/ipv4/ip_forward"

Note: While this is currently not yet a breaking change, it did raise questions during our beta testing period. Hence we have added this as a breaking change to provide more context.

(@gjohansson-ST - #92824) (documentation)

D-Link Wi-Fi Smart Plugs

The previously deprecated YAML configuration of the D-Link Wi-Fi Smart Plugs integration has been removed.

D-Link Wi-Fi Smart Plugs are now configured via the UI. Any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.

(@gjohansson-ST - #92590) (documentation)

EDL21

The previously deprecated YAML configuration of the EDL21 integration has been removed.

EDL21 is now configured via the UI. Any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.

(@gjohansson-ST - #93551) (documentation)

EZVIZ

The binary sensor providing “upgrade available” information has been removed and replaced by a new update entity. If you use the binary sensor in your automations, scripts, or dashboards, you will need to adjust them to this change.

(@RenierM26 - #85377) (documentation)

Frontier Silicon

The previously deprecated YAML configuration of the Frontier Silicon integration has been removed.

Frontier Silicon is now configured via the UI. Any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.

(@gjohansson-ST - #93552) (documentation)

Google Nest

The Google Nest YAML configuration has been fully removed. You should ensure you have imported your configuration and credentials into the UI before upgrading.

Nest Desktop or OOB authentication, which was previously disabled by Google, has now been removed.

(@allenporter - #92311) (documentation)

IBM Watson TTS

Home Assistant was still using the legacy Python pip package resolver, which has been removed. Due to upstream package conflicts, the IBM Watson TTS integration has been disabled.

The upstream project providing the libraries used has been notified repeatedly in, at least, the past two years; unfortunately, without response. We had no other choice than to disable this integration.

(@frenck - #92124) (documentation)

IHC Controller

The default unit of measurement for manually set up sensors from IHC has been removed. Home Assistant now assumes all sensors with a unit of measurement set are a number. IHC sensors can be text, but because of the default unit of measurement, there is currently no way to get text sensors from IHC working.

This is a breaking fix because if you currently have temperature sensors without a unit of measurement set, you will have to set this for the sensors.

(@dingusdk - #93054) (documentation)

LG Netcast

LG Netcast media players no longer have fake (assumed) playing or paused states, and those are replaced with the on state.

If you used the playing or paused state in your automations, you will need to update them to match this change.

(@Drafteed - #93543) (documentation)

Meteorologisk institutt (Met.no)

The weather forecast provided by the weather entity has changed. The current day has been added to the forecast. If your automations or scripts rely on the first day to be tomorrow, you need to adjust them.

(@mmalina - #91891) (documentation)

MQTT

MQTT sensor configurations that still use last_reset_topic will fail. The support was deprecated in Home Assistant 2021.11 and is now removed. Users should use last_reset_value_template instead.

(@jbouwh - #93792) (documentation)

Nextcloud

The previously deprecated YAML configuration of the Nextcloud integration has been removed.

Nextcloud is now configured via the UI. Any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.

(@gjohansson-ST - #93550) (documentation)

Obihai

The previously deprecated YAML configuration of the Obihai integration has been removed.

Obihai is now configured via the UI. Any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.

(@gjohansson-ST - #93549) (documentation)

Persistent notifications

Persistent notifications are no longer stored in the state machine. This means that we no longer create an entity for each persistent notification.

If you used these entities in, for example, automations, scripts, or templates, you won’t be able to use these anymore.

(@bdraco - #92828) (documentation)


The persistent_notification.mark_read service has been removed.

(@bdraco - #94122) (documentation)

Rain Bird

The previously deprecated YAML configuration of the Rain Bird integration has been removed.

Rain Bird is now configured via the UI. Any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.

(@gjohansson-ST - #92599) (documentation)


The previously deprecated rainbird.rain_delay service for Rainbird has been removed. Please update any automation or script depending on this service.

(@gjohansson-ST - #92601) (documentation)

Salda Smarty

Home Assistant was still using the legacy Python pip package resolver, which has been removed. Due to upstream package conflicts, the Salda Smarty integration has been disabled.

The upstream project providing the libraries used has been notified repeatedly in, at least, the past two years; unfortunately, without response. We had no other choice than to disable this integration.

(@frenck - #92124) (documentation)

Samsung Smart TV

The previously deprecated YAML configuration of the Samsung Smart TV integration has been removed.

Samsung Smart TV is now configured via the UI. Any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.

(@epenet - #93392) (documentation)

Total Connect

The tampered and low battery status zone attributes have been moved into their own dedicated binary sensors. If you use these attributes in your automations, scripts, or dashboards, you will need to update those to reflect this change.

(@austinmroczek - #73152) (documentation)

Universal Devices ISY/IoX

The previously deprecated sensor entities for Insteon devices’ On Level and Ramp Rate, as well as ISY Variable sensors, have been removed. Please use the dedicated number and select entities instead.

(@shbatm - #92255) (documentation)

Vallox

The previously deprecated YAML configuration of the Vallox integration has been removed.

Vallox is now configured via the UI. Any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.

(@slovdahl - #91096) (documentation)

Z-Wave

On/Off properties for the Indicator CC are no longer discovered as entities.

They were previously discovered as sensor entities which were not useful in cases where you wanted to change these values, and you would need to change the value for all three On/Off properties simultaneously in order for them to work, which wasn’t supported with our existing discovery model.

(@raman325 - #90248) (documentation)


For devices with the Entry control generic device class, the Door lock mode config parameter no longer gets created as a sensor entity and will instead get created as a select entity.

(@raman325 - #92223) (documentation)


The Nice IBT4ZWAVE module was previously discovered as a light, but now it is discovered as a cover. The light entity will be permanently unavailable and can be safely deleted.

(@raman325 - #93946) (documentation)


If you have zwave_js cover entities already and your device supports Window Covering CC, you may see newly created cover entities. The old cover entities can safely be deleted, but all customizations must be reapplied to the new entities.

(@raman325 - #93314) (documentation)

If you are a custom integration developer and want to learn about breaking changes and new features available for your integration: Be sure to follow our developer blog. The following are the most notable for this release:

Farewell to the following

The following integrations are also no longer available as of this release:

  • Goalfeed has been removed. Their service has been discontinued. (@thecode - #94129)

All changes

Of course, there is a lot more in this release. You can find a list of all changes made here: Full changelog for Home Assistant Core 2023.6