Home Assistant Core 0.116!

So, how have you been? Fully processed the massive 0.115 birthday release yet?

Honestly, I haven’t. There was soo much in 0.115, and to me, it feels like that
release was yesterday. 😅

So, today, a nice size, manageable release that brings some smaller things to
the table. Lots of fixes, UI tweaks and improvements; hopefully a smooth sail!

The biggest changes can be found in the Supervisor. @ludeeus has been smashing
on his keyboard to add the option to upload and restore snapshots during
onboarding. A much-upvoted WTH. As a bonus, he also added performance
metrics to the Supervisor UI. Nice work!

As always, enjoy the release!


Entities card editor

You can now edit the entity rows of your entity card. That means you can
not only set an entity id, but also set the name, icon and secondary info.

Screenshot of the new editor for the entity card.
You can now edit the entity row; adjust the name, icon and secondary info.

Also, using special rows will no longer force you use the YAML editor, however,
you you can still use the UI editor and edit the special rows. UI editors for
the special rows will come in the future.

User and person management combined

We combined the user and person UI, this means that the user configuration
panel will only be visible for users that have advanced mode enabled.

The person detail dialog now has a toggle that allows you to give the person
access to Home Assistant. If you toggle it on, you can set a username and a
password for the person. If you toggle it off, the user will be removed.

This makes it easier to manage the people in Home Assistant,
everything in one place.

Screenshot of the person "allow to login" option.
The person edit dialog now has a toggle to allow a person to log in.

Restore snapshots

You can now upload snapshots from the UI and restores them. You can do this in
the supervisor UI in the snapshots panel. But you can also do this during

Screen recording of restoring a snapshot during onboarding.
Screen recording of restoring a snapshot during onboarding.

This means you no longer have to set up Home Assistant, add and set up the Samba
add-on to then restore your snapshot. Instead, you can just select your snapshot
in the first step of the onboarding and it will be restored.

This makes moving to another system a breeze!

Performance metrics in the Supervisor UI

The Supervisor now shows performance metrics in its UI, so you’ll have a better
idea of how much resources are used. Thanks

Screenshot of the new Supervisor performance metrics.
Supervisor UI now shows performance metrics.

H.265 stream support for Android

@uvjustin added support for H.265 streaming in the Android app, it will use a
native video player that is shown on top of the Home Assistant UI. This player
will only work in the more info dialog, and can not be used In Lovelace cards.

Automation editor has now weekday support

@misiu added a nice feature to the automation editor. Using a time
condition in the UI, now has the ability to select the weekdays the condition
should test against.

Screenshot of the new weekday conditions.
You can now select the days to match in time conditions.

Python 3.7 deprecated

Python 3.9 has been released on 5 October. This means that Python 3.7 support
is now deprecated and will be removed after two months (which will be
effective in 0.118).

This is only a concern if you are running Home Assistant Core directly on
Python. You can check the Python version Home Assistant uses by going to the
information screen in Configuration -> Info.

If you run Home Assistant OS, Supervised or Container, you don’t have to worry
about this, as the Home Assistant project takes care of this for you. As a
matter of fact, if you use one of those methods, you are already running
Python 3.8.

We are currently working on ensuring Python 3.9 is fully supported and tested.

Other noteworthy changes

  • MQTT now supports tag scanning, thanks to @emontnemery.
  • The Hyperion integration had a large overhaul by @dermotduffy, ensuring
    this integration now actually works!
  • @Misiu ensured the OpenWeatherMap integration supports all languages
    it can provide.
  • The utility meter now supports a bi-weekly cycle, thanks to @hareeshmu.
  • @timkoers added uptime sensors for network clients to the UniFi integration.
  • The Shelly integration now shows power and energy sensors for roller mode
    devices, thanks to @firstof9.
  • You can now filter history by using glob matching filters. For example, you
    can now exclude sensor.*_temperature from being recorded. Thanks @bdraco!
  • deCONZ has a new option; You can now disable the automatic addition of new
    devices. Furthermore, @Kane610 also added a service to clean up up
    orphaned devices. Thanks!

New Integrations

We welcome the following new integration this release:

New Platforms

The following integration got support for a new platform:

Integrations now available to set up from the UI

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

Release 0.116.1 – October 8

Release 0.116.2 – October 9

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.

Breaking Changes

Below is a listing of the breaking change for this release, per subject or
integration. Click on one of those to read more about the breaking change
for that specific item.

Custom Lovelace Cards

This release contains breaking changes for custom card developers, check the
developers blog
for more information.

If you have a custom card that stopped working this release, please report
this with the custom card author.


YAML support for AlarmDecoder has been removed in favor of UI configuration.
Additionally, the panel_display option has been removed and the alarm display
sensor will always be created with AlarmDecoder now. Please see the updated
AlarmDecoder documentation for instructions on how to
set up AlarmDecoder via the UI.

(@ajschmidt8#37998) (alarmdecoder docs)


State conditions with attribute specified: When testing against a non-string
attribute value, you now need to specify the value in your configuration in the
same type as it is in the attribute (instead of as a string).



Canary is now available for configuration via the UI. This also means its no
longer configured in YAML. Existing configurations should be automatically
transitioned to configuration via UI. You can safely remove you Canary YAML
configuration after ugprading. YAML support will be fully removed in
Home Assistant 0.118.0.

(@ctalkington#40055) (canary docs)

HomeKit Controller, Plant, SmartThings, Xiaomi

Some integrations (homekit_controller, plant, smartthings
and xiaomi_miio) previously used lux as their unit of measurement for
entities that covered illuminance. Now, these entities use lx as their unit
of measurement to be consistent with other integrations.

This could be a breaking change for using such entities in,
for example, influxdb.



Fixes the Hyperion Integration to work with the current Hyperion-NG release.
Refactors to rely on the
hyperion-py client.

The default_color, hdmi_priority and effect_list parameters no longer have
any effect. Instead, users should use light profiles
as default color.

The effect_list is now automatically populated.

The hdmi_priority parameter no longer make sense with Hyperion-NG and will
be removed in a future release.

(@dermotduffy#39738) (hyperion docs)


We changed the way how we handle binary sensors in the underlying library. It
is no longer possible to support automations based on the binary_sensor
schema. Instead, you can use the new counter state attribute for any given
KNX binary sensor.

Before this change:

-  name: cover_abstell
   state_address: "2/0/33"
     - counter: 1
       hook: 'on'
         - entity_id: cover.sonne_abstellkammer
           service: cover.open_cover
     - counter: 1
       hook: 'off'
         - entity_id: cover.sonne_abstellkammer
           service: cover.close_cover

After this change:

# binary_sensor.yaml
- name: cover_abstell
  state_address: "2/0/33"
# automation.yaml
  - alias: 'Binary sensor test counter=1 on'
      platform: numeric_state
      entity_id: binary_sensor.cover_abstell
      attribute: counter
      above: 0
      below: 2
      - condition: state
        entity_id: binary_sensor.cover_abstell
        state: 'on'
      - service: cover.open_cover
        entity_id: cover.sonne_abstellkammer

  - alias: 'Binary sensor test counter=1 off'
      platform: numeric_state
      entity_id: binary_sensor.cover_abstell
      attribute: counter
      above: 0
      below: 2
      - condition: state
        entity_id: binary_sensor.cover_abstell
        state: 'off'
      - service: cover.close_cover
        entity_id: cover.sonne_abstellkammer

If you intend to use the counter feature (counter > 1) make sure you also
enable ignore_internal_state (default: true) for your binary_sensor and
set the new context_timeout attribute to the time in between you want it to
react to your sensor clicks (defaults to 1 – which should be fine).
Otherwise, the counter will not work correctly.

(@marvin-w#40304) (knx docs)


Message and domain are now removed from the logbook state_changed events.

These are now handled by the frontend as we move closer to making the logbook

(@bdraco#40070) (logbook docs)

Material Design Icons

The Material Design Icons are updated to v5.6.55, the mdi:scooter icon is
replaced by a new icon, the old icon is available as mdi:human-scooter


Lights using the Pilight integration will now turn on to the last used
brightness instead of its maximum brightness.

If you want to retain you lights turning on to its maximum brightness you can
set the default intensity in the light_profiles.csv file.

The steps to set this up:

  1. In the your main config folder (where you’ll find configuration.yaml)
    create a new file called light_profiles.csv.
  2. For each of lights add an line with its entity id and the brightness
    you want, as a value from 0 to 255.



(@daniel-jong#39549) (pilight docs)


The Synology integration is now deprecated. You should now use the Synology DSM
instead. Support for cameras has been added to the Synology DSM integration
making it a full replacement.

(@shenxn#39958) (synology docs)

System Monitor

Not really a breaking change, since the overall logic did not change. Arguments
that were previously mandatory for sensors of this integration are still
mandatory and optional arguments remain optional.

However, we now enforce those mandatory arguments to be present,
since otherwise this integration creates entities that cannot do anything,
e.g., the sensor for IPv4 addresses cannot do anything if no network interface
is specified from which to take the IP.

If the integration fails to load, check the log to see which arguments are
missing in your configuration. The documentation also has been updated to
clearly show which arguments are mandatory.

(@spacegaier#39687) (systemmonitor docs)


The TekSavvy integration has been removed. The API that was used by this
integration is no longer available.


Universal Devices ISY994 / LCN

The Kelvin unit no longer includes the degree sign in accordance with
scientific standards. If you use the isy994 and lcn integrations you may
need to update automations or data collectors that depend on the unit of

(@RichieFrame#40574) (isy994 docs)


The auto fan mode for the fan platform has been removed. The auto mode isn’t
supported by the entity model in Home Assistant and was initially added
overlooking our entity model.

If you have automations or scripts targeting the VeSync fan entity should
review these and update as needed.

(@TheGardenMonkey#40559) (vesync docs)


The ieee_address parameter was renamed to ieee for zha.permit
and zha.remove services.

This makes all services to use consistently named parameters.

(@Adminiuga#40652) (zha docs)

All changes

Click to see all changes!