Home Assistant Core 2022.12! 🎄
Already the last release of the year, right on time to bring you some cool
new features to work with during the upcoming Holidays!
2022 has been a fantastic year for the Home Assistant project. We became
one of the world’s largest and fastest-growing GitHub open source projects! ❤️ Tons of new features each month, and not just that,
we matured a lot! Everything became more stable and faster, and
the UX made leaps forwards as well!
We looked back at 2022 during the State of the Open Home,
and sneak peaked at 2023, with some great new UI concepts
and: The year of the voice! 🗣️ Missed it?
The full video is available on YouTube.
But! The year isn’t over yet! This release really Matters! We are thrilled to
be one of the first in the world to roll out Matter support to the public! 🎉
No Matter devices yet? Don’t worry! There are tons of things in this release
that will keep you busy. The Tile card got “features”! You can now extend
your Bluetooth range using Shelly devices, and a long-requested feature lands:
Local Calendar. 🤩
For 2022, this is it! Thank you for joining our community. Thank you for
sharing, helping out, contributing, creating YouTube videos, blog articles,
Thank you for using Home Assistant! ❤️
Happy holidays and for the last time in 2022: Enjoy the release!
Don’t forget to join our release party live stream on YouTube today at 12:00 PDT / 21:00 CET!
It does Matter!
Does it Matter? Yes, Home Assistant does Matter!
Matter is a new smart home interoperability standard, an open-source protocol,
that defines how devices can communicate and work together. Read more about
Matter in this comprehensive write-up from The Verge.
Today we release the first iteration of the Matter integration for Home
Assistant. It is a big and important foundation that is probably best described
as “alpha” or maybe even a “developer preview” — allowing anyone to help
and jump in on the Matter development. For the first release,
we think that is a great start!
At this point, Matter-enabled products are not (yet) generally available.
However, if you can get a Matter-certified product, it can be commissioned!
A Matter device integrated with Home Assistant.
Adding Matter devices (commissioning) can be done using our iOS and Android
Home Assistant Companion apps. Adding support for this to our apps is being
worked on and will become available in the upcoming weeks. The Android Companion
app supporting Matter, is currently available for beta testing.
Interested? We have made more details available in our documentation.
Tile card gets features
In the last release, we introduced the Tile card.
Today we extend the Tile card by adding support for “features”.
For the Tile card, “features” are additional extras that can be added to a Tile
card. For example, they can provide additional controls or information for
the entity the Tile card displays.
Multiple usable Tile features have been added:
- Command buttons for vacuum cleaners
- Brightness slider for lights
- Controls for opening/closing and tilting covers
Checkout the documentation for more information about Tile features
But that is not all! The Tile card also got colors! 🎨
Based on the entity’s state, the card will get different colors. This color
provides an additional visual indication of the entity’s state.
Shiny new state colors!
Those lovely new state colors added to the Tile card, as shown above, are not
just added to the tile card. This same color logic has now also been applied to
the state history and the logbook!
Previously, these colors would be random. Now they are predictable, recognizable
and, above all: just look a lot better 🤩
This same experience will also be visible on the dedicated Logbook and History
pages of course.
This is one of the longer outstanding and bigger requested features
of Home Assistant: A local calendar!
Building a calendar isn’t easy, but Allen Porter did it! And it is not
just a calendar with dates and descriptions… oh no! Allen went all in!
We now have a full blown, local, built-in calendar, which can do all-day event
or recurring ones tuned to your liking. Even multiple different local calendars
Bluetooth proxy using Shelly devices
In the September release, we brought Bluetooth everywhere,
by adding Bluetooth proxy support, allowing any ESPHome device in your home
to relay Bluetooth traffic across your home.
This release adds support for using Shelly devices as a remote Bluetooth
adapter as well!
It works with all second-generation Shelly devices that use firmware 12.0 or
later. Those are able to provide Bluetooth advertisements to Home Assistant’s
This can greatly help with extending the range of your Bluetooth network to
help with things like Bluetooth temperature or plant sensors in your home.
In other Bluetooth news: The performance of Bluetooth has, again, been improved
this release, and the memory usage should be lower. Always good!
New entity: text
Say hello to a new entity:
text! The text entity is very similar to the
Text helper (also known as
The difference is that the helper is configured and managed by you, while the
new text entities are provided by integrations. This means integration can now
provide entities that ask for a textual input in the UI.
The first integrations that can now provide text entities as of this release are
KNX and MQTT.
Summing entities without templates
Let’s say you have two numeric sensor entities, and you like to have an
entity that shows the sum of those two; how would you do that? Creating a
template entity, right? Nope! 😁
You can now create a new helper entity that sums the values of two (or more)
sensor entities into a brand-new entity.
When creating a new helper, select “Combine the state of several sensors”,
pick the sensor you’d like to sum, and select “Sum” for the statistic
You might have noticed that this looks like the “Min/Max” helper. True!
We have renamed “Min/Max” to “Combine the state of several sensors”,
to make it more descriptive as it gets more features.
Other noteworthy changes
There is much more juice in this release; here are some of the other
noteworthy changes this release:
- You can now set your country and default language Home Assistant should use
in the general settings. These new options allow
Home Assistant to consider those in future features.
- Using Twinkly in your Christmas tree? 🎄 You can now control the effects!
Right on time! Thanks, @Olen!
MQTT reached the gold level on the integration quality scale! Nice work @jbouwh!
But that is not all; it now supports MQTT v5 and WebSocket connections too!
- NO2 and VOC sensor entities are now working with HomeKit. Thanks, @stackia!
Shelly is now a platinum integration! Thanks, @thecode, @bieniu,
and @chemelli74 for your hard work on this integration 🥇
ZHA now supports the new Aqara c1 pet feeder. Thanks @dmulcahey for
adding it, and thanks @kirovilya figuring out the communication!
- The humidifier card, now has on/off controls. Thanks, @Shulyaka
- Amazon Alexa now supports humidifiers. Thanks, @jbouwh!
BTHome version 2 has been released and Home Assistant now supports it!
- Slack now has a Do Not Disturb sensor you could automate on. Thanks, @tkdrob!
- Support for IP-Secure routing has been added to KNX. Thanks, @farmio!
- Are you using Picnic for your groceries? You can now add products to your
order straight from Home Assistant. Thanks, @corneyl!
We welcome the following new integrations in this release:
Integrations now available to set up from the UI
The following integrations are now available via the Home Assistant UI:
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.
The Cloudflare integration no longer relies on ipify.org to determine your IP,
but instead is using the whoami service.
This means that if you have configured your network only to allow traffic there,
you would need to adjust it to allow for the new situation.
(@ludeeus – #81714) (documentation)
The previously deprecated
and the corresponding binary sensor have now been removed.
(@bachya – #81056) (documentation)
The scan interval (
scan_interval) option in the Glances configuration is
removed, and the update interval will use the default value (60 seconds).
If you have already configured Glances integrations, the previously saved interval
option will still be used. To revert to the default update interval,
you need to re-add the integration.
You can use the
homeassistant.update_entity service in an automation
for custom update intervals.
(@engrbm87 – #72748) (documentation)
Media player groups containing players that provide an invalid media player
entity state, will now report a “Unknown” group state.
The list of valid media player states is available in our
(@epenet – #78465) (documentation)
The HERE Travel Time integration now uses the HERE API v8.
publicTransportTimeTable has been merged into
Your configuration will be migrated automatically;
no manual interaction is necessary.
(@eifinger – #80892) (documentation)
The unit system is no longer controlled by an options setting of the HERE
Traveltime integration but uses the built-in custom units configurable per
The distance sensor now uses kilometers as a default and must be manually
configured if it was previously using the imperial system.
(@eifinger – #79159) (documentation)
The videoloss event has been removed from the supported list. The event has
always been used as a keep-alive for most Hikvision devices, and the library
uses it internally. Leaving it enabled as an option causes everything to break
if the event is actually processed, so it was removed to eliminate confusion.
Any customized options specified in the YAML configuration for a videoloss
event will need to be removed, and videoloss entities will no longer be
generated by the integration.
If you used any of these entities in your automations or scripts, you will
need to update those to remove the use of these entities.
(@mezz64 – #81173) (documentation)
PowerOff state of the select entity will be changed to
If you relied on this state value in your automations or script,
you must adjust to this change.
(@bieniu – #77491) (documentation)
The events fired when the mobile app scanned a Tag had an incorrect device ID;
This has been corrected.
As a result, the evens now contain a different but correct device ID. If you
relied on the device ID in your automations, you might need to adjust those
with the new device ID.
(@balloob – #82820) (documentation)
The name of the mapping keys used for defining HVAC modes in the Modbus
climate integration (introduced in 2022.11) has changed. This was needed
to fix an issue with the
off key, which has a different meaning in YAML.
hvac_mode_register: address: ... values: off: 0 heat: 1 cool: 2
You now have to use:
hvac_mode_register: address: ... values: state_off: 0 state_heat: 1 state_cool: 2
(@avishorp – #81749) (documentation)
YAML configuration of MQTT entities under the platform key (e.g.,
which was deprecated in Home Assistant Core 2022.6, is no longer supported.
The configuration must instead be done under the
The legacy MQTT device tracker is no longer supported. See
the documentation for the supported MQTT
device tracker configuration.
As of this release, you should now use the modern configuration schema for all
manually configured MQTT entities. Please note that this does not impact
MQTT discovery, for example, Zigbee2MQTT.
(@jbouwh – #82102) (documentation)
encoding configuration option for the MQTT camera set to
was previously deprecated and has now become an invalid configuration.
image_encoding configuration option is now used to set Base64 encoding.
Please use the new
image_encoding config parameter (set to
(@jbouwh – #82244) (documentation)
The previously deprecated
openuv.update_protection_data services have now be removed.
(@bachya – #81055) (documentation)
The previously deprecated YAML configuration of the Radarr
integration has been removed.
Radarr 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.
(@tkdrob – #81210) (documentation)
The previously deprecated
binary sensors, and
freeze_protection_temperature sensor have now been removed.
(@bachya – #81053) (documentation)
The unit of measurement for the charging power sensor has been corrected.
As the unit has changed, it will create a long-term statistics warning
that you need to resolve in the statistics developers tools manually.
(@epenet – #81412) (documentation)
You will need to resolve the analytics warning by adjusting the previous unit.
bypassed attribute in Risco zones has been removed and replaced with
a switch. The matching services have also been removed, and you can bypass
and un-bypass a zone using the regular switch services
For example, if you had a call to:
service: risco.bypass_zone target: entity_id: binary_sensor.motion_bedroom
You can replace it with:
service: switch.turn_on target: entity_id: switch.motion_bedroom_bypassed
(@OnFreund – #81137) (documentation)
The previously deprecated
has now been removed.
(@bachya – #81054) (documentation)
statistics sensor characteristic has been removed and
replaced by the more versatile
If you use the
quantiles characteristic, you will need to adapt your sensor
configuration to recreate identical values with the
(@ThomDietrich – #81749) (documentation)
The configuration of
statistics sensors has changed:
state_characteristic configuration setting is now mandatory.
sampling_size configuration setting is now optional and no longer
defaults to the arbitrary value 20. You can now define
max_age, or both depending on your use case. Existing sensors won’t behave
differently by the change. However, you might want to check whether your
currently defined sensors have a meaningful
sampling_size configured or if
you wish to remove this setting altogether.
(@ThomDietrich – #81749) (documentation)
The Subaru API has changed and no longer returns values required by two sensors:
- External temp
- 12V battery voltage
These sensors have been removed from the Subaru integration.
(@G-Two – #83213) (documentation)
As new PoE entities were introduced with 2022.11, this release, the old
troublesome PoE client implementation that these entities replaced,
has been removed. Upgrading will automatically remove the old entities.
Please note that the new PoE entities are disabled by default and represent
each PoE-capable port without mapping it to a client.
(@Kane610 – #81749) (documentation)
If you are a custom integration or theme 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:
Google Chat has been removed. It relied on the Google Hangouts APIs,
which have been shut down, rendering the integration unusable.
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 2022.12