0.89: Nissan Leaf, PlayStation 4, Point alarm control, Owlet baby monitor

It’s time for release 0.89. It’s another great new release with some cool new features, bug fixes and improvements. The first cool new feature is that yet another car is integrated into Home Assistant: the Nissan Leaf. Both deConz and SmartThings integrations keep expanding to cover more devices.

This release introduces a new mobile app component. @robbiet480, who also works on the iOS app, has taken the best parts of the Home Assistant iOS app component and turned it into a standardized API that any mobile app can build upon. This will allow any mobile apps to integrate with Home Assistant with a great user experience. If you are a mobile app developer, please check the updated app integration docs. We will be fine tuning the API in upcoming releases. Feedback is welcome.

Noteworthy backward-incompatible changes

Custom Components file structure change: A significant change in how the “under the hood” of Home Assistant works has led to forcing platforms to be resolved based off the component path, if it exists.

Today, if you want, you can override the Hue light platform, but not the other parts of the Hue integration. If a future update evolves the Hue component, removing or changing internal methods that the custom platform relied upon, the custom platform will start failing (like this report).

To avoid this, we’re going to no longer allow custom components to be partial overlays (just a platform). Instead, if you want to override a built-in platform, you will need to override the whole component.

This is enforced by first resolving the platform as a component, and if it exists, limiting the lookup path to the component path.

Example: if I look up the hue component, and it is provided by a custom component, then all platform lookups will also be looked up in the custom component dir. The same works the other way around, if a user would only try to override hue/light.py but not hue/__init__.py, the custom platform will be ignored.

Paulus has written some detailed information about this change on the developers’ blog, if you’d like more information. The Great Migration by Paulus

Existing SmartThings configuration entries will be removed, including the SmartApp/Automation from the SmartThings app. Home Assistant will prompt you to configure the integration again or it can be invoked from the integrations page. The configuration process is the same as before. To prepare, have your personal access token and a mobile device with the SmartThings Classic App handy. This will not affect the naming of devices or entities and is a one-time inconvenience. The implementation switches over to the SmartApp access token to synchronize subscriptions during setup of the config entry, which cannot be done using the personal access token.

New Platforms

Release 0.89.1 - March 8

Release 0.89.2 - March 12

If you need help…

…don’t hesitate to use our very active forums or join us for a little chat. The release notes have comments enabled but it’s preferred if you use the former communication channels. Thanks.

Reporting Issues

Experiencing issues introduced by this release? Please report them in our issue tracker. Make sure to fill in all fields of the issue template.

Backward-incompatible changes

  • HomeMatic component’s wireless actors are having two RSSI values. The way the component was programmed one of them was being overwritten. With this new change, the rssi attribute of HomeMatic entities has been removed. As a replacement the attributes rssi_device and rssi_peer have been added. The attribute of rssi will no longer be available, you’ll need to update to rssi_device, and you can add rssi_peer now as well! (fixes #20900) (@dagobert - #20902) (homematic docs) (breaking change)
  • You can now specifiy an action when calling the yeelight_start_flow service on your yeelights. The default action will be ‘recover’ if you do not specify something else. This action will be taken after the flow stops. (@zewelor - #21195) (light.yeelight docs) (breaking change)
  • Custom platforms that override a built-in platform that has a component, should now also include the component in the custom_components/ folder. So if you want to override hue/light.py with a custom version, you will also need to provide/copy over hue/__init__.py. See details in main section about this change. (@balloob - #21070) (breaking change)
  • Automatic discovery of TP-Link switches, bulbs and dimmers. This is a continuation of #15329 and adds support for automatic discovery of TP-Link bulbs, switches, and dimmers based on the new config flow. The integration needs to be enabled either in the integration configuration or alternatively by adding tplink component to the configuration file. As the devices are now configured on the component, this is a breaking change for light.tplink and switch.tplink. (@rytilahti - #18091) (tplink docs) (light.tplink docs) (switch.tplink docs) (breaking change)
  • Enhance SmartThings component subscription. See details in main section about this change. (@andrewsayre - #21124) (smartthings docs) (breaking change) (new-feature)
  • The iperf3 sensor platform has been separated into a component and a sensor to remove the service from the sensor platform. Configuration options have changed, please review the documentation and select the correct options. (@rohankapoorcom - #21138) (iperf3 docs) (sensor.iperf3 docs) (breaking change) (new-platform)
  • The google_travel_time platform no longer has an update service, use homeassistant.update with the appropriate entity_id(s) instead. (@rohankapoorcom - #21153) (sensor.google_travel_time docs) (breaking change)
  • Add ADB server functionality to Fire TV. This change removes the get_source configuration option. (@JeffLIrion - #21221) (media_player.firetv docs) (breaking change)
  • With the addition of the SmartThings Cover platform, the SmartThings Sensor platform will no longer represent Door, Garage Door and Window Share attributes. Additionally, if the cover device reports battery status, the value will be present as a state attribute (battery_level) and not a discrete sensor. (@andrewsayre - #21192) (cover docs) (smartthings docs) (breaking change) (new-platform)
  • The Toon component was broken some time ago, so now requires a Toon API developer account and can be configured using the Home Assistant integrations. Support for Switches & Smoke detectors has been removed. (@frenck - #21186) (toon docs) (breaking change) (new-platform)
  • Addition of config for trusted networks auth provider. It is a backward-incompatible changes for users who manually configured trusted network auth provider. An invalid config error will be thrown and HA won’t be able to fully started. (It is NOT a backward-incompatible changes for user who didn’t manual configured trusted network auth provider.) (@awarecan - #21111) (breaking change)
  • For some HomeMatic devices the sabotage attribute is replaced by error. The value (if not 0) is a device specific error code. (@dagobert - #21009) (homematic docs) (breaking change)

Beta Fixes

All changes