0.78: More auth, Switchmate, Yale Smart Alarm, OpenTherm


It’s time for a new release and oh boy, what a time to be alive! Today marks our 5th (!!!) anniversary. That’s 5 years we’ve been bringing privacy focused and locally controlled home automation to your home. Happy birthday to us.

This release includes two new features for the auth system. The first one is long-lived access tokens. These are tokens that don’t expire and can be used in your scripts instead of API password. Instructions on how to create and use them can be found on your profile.

Also on your profile page is a new list of existing refresh tokens. These are all the tokens that are currently active for your account. If you ran into issues that the remember login dialog didn’t show, you might have a lot. Don’t worry, you can delete them all.

New Platforms

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.

Breaking Changes

  • Trafikverket weather: Instead of having multiple sensor configurations per station, add only one configuration per station and select the type of measurement data to subscribe to using monitored_conditions. The configuration value type should no longer be used. (@endor-force - #15935) (sensor.trafikverket_weatherstation docs) (breaking change)
  • Geizhals: config has changed. Remove domain and regex, specify locale instead: AT, EU, DE, UK or PL. (@JulianKahnert - #15990) (sensor.geizhals docs) (breaking change)
  • Update to EnvoyReader 0.2, support for more hardware. Change keys in monitored_conditions from 7_days_production and 7_days_consumption to seven_days_production and seven_days_consumption (@jesserizzo - #16212) (sensor.enphase_envoy docs) (breaking change)
  • Fix Mi Flora median calculation. Removed retries and timeout config parameters, they were not used for several months. Replaced cache_value config with scan_interval to fix a bug in the PR. (@PaulAnnekov - #16085) (sensor.miflora docs) (breaking change)
  • Twitch now requires a client_id and so the platform got updated. (@ioangogo - #16428) (sensor.twitch docs) (breaking change)
  • The radiotherm fan and mode state attributes were updated to reflect the real-time fan and mode states of the thermostat, rather than the overall selected state (automatic, mostly). The mode attributes still contain the selected modes (fan on/auto, heat/cool/auto). (@cpw - #15031) (climate.radiotherm docs) (breaking change)

Beta Fixes

All changes

This is a companion discussion topic for the original entry at https://www.home-assistant.io/blog/2018/09/17/release-78/


I think the instructions for how to use them are kinda lacking from the layman’s point of view. Generating one is easy, but what do I do with it? Can I just put it where the API password used to go?

I have several things that connect by a web url, or from a shell script and all I want to know is whether I can put the access token where the API password went before in both of these cases, and if not what I have to alter.

The page that is linked to as ‘instructions’ does not answer this question for me. (It might answer the question for those in the know, if so could they translate it for the rest of us please!) All I see in that page is blocks of JSON, which does not correlate in any obvious way to my previous use of API password.


Also, if we could maybe remember to include the simple things in the newer documentation that would help a bunch :wink:

[edit] - I’d normally be more keen to just jump in and try various things, but on this particular subject every time you get something wrong you get an ip ban, and it’s just too much faff :slight_smile:


Hey, nice one on the long-lived tokens. This release however seems to not remember my login status? Does anyone else run into that issue?


For some reason the developer site didn’t bump the version, please visit https://developers.home-assistant.io/docs/en/next/auth_api.html#making-authenticated-requests to see the updated document for 0.78 release


Can I add this header via an nginx proxy and (finally) let users access my HA instance without the need to authenticate or select a user?


Yes you can. I’ve not yet tested that with 0.78 and the new tokens (0.78 looks to have introduced some cast issues, so I’ve not updated yet), but it worked with 0.77 and doing that with the api_password.


You sure about this? Because I already tried and it didn‘t work. Additionally, I don‘t think that long living tokens are handled bei the legacy api password handler.


There is currently a bug with casting devices in 0.78.0. Advise those who haven’t updated yet to wait until a fix is established.


@gbboy: What negative effect does this bug apply?


Several users myself included had devices go offline and not rediscover, due to the way the new configuration discovers devices it now times out after several tries as opposed to the old indefinite tries till it reconnected.


There is one entry I always look for and always seems to be missing, Zwave. The Zwave component/subsystem is woefully bad and in dire need of updating. Zwave is the core of my system and under HA it is slow and incredibly buggy. I love HA, but I do not love this component. :frowning:


Did you read the big things blog. they are looking to overhaul the zwave component

  • Better Z-Wave. Our current integration has room for improvement. The owner of Z-Wave has announced a public SDK , which we should explore to integrate with Home Assistant.


Yes, I did see that and I was not reassured. There’s a difference between “We’re working on it” and “We’ve noticed a gap”. They way it was worded I’m not expecting any updates to Zwave for a year.


0.78.1 included a fix


Well, feel free to get stuck in and help the developers :wink:


How does one configure the geo_location component? The docs don’t mention anything.


It is in-progress product. See: https://github.com/home-assistant/architecture/issues/42


0.78.1 gives me this error:

2018-09-20 13:53:34 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/discovery.py", line 168, in scan_devices
    results = await hass.async_add_job(_discover, netdisco)
  File "/usr/local/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/discovery.py", line 194, in _discover
  File "/usr/local/lib/python3.6/site-packages/netdisco/discovery.py", line 57, in scan
  File "/usr/local/lib/python3.6/site-packages/netdisco/ssdp.py", line 41, in scan
  File "/usr/local/lib/python3.6/site-packages/netdisco/ssdp.py", line 89, in update
    entry for entry in scan()
  File "/usr/local/lib/python3.6/site-packages/netdisco/ssdp.py", line 225, in scan
    for addr in zeroconf.get_all_addresses():
TypeError: get_all_addresses() missing 1 required positional argument: 'address_family'


See https://github.com/home-assistant/home-assistant/issues/16751


0.78.1 hasn’t resolved the issue
1 GH 2 GM unavailable this morning