![](upload://kYr6OQ4gzito0Ki4sduMsNs9FOz.png)
Happy 6th birthday to us! Yep, it’s been 6 years since the first commit, 6 years since we started our quest for a local and privacy foucsed home automation hub. And I think that we’re doing a pretty ok job 😏
It’s time for Home Assistant release 99. And this release is adding a bunch of new great features all over the place.
Welcome Bram!
Nabu Casa has hired Bram Kragten. Bram has been active in the Home Assistant community for a while and is one of the driving forces behind the Lovelace UI. He will work on the Home Assistant frontend full-time. He will focus on making it easier to manage your Home Assistant installation, make sure all of the frontend is translatable and drive our efforts on making the frontend accessible for visually impaired people.
This is possible thanks to all the people who subscribe to Home Assistant Cloud ❤️
Device Automations
We took a step back, looked at Home Assistant, and thought about how we could make it easier for users to create automations. We realized that there was room for improvement. We identified the following issues:
- To write automations, users need to learn Home Assistant concepts like events, entities and services.
- It’s difficult to discover what can be automated. For example, if you’re automating a long press on the “turn on” button on a Zigbee remote, you need to know to listen to the event “zha_event” and match against the Zigbee device identifier of your remote and the long press type.
So we put our inventor hat on and have come up with a solution that allows users to create automations in the concepts that they already know: devices. Now when a user starts configuring an automation trigger, it can pick device automation as a new type.
![](upload://Zl3RViMbq0FafOBo1zvcR5VpaF.png) Screenshot of defining a device trigger in the UI.
The user starts by picking one of their devices that is integrated into Home Assistant. A second dropdown will now appear that contains all the possible triggers for this device. This list is populated based on the integrations that are linked to this device (ie. Hue & Light).
Device automations are available for triggers, conditions and actions. Today’s release supports lights, switches and Deconz. More to come in future releases as integration developers adopt it.
Big thanks to @emontomery for driving this effort. He added initial support for device automations as a YAML-only feature in Home Assistant 0.97 and has worked hard to extend it in this release with UI support and support for conditions, actions and more integrations. Also a big thanks to @kane610 who added added support for device automations to Deconz which helped squash bugs and improve the design.
Frontend
There is a lot to talk here. Buckle up.
@thomasloven has built a brand new round slider from scratch for use in Home Assistant. It is using modern technologies to create a great experience. This component was so useful standalone that he has decided to release it as a standalone web component that anyone can use in their websites.
![](upload://4BrU6C0jLEpS9r2HeVFPCWphsIr.png)
Shout out to @iantrich who has been on fire in recent weeks squashing a ton of bugs and adding some nice features to improve the Lovelace experience. And a shout out to @SeanPM5 who has been bringing UX bugs and improvements to our attention. Our frontend team is seriously awesome.
Unused entities has been moved into the configure UI section and completely revamped by @bramkragten. It’s now a table, you can see a lot more info, you can sort it. If you are using Lovelace storage mode, you can select entities and add them to your UI directly from that screen.
![](upload://8i89h2Eh9ZrFBJScSpdpira4XNt.png) Screenshot of the new unused entities page.
Now that we have a data table component, Bram also went ahead and used it in a new devices page. This page, still experimental, will allow users to see a list of all their devices and sort them by manufacturer, area or battery %. The goal is to create a one stop shop for device management.
![](upload://fsZKzHMXoJo4fEyLr157IrkURv6.png) Screenshot of the new devices page.
And there is a ton more, here are some of the other highlights:
- Allow subscribing to an MQTT topic inside the MQTT dev tools @bramkragten
- Option to display last changed in glance-card @iantrich
- Add image option to glance card entities @iantrich
- Allow controlling timer entities from the more info dialog @iantrich
- Fill example data in dev tools @bramkragten
- Stop effect in more-info-light @iantrich
- Add vibration on mobile when controlling entities @bramkragten
- Update Home Assistant logs when activating the info developer tool tab @bramkragten
Launch Home Assistant Cast from Python
Home Assistant now supports opening Home Assistant Cast from the backend. It is available as the service cast.show_lovelace_view
. This allows you to open a view on your Chromecast as part of an automation. For example, show the frontdoor and who is home when your doorbell rings.
Note that Home Assistant Cast requires your Home Assistant installation to be accessible via https://
. If you’re using Home Assistant Cloud, you don’t need to do anything. Otherwise you must make sure that you have configured the base_url
for the http
integration.
Hass.io
Hass.io is now able to work with your secrets stored in Home Assistant. So now you are able to use !secret my_value
inside add-on options like you can do inside configuration.yaml
. For more info about how to define secrets, check the docs.
We have published a release candidate of HassOS that is compatible with the new Raspberry Pi 4. Download it here.
In other news
Home Assistant had a booth this year at the CEDIA home tech trade show. We spend a lot of time talking to manufacturers about local APIs, official integrations and better support for open source systems.
Hanging out at @CEDIAExpo in innovation alley pic.twitter.com/9SnUXo11oA
— Home Assistant (@home_assistant) September 13, 2019
We also had some great drinks in the evenings with companies that integrate with Home Assistant. In this picture Konnected.io and Senic.
Beers after CEDIA with @balloob from Home Assistant and teams from Senic and Neeo. pic.twitter.com/c6Ag4DeEtU
— Konnected.io (@Konnected_io) September 14, 2019
@timmo has released version 2.0 of his Home Panel. This is an alternative user interface for Home Assistant.
It's finally here. 🎉
Home Panel v2.0.0 is now released and has been completely rewritten in #React with #TypeScript
⚠️Please read the release notes before upgrading as are breaking changes to know about before upgrading!https://t.co/NMDQu4zZW8#HomePanel #HomeAssistant pic.twitter.com/ucA1HxwurB
— Timmo (@timmo001) September 14, 2019
New Integrations
New Platforms
If you need help…
…don’t hesitate to use our very active forums or join us for a little chat.
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.
Breaking Changes
-
Unifi - Removes support of directly configuring the UniFi platform for device trackers. Use
unifi:
instead. Extra configuration through config entry options from the GUI (see release notes 0.98 for example) and through unifi configuration in configuration.yaml will continue to work.- (@Kane610 - #26587) (unifi docs)# This will no longer work device_tracker: - platform: unifi # This does unifi:
-
Plex
- Configuration is moved from the media_player and sensor platforms to the plex component. Existing configurations will need to be updated. The
remove_unavailable_clients
andclient_remove_interval
options for media_player entities have been removed as the functionality has limited value now that the entity registry exists. - (@jjlawren - #26488) (discovery docs) (plex docs) - Logins using a username/password/servername are no longer supported on the Plex sensor platform. This functionality will be partially restored in followup PRs which add a configuration flow and external authentication. - (@jjlawren - #26444) (plex docs)
- Remove default host for Plex config. - (@jjlawren - #26583) (plex docs)
- Removes default value of host config parameter.
- Requires one of host or token in the configuration.
New example configuration entry:
plex: host: 192.168.1.5 token: mysecrettoken media_player: use_episode_art: false
- Configuration is moved from the media_player and sensor platforms to the plex component. Existing configurations will need to be updated. The
-
PiHole - This change requires existing configurations for the
pi_hole
integration to be moved from sensor platform key to api_hole
top level key. This allows services, switches, and possibly other entities to be added to the integration in a future pull request. - (@johnluetke - #25837) (pi_hole docs)-
monitored_conditions
is removed -
pi_hole
configuration block defines host, port, location and ssl options
New example configuration entry:
pi_hole: host: pi.hole
-
-
Jewish calendar - This platform has been moved to an integration. Automations based on
sensor.issur_melacha_in_effect
comparison toTrue/False
need to be updated to usebinary_sensor.issur_melacha_in_effect
on and off states. - (@tsvi - #26200) (jewish_calendar docs)New example configuration entry:
jewish_calender: language: hebrew diaspora: False
-
Homematic IP - Unify device_state_attributes handling for Homematic IP Cloud. The naming of entity attributes has been corrected (missing underscore) to follow the standards:
- moisture detected –> moisture_detected
- motion detected –> motion_detected
- power mains failure –> power_mains_failure
- presence detected –> presence_detected
- smoke detector alarm –> smoke_detector_alarm
- water level detected –> water_level_detected
- window state –> window_state
-
Linky - This platform has been moved to an integration. - (@Quentame - #26076) (linky docs)
New example configuration entry:
linky: - username: email_address password: password
-
Radiotherm - Update climate attributes. Automations may break if the user is checking against the previous “mode” or “fan” attributes or previous mode or fan attribute values. - (@dieselrabbit - #26465) (radiotherm docs)
- The old “mode” attribute is now supported via “hvac_action” attribute.
- The old “fan” attribute now called “fan_action” to follow “hvac_action” .
-
SolarEdge - Monitored conditions are no longer supported. - (@Cereal2nd - #26282) (solaredge docs)
Beta Fixes
All changes
This is a companion discussion topic for the original entry at https://www.home-assistant.io/blog/2019/09/18/release-99/