2023.11 To-do: Add release title

Home Assistant 2023.11! 🎃

It seems like I forgot to come up with a release title for this release and left a placeholder in the title. If I only could have it on a to-do list somewhere… 🤔

Before we dive into this pretty massive release, I want to quickly look back at two amazing things that happened in the past month.

First, we presented chapter 4 of the Year of the Voice, which introduced the new wake word feature in Home Assistant. This really brings the voice assistant experience to the next level, and we are super excited about it! Like have you seen the R5-based voice assistant droid? 😍

Second, we had a security audit performed on Home Assistant by one of the top security auditors in the world! You can read all about it in the blog post. A big shout out to everybody subscribed to Home Assistant Cloud, as you enable us to do these things! 🥰

Alright, about this release! It is huge! I love the tile card, and the ability to easily customize the information it shows now is just. 🤩 But mostly, I’m super stoked about the new to-do lists, which will probably become a very central part of my household.

Enjoy the release!

../Frenck

Don’t forget to join our release party live stream on YouTube 1 November 2023, at 13:00 PDT / 21:00 CET!

There is a lot to-do!

There are many things to do in our lives, which is what @allenporter realized, too! We now have a new entity type in Home Assistant: To-do list entities!

A to-do list entity represents a list of tasks, and its state is the amount of uncompleted tasks that are still open. You can create one or more to-do lists and view and manage them by selecting the new To-do lists item in the sidebar.

Screenshot showing the new to-do lists dashboard, where you can manage multiple to-do lists and even create new ones.

Besides the entities, there are also new services available allowing you to automate on your to-do lists as well. Use automations to create, complete, or clean up tasks on your to-do lists.

So, what can you do with all of this? A lot! For example, you can create a to-do list for your groceries, automate a list of house chores for your kids or other household members, or automatically put a task on a list to replace the batteries of a sensor when it is low. You could even send a push notification to your phone when you are near the home improvement store and have items on a to-do list that you need to buy there.

Thanks @allenporter, and everyone involved, for this amazing addition to Home Assistant! We can now check this one off from our wishlist! ✔

Shopping lists are now to-do’s too!

These to-do lists look a lot like the shopping list, right? Correct!

They are very much alike, and that is why we have moved the shopping list to a to-do list as well! Once you upgrade to this release, your existing shopping list will be automatically converted to a to-do list.

Screenshot showing the shopping list, which now is a to-do list.

But that is not all; we also updated the Shopping list card for your dashboards, now fittingly named To-do list card, to support multiple to-do lists. You can now select which to-do list you want to show on the card you’ve put in your dashboard.

Screenshot showing configuration of a to-do list card, that allows selecting the to-do list to display.

Integrations providing your to-dos

But wait! There is more besides local to-do lists and shopping lists. Now that we have a to-do list entity, we can also start using it with other integrations that, for example, can get your to-do lists from an external service.

As of this release, you can bring in your Todoist and Google Tasks to-do lists to Home Assistant as well!

This is awesome, as it brings all these to-do lists together in one place, and above all, provides you with the power of Home Assistant to automate on them.

Matter 1.2 is here!

The Connectivity Standards Alliance has launched version 1.2 of the Matter specification, together with a new version of the Official Matter SDK, which is not only prepared for new device types but also contains all kinds of smaller stability- and bug fixes.

Matter logo

Although you can only benefit from the new device types once actual devices are released, we have upgraded our Matter implementation to version 1.2 to benefit from the stability improvements and to be prepared for the new device types.

Interesting fact: Did you know that Home Assistant is used as a test platform by many device manufacturers? This potentially means that devices will be implemented and tested on the Home Assistant Matter controller before others; cool!

Customize the information shown in your Tile cards

Tile card now displays the entity’s state information on the card. But what if you want to display something else? @piitaya to the rescue!

You can now customize it to your liking. Show the entity’s state, any of its attributes, or a combination of both!

You can add any attribute of the entity to the state content of the tile card.

This not only works for the climate entities but for all entities! You could, for example, add the brightness % of a light or the battery level of a sensor. Simply add the attribute to the state content and drag and drop them in the order you want them to appear.

Select any date range in the energy dashboard

The energy dashboard now allows you to select a custom date range. This allows you to see the energy usage of your home over a specific period.

Screenshot showing the energy dashboard, which now allows you to select a custom date range.

A great addition to the energy dashboard. Thanks, @TillFleisch!

New conditions for the conditional card

The conditional card is a great way to show or hide cards conditionally. For example, you can show a card only when the sun is setting or when you are home.

When using such a state, you also match it against multiple values. For example, you can show a card when the sun is setting or when the sun is below the horizon in a single condition.

But even more interesting, @piitaya added a whole bunch of new conditions to this card for you to use! Let’s dive in…

User condition

The user condition allows you to show or hide cards based on the user who is currently logged in. Useful if you have multiple users in your Home Assistant instance and want to show or hide cards based on who is looking at the dashboard.

Screenshot showing the configuration dialog of the conditional card, which now allows you to set which users to show the card at.

The screenshot above shows how the card is only shown when the user who is logged in is Frenck. It is hidden for all other users.

Numeric state condition

Similar to the state condition, the numeric state condition allows you to show or hide cards based on the state of an entity, only this time, based on its numeric value. Useful if you want to show or hide cards based on temperature, humidity, or any other numeric entity.

Screenshot showing the configuration dialog of the conditional card, on which you can now configure a numeric condition when to show the card.

In the screenshot above, this thermostat card will only be shown on the dashboard when the temperature outside has dropped below 18 degrees Celsius.

Screen condition

Last but not least, the screen condition allows you to show or hide cards based on the screen size of the device you are viewing Home Assistant on.

For example, you could show some cards only when viewing Home Assistant on a desktop or tablet and hide them when viewing Home Assistant on a mobile device.

Screenshot showing the configuration dialog of the conditional card, which you can now configure to show the card only on a specific screen type.

The screenshot shows how the control of the garage door is only shown on mobile, as it is most often used from mobile when arriving at home.

Restarting into safe mode

You can now restart Home Assistant in safe mode. This mode will disable all custom integrations and custom frontend resources (for example, custom cards and themes).

It is useful if you are experiencing issues with your Home Assistant and want to quickly rule out custom integrations or custom dashboard resources as the cause of these issues.

Screenshot showing the restart dialog, which now provides a new option: Restart Home Assistant in safe mode.

Want to get out of safe mode again? Just restart Home Assistant one more time, and everything will be back to normal.

This is helpful! Thanks, @emontnemery!

Set up Improv devices directly from Home Assistant!

If you bought a device that supports Improv Wi-Fi over Bluetooth, and you are using Bluetooth in Home Assistant, you can now set up your device directly from Home Assistant itself!

Plug in the power of your brand-new device, and Home Assistant will discover it and help you set it up by connecting it to your Wi-Fi network and adding it to Home Assistant.

Screenshot showing a discovered Improv Wi-Fi device over Bluetooth, which can be set up and added to your Wi-Fi network straight from Home Assistant.

Improv Wi-Fi is a fully open standard that can be freely adopted and implemented by any hardware creator, no matter how big or small. Improv Wi-Fi is also supported by ESPHome.

Nice job on this one @emontnemery!

Configuring script fields for your script in the UI

Scripts have a really neat feature: fields. Fields allow you to define variables in your script that you can pass in when calling your script as a service.

For example, you could create a script that sends a notification to a specific person and use a field to define the message you want to send.

These fields support our UI selectors, so you can provide a UI for your script fields. However, this was only available when you created your scripts in YAML format.

But not anymore! Thanks to @karwosts, you can now also configure your script fields in the UI!

Screenshot showing the scripts fields in the UI while editing a script in the script editor.

You can find the fields in the script editor when selecting the three dots in the top right corner of the editor and selecting Add fields from the drop-down menu.

Other noteworthy changes

There are many more improvements in this release; here are some of the other noteworthy changes this release:

  • The HomeKit Bridge now handles changes in the capabilities of devices and the removal/addition of devices automatically! Thanks, @bdraco!
  • The lovely new two-pane view you see in the to-do lists has also been added to the calendar dashboard. Nice @bramkragten!
  • ZHA will now raise a repair issue if it finds out the network settings have changed externally. This helps you get up and running again in no time. Thanks, @puddly!
  • @gjohansson-ST added a brand new country selector that can be used in your Blueprints and script fields. Nice!
  • The Withings integration has reached the platinum quality mark. Thanks, @joostlek! Job well done!
  • We now have better connection management for the IKEA IDÅSEN desk. Nice @abmantis!
  • The Fitbit integration got a complete overhaul, can be set up via the UI, and now supports Fitbit nutrition sensors. Thanks, @allenporter!
  • The SwitchBot Cloud integration now supports climate devices. Thanks, @SeraphicRav!
  • @rappenze added event entities support to the Fibaro integration. Cool!
  • The System Bridge integration now supports media players. Thanks, @timmo001!
  • @raman325 extended our template engine with the ability to check the type of a variable. Super helpful for complex templates! Thanks!

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. The following virtual integrations have been added:

Integrations now available to set up from the UI

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

Release 2023.11.1 - November 4

Release 2023.11.2 - November 10

Release 2023.11.3 - November 22

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

Demo

In the unlikely event that you are using the demo integration, you will need to ensure that your YAML configuration for demo integration is only enabled via the integration domain key and not via the entity platform configuration. The latter has been removed.

# Example configuration.yaml

# This is correct
demo:

# This no longer works and should be removed
light:
  - platform: demo

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

OpenUV

The OpenUV “UV Level” sensor has updated its possible state values so that translations can occur. The new values are:

  • extreme
  • high
  • low
  • moderate
  • very_high

If you previously used the state values of this sensor in your automations, you will need to update them to use the new values.

(@bachya - #101978) (documentation)

OpenWeatherMap

The OpenWeatherMap rain and snow sensors now have a different unit of measurement (mm/h instead of mm) and a different device class (precipitation_itensity instead of precipitation).

(@MatteoGheza - #101485) (documentation)

Transmission

The option to set a custom polling interval has been removed. If are using custom interval and really need it, you can use the homeassistant.update_entity in an automation to poll at your custom pace. See our documentation on defining a custom polling interval for more information.

(@engrbm87 - #98858) (documentation)

Västtrafik

Västtrafik has upgraded all infrastructure for handling external access, including handling user accounts for 3rd party applications.

This means that users of the older infrastructure now need to migrate to use the new environment. Create a new account at https://developer.vasttrafik.se, then create a new application and subscribe to the Planera Resa v4 API.

Next replace your old client identifier and secret in your Home Assistant configuration.

For more information, see this official post from Västtrafik.

(@Miicroo - #102570) (documentation)

WeatherFlow

The VOC device class has been removed from the air density sensor, and its unit of measurement has been changed to kg/m³.

(@natekspencer - #101777) (documentation)

Withings

The Withings sleep sensors will now show only the data from last night instead of an aggregation of the data since the day before noon.

(@joostlek - #101993) (documentation)

World Air Quality Index (WAQI)

The state attributes of the WAQI air quality sensor have been moved to their own sensors. The previous state attributes are now deprecated and will be removed in 2024.5.

If you are using the state attributes of the WAQI air quality sensor, you will need to update your automations to use the new sensors.

(@joostlek - #101217) (documentation)

ZHA (King of Fans)

Improved support for King of Fans (Hampton Bay) breaks previous workarounds such as template fans (example) or automations/scripts that set fan speed percentage or preset.

If you have an automation that sets speed, it will now be at one speed higher. If you set the speed at 100% before, it would actually set the speed at 75%, but now it will be 100%. If you have an automation that sets the preset to ‘on’ to get 100% speed, now the request will fail, and you will have to change the speed to 100% instead.

(@tronikos - #101859) (documentation)

Z-Wave

With this release, you will need to update your zwave-js-server instance. You must use zwave-js-server 1.33.0 or greater (schema 33).

  • If you use the Z-Wave JS add-on, you need at least version 0.2.1.
  • If you use the Z-Wave JS UI add-on, you need at least version 2.2.3.
  • If you use the Z-Wave JS UI Docker container, you need at least version 9.2.3.
  • If you run your own Docker container or some other installation method, you will need to update your zwave-js-server instance to at least 1.33.0.

(@raman325 - #102790) (documentation)


Basic Command Class values were previously exposed as number entities and were disabled by default. They are now exposed as light entities and are enabled by default.

If you have scripts or automations that use any of these number entities, they should be updated to use the new light entities instead. Any previously created number entities for this Command Class can safely be deleted once you have validated that your scripts and automations are up to date.

(@raman325 - #101438) (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:

  • Eight Sleep has been removed. The API has changed and is no longer accessible, making the integration unusable. (@raman325 - #102669)
  • IMAP email content has been removed. This functionality is now available in the IMAP integration. Users have been assisted to migrate to the new integration in the past months. (@jbouwh - #101233)
  • Shiftr has been removed. Shiftr.io closed its platform and is no longer available. (@stefanroelofs - #102224)

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.11