Blog
Thinking Big
Today marks the 5th anniversary of Home Assistant. I want to spend this post not only reflecting on the last 5 years, but also look at what is ahead of us, where we want to go, what we want Home Assistant to be.
Home Assistant wasn’t born out of ideology. I built it because I got some smart lights and wanted to script them. I made that script open source and it went from there. As Home Assistant has grown, so has the world around us, and so have I.
A lot of IoT products have been introduced since Home Assistant started. Sadly, the trend in these products is to send all data to the cloud and manage your house from there. I’ve come to realize that it’s not in the big corporations interest to make a product that focuses on privacy and local control. Our data is too useful for them.
I don’t like this trend. I don’t like seeing more and more of our data being hoarded by a few giant companies, centralizing it in a few systems and using it to influence how we’ll be treated online. It’s our lives, our data, and we should be in control. Not some algorithm optimized for engagement.
And so I want to introduce a goal for Home Assistant. A goal that will shape how the platform will evolve in the upcoming years.
Read on →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
- Add temperature sensors to the velbus component (@Cereal2nd
- #16203 ) (velbus docs) (sensor.velbus docs) (new-platform) - Add Volkszaehler sensor (@fabaff
- #16188 ) (sensor.volkszaehler docs) (new-platform) - Switchmate (@Danielhiversen
- #15535 ) (switch.switchmate docs) (new-platform) - Add support for Habitica (@ASMfreaK
- #15744 ) (habitica docs) (sensor.habitica docs) (new-platform) - Geo Location component (@exxamalte
- #15953 ) (feedreader docs) (geo_location docs) (new-platform) - Add Cover to the Insteon component (@teharris1
- #16215 ) (insteon docs) (cover.insteon docs) (new-platform) - switchbot (@Danielhiversen
- #16396 ) (switch.switchbot docs) (new-platform) - Add Yale Smart Alarm component (@domwillcode
- #16377 ) (alarm_control_panel.yale_smart_alarm docs) (new-platform) - Add OpenTherm Gateway climate platform (@mvn23
- #16299 ) (climate.opentherm_gw docs) (new-platform)
Release 0.78.1 - September 20
- Updates documentation repo URL in PR template (@frenck
- #16537 ) - SnmpSensor: Fix async_update (#16679) (@mtdcr
- #16716 ) (sensor.snmp docs) - Handle chromecast CONNECTION_STATUS_DISCONNECTED event (@awarecan
- #16732 ) (media_player.cast docs) - Upgrade netdisco to 2.1.0 (@awarecan
- #16735 )
Release 0.78.2 - September 21
- Fix discovery
Release 0.78.3 - September 22
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
0.77: Authentication system 👮♂️ + Hangouts bot 🤖
It’s time for a great new release and it includes a big change: the new authentication system has been activated! We’ve worked very hard on this for the last couple of months to make the transition as smooth as possible. Updating to this release is a non-breaking change (unless you had no API password configured). As can be seen in the video above, when you start Home Assistant after the update, you will be presented with our new onboarding flow. This will ask you to create a new account after which you will be able to log in to Home Assistant.
Once logged in, you will have access to the following new features:
- Change your password
- Configure multifactor authentication (TOTP)
- Manage other users (limited to account created during onboarding)
Although it’s possible to configure authentication, we strongly recommend to stick with the default authentication configuration. If you had auth providers configured in a previous Home Assistant release, we recommend to remove the configuration and start using the default.
It will take some time before all of the Home Assistant ecosystem has been migrated over to the new auth system. Home Assistant will print a warning whenever an application connects to Home Assistant with the legacy authentication. This will help users notify the application developers to transition to use the new OAuth2 authentication. For non-interactive scripts or other applications that are unable to update, we are planning to introduce a migration path for components to adopt url specific auth tokens and also introduce long lived access tokens to replace API passwords. A list of impacted components can be found here
Our iOS app will soon be updated to work with the new auth. It’s already in testing. The old app will continue to work with the legacy API password support. It will however require a second login when using the webview.
If you are using a proxy server (NGINX etc) in front of Home Assistant to provide authentication, check this blogpost
I want to say a biiiig thank you to all the people that have been involved in the development and testing of the new authentication system. It’s been a big project and it’s been great to see how we, as a community, have rallied together to tackle it. Especially a big shout out to @awarecan
Hangouts
And that’s not it ! @hobbypunk90
Lovelace
You didn’t think we would forget about Lovelace, did you? This release include a new notification drawer thanks to @jeradM
New Platforms
- Netatmo public (@colinfrei
- #15684 ) (sensor.netatmo_public docs) (new-platform) - Add ecovacs component (@OverloadUT
- #15520 ) (ecovacs docs) (vacuum.ecovacs docs) (new-platform) - Add support for NOAA tide information (new PR) (@jcconnell
- #15947 ) (sensor.noaa_tides docs) (new-platform) - Hangouts (@hobbypunk90
- #16049 ) (hangouts docs) (notify docs) (new-platform)
Release 0.77.1 - August 29
- Fix trusted networks login error (@awarecan
) - Fix data_key override by parent class (@syssi
- #16278 ) (binary_sensor.xiaomi_aqara docs) - Fix error when vacuum is idling (@cnrd
- #16282 ) (vacuum.xiaomi_miio docs)
Release 0.77.2 - August 31
- Correct wemo static device discovery issue. (@lamiskin
- #16292 ) (wemo docs) - Fix LIFX effects (@amelchio
- #16309 ) (light.lifx docs) - avoid error in debug log mode and rss entry without title (@exxamalte
- #16316 ) (feedreader docs) - Fix charts for climate devices (@jeradM
) - Fix header in Lovelace Glance cards (@balloob
) - Fix Profile page on Safari (@balloob
) - Fix redirect to login page on offline server (@balloob
)
Release 0.77.3 - September 3
Frontend changes only:
- Ask “save login” after hass connected PR
@awarecan - Show an error when invalid client id or redirect uri PR
@balloob - Disable autocapitalization of username field PR
@timmo001 - Upgrade MDI icons PR
@balloob - Update translations
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
0.76: Auth almost done, FleetGo, PJLink, RMV public transport
This release has a migration, initial startup can take ~20 minutes (depends on size DB)
This release includes a database migration to allow us to store context in the database. This will make it possible in the future to introduce attribution. For example, we’ll be able to say which user opened the garage door or which automation triggered the party mode at 3am.
The auth system is entering release candidate status 🎉. If nothing major is found, it will be enabled by default starting the next release (0.77) with backwards compatibility modus turned on. If you want to get ahead of the pack, you can already easily enable it now:
homeassistant:
# add this part
auth_providers:
- type: homeassistant
# uncomment this to enable backwards compatible API password support
# - type: legacy_api_password
For iOS users, your frontend should be a lot faster. We had an issue that forced us to serve the frontend in compatibility mode, which is slower. We haven’t been able to solve the issue
Warning. If you are using the internal MQTT broker, we’ve had to make a change how the password is set. In the past it would automatically start the broker with the user homeassistant
and a password equal to the API password. This is no longer the case and you need to configure it yourself now:
mqtt:
password: mypass
New Platforms
- deCONZ - support for power plugs (@Kane610
- #15752 ) (deconz docs) (light.deconz docs) (switch.deconz docs) (breaking change) (new-platform) - RitAssist / FleetGO support (@depl0y
- #15780 ) (device_tracker docs) (new-platform) - Add support for OpenUV binary sensors and sensors (@bachya
- #15769 ) (openuv docs) (binary_sensor.openuv docs) (sensor.openuv docs) (new-platform) - Add Enphase Envoy component (@jesserizzo
- #15081 ) (sensor.enphase_envoy docs) (new-platform) - Add media_player.dlna_dmr component (@StevenLooman
- #14749 ) (media_player.dlna_dmr docs) (new-platform) - Add PJLink media player platform (@benoitlouy
- #15083 ) (media_player.pjlink docs) (new-platform) - Add RMV public transport sensor (@cgtobi
- #15814 ) (sensor.rmvtransport docs) (new-platform)
New Features
Release 0.76.1 - August 19
- No longer show “Store login” on each login when using API password (@balloob
) - Add forgiving add column (@balloob
- #16057 ) - Tuya fix login problem and add login platform param (@huangyupeng
- #16058 ) (tuya docs) - Add notify platforms to loaded components (@balloob
- #16063 ) (notify docs) - Column syntax fix + Add a file if migration in progress (@balloob
- #16061 )
Release 0.76.2 - August 21
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
0.75: Spider, Tuya, Brunt, Magicseaweed API
And just like that, it’s August. Time is flying by. People all over the world have been busy to create this release for you. This release again a ton of cool new stuff.
First, let’s talk entity IDs. Entity IDs are how we identify entities in automations and scripts. They start with the domain and end with an object id, for example: light.kitchen
. Or, if you’re unlucky light.node_2_2_abc
. With this release, it will now be possible to manage entity IDs of entities via the UI! Just as with changing the name, it requires that the integration is able to supply a unique ID for each entity.
Screenshot of the new user interface to change entity IDs.
This release also includes a bunch more Tuya integrations thanks to @huangyupeng
New Platforms
- Add Tuya climate platform (@huangyupeng
- #15500 ) (tuya docs) (climate.tuya docs) (new-platform) - Add Tuya fan support (@huangyupeng
- #15525 ) (tuya docs) (fan.tuya docs) (new-platform) - Add Tuya cover and scene platform (@huangyupeng
- #15587 ) (tuya docs) (cover.tuya docs) (scene.tuya docs) (new-platform) - Add support for Tahoma Smoke Sensor (@fucm
- #15441 ) (tahoma docs) (binary_sensor.tahoma docs) (new-platform) - Add Brunt Cover Device (@eavanvalkenburg
- #15653 ) (cover.brunt docs) (new-platform) - Add spider thermostat (@peternijssen
- #15499 ) (climate.spider docs) (new-platform) - Add spider power plug component (@peternijssen
- #15682 ) (spider docs) (switch.spider docs) (new-platform) - Add support for P5 FutureNow light platform (@juhaniemi
- #15662 ) (light.futurenow docs) (new-platform) - Add Magicseaweed API support (@jcconnell
- #15132 ) (sensor.magicseaweed docs) (new-platform) - Add a component for Sisyphus Kinetic Art Tables (@jkeljo
- #14472 ) (sisyphus docs) (light.sisyphus docs) (media_player.sisyphus docs) (new-platform) - Add Genie Aladdin Connect cover component (@shoejosh
- #15699 ) (cover.aladdin_connect docs) (new-platform)
Release 0.75.1 - August 4
- Upgrade Adafruit-DHT to 1.3.3 (@superpuffin
- #15706 ) (sensor.dht docs) - Fix rfxtrx device id matching (@Danielhiversen
- #15819 ) (rfxtrx docs) - Fix custom panel and Hass.io panel (@balloob
)
Release 0.75.2 - August 6
- Upgrade voluptuous to 0.11.5 (@fabaff
- #15830 ) - Fix envisalink reconnect (@Cinntax
- #15832 ) (envisalink docs)
Release 0.75.3 - August 9
- Fix downgrade hassio cannot get refresh_token issue (@awarecan
- #15874 ) (hassio docs)
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
0.74: Tuya, Cloudflare DNS, Push Camera and Users UI
It’s time for Home Assistant 0.74! 🎉
This week we heard that Guido van Rossum, the founder of Python, is taking a permanent vacation as the leader of Python after being at the helm for almost 30 years. Guido has not been directly involved with Home Assistant. However he created Python and was part of the team that built asyncio, technologies that power the foundation of Home Assistant and what makes us so fast and robust. Under Guido’s guidance, the Python community has grown out to be very friendly and open. A great inspiration for us and other tech communities out there. Thanks for all you have done Guido!
Paulus & Guido at PyCon US 2018
All right, back to Home Assistant. The last release introduced a tech preview of the new user system. The initial preview still required creating users via the command line. In the last two weeks, we’ve worked hard on adding support for an onboarding wizard and a user management interface. A walkthrough of the new features can be found below. Thanks to @awarecan
To try it out today, read these instructions. The user system is still in tech preview. We’ve moved fast to get where we are today. The next step is that we need to take a step back and look at the system as a whole to make sure it’s robust and ready for prime time.
We keep seeing great examples
To help our development and design teams, we’ve also introduced a Lovelace card gallery
Thanks to @c727
I’m happy to announce that this release introduces support for Tuya thanks to @huangyupeng
New Platforms
- Add Tuya component and switch support (@huangyupeng
- #15399 ) (tuya docs) (switch.tuya docs) (new-platform) - Add Tuya light platform (@huangyupeng
- #15444 ) (tuya docs) (light.tuya docs) (new-platform) - Added support for Duke Energy smart meters (@w1ll1am23
- #15165 ) (new-platform) - Added Push Camera (@dgomes
- #15151 ) (camera.push docs) (new-platform) - Add Cloudflare DNS component. (@ludeeus
- #15388 ) (cloudflare docs) (new-platform) - Add HomematicIP alarm control panel (@mxworm
- #15342 ) (alarm_control_panel docs) (homematicip_cloud docs) (alarm_control_panel.homematicip_cloud docs) (new-platform)
Release 0.74.1 - July 24
- Bugfix HomeKit name and serial_number (@cdce8p
- #15600 ) (homekit docs) - Use case insensitive comparison for Sonos model check (@amelchio
- #15604 ) (media_player.sonos docs) - Frontend component should auto load auth coomponent (@awarecan
- #15606 ) (frontend docs) - Cast/Sonos: create config entry if manually configured (@balloob
- #15630 ) (cast docs) (sonos docs)
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
0.73.2 - Security Incident
Today we are releasing 0.73.2 to fix a security incident. We’ve discovered that 9 months ago, with the release of Home Assistant 0.56, we misconfigured the SSL context that aiohttp used (PR
A man in the middle attack is when an attacker is able to inject itself between you and the server you’re communicating with, allowing it to read and alter the communication. The odds of this happening at home is very rare, yet we wanted to be transparent about this incident.
After research, the following integrations have been impacted. Although the odds are extremely small, we still suggest that if you use any of these integrations, to create new API keys or change your password.
- climate.sensibo
- cloud (only short lived tokens impacted)
- device_tracker.automatic
- duckdns
- freedns
- google_assistant (manual setup)
- google_domains
- homematicip_cloud
- image_processing.openalpr_cloud
- microsoft_face
- namecheapdns
- no_ip
- notify.flock
- notify.prowl
- rest_command
- scene.lifx_cloud
- switch.rest
- telegram_bot.polling
- tts.voicerss
Also impacted, but integrations are read only:
- sensor.airvisual
- sensor.ebox
- sensor.fido
- sensor.foobot
- sensor.hydroquebec
- sensor.startca
- sensor.teksavvy
- sensor.thethingsnetwork
- sensor.tibber
- sensor.waqi
If you are running Home Assistant on a system with Python 3.4, we’ve created a new release 0.64.4b0 with the patch applied. We have made it available as a beta. To install the pre-release run python3 -m pip install homeassistant==0.64.4b0
.
New Hass.io images, based on HassOS
After 4 months of hard work, we are happy to announce our new images for Hass.io, based on HassOS. HassOS is a brand new operating system that we have created specifically for the purpose of running Hass.io. And yes, this supports the Raspberry Pi 3 B+!
What is new
We have built HassOS on top of the [Buildroot] framework. The focus of the system is to be a very small and highly efficient operating system to run Docker like a hypervisor. It has just enough software installed, to run a supervisor. We have also focused on security, there are, for example, no default passwords and we use [AppArmor] to protect the applications and containers on HassOS.
Key features:
- Safe and secure updating with [Rauc] over USB or internet (OTA)
- Uses an LZ4 compressed root filesystem and parts of the memory
- Read-only root filesystem, designed to run on embedded systems
- Dbus connected hosts services
- Latest LT Linux kernel
- Latest Docker-ce version
- Fully supported NetworkManager
- Bluetooth support using Bluez
- Supports lot different hardware
Migration
The design of HassOS is different from ResinOS. Because of this, we can’t provide an OTA update from the old ResinOS system to the new HassOS based system.
You need to perform the following steps to upgrade:
- If you have installed the Bluetooth add-on, please remove it, since it is no longer required.
- Make a Hass.io snapshot of your current system and download it to your computer.
- Download the latest [Hass.io stable][installation] version.
- Flash the downloaded Hass.io image with [balenaEtcher] to your SD card.
- Raspberry Pi: In case you have modified the
config.txt
(in the boot partition), you will also need to apply these changes to HassOS. Do NOT simply copy the file from your old setup into HassOS! Apply those changes manually! - If you use a custom network configuration or have configured SSH development access, you need to create a configuration [USB stick]. Copy the resin-sample into the
network
folder on a USB stick and insert it into your device. - Take the freshly flashed SD card with HassOS and place it into your device, and boot it by turning it on.
- Copy the snapshot into the host with the SSH or Samba add-on.
- Restore your snapshot via the Hass.io panel.
- Done!
Future
HassOS is a wonderful base system and allows us to start working on integrating all kinds of amazing features into Hass.io (and bring them to the UI as well). For example, we are planning on bringing network and Bluetooth configuration possibilities into the UI. The goal is a full featured hub system that allows anybody to use Home Assistant.
The Hass.io API is extensive, and we are going to adopt more of its features into Home Assistant as well. For example, sensors that allows you to monitor the system usage of an add-on or even Home Assistant itself.
A big shout out to all people who donated money for us to buy hardware! Thank you! We have already started on making HassOS compatible with all kinds of hardware and are currently aiming to release support for new devices every 7-14 days and keeping this up until we support all major IoT boards.
Feel free to jump into the project and help us to improve the documentation or other tasks that are going to help us moving forward.
[Rauc]: Safe and Secure Updating
[Buildroot]: https://buildroot.org/
0.73: Preview version new user system, Rachio cloud push and Lovelace goes wild
Today we’re releasing Home Assistant 0.73. First, let’s talk security. Home Assistant has a lot of power. It can control all devices in your house and know what you’re up to. That’s why securing it is very important. It’s absolutely wrong to connect your instance unsecured to the internet and hope no one will find it. All ports on all computers are regularly scanned by bad actors. Please read our guidelines thoroughly and follow them.
In the meanwhile, we’re also working hard on the new authentication system. A preview version is included in this release, more info on our developer blog.
This release also includes a TON of love for the new Lovelace UI. Yes, it’s still experimental but daaang, it’s already so awesome that you should probably just go ahead and try it out. Thanks to all the devs who have jumped on this: @c727
We don’t have time to go through all the changes in this release, but @ciotlosm
The new picture elements card.
And last but not least, @Klikini
New Platforms
- Support for Homekit Controller climate devices (@armills
- #15057 ) (homekit_controller docs) (climate.homekit_controller docs) (light.homekit_controller docs) (switch.homekit_controller docs) (new-platform) - Rachio webhooks (@Klikini
- #15111 ) (rachio docs) (binary_sensor.rachio docs) (switch.rachio docs) (beta fix) (new-platform)
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
0.72: Lovelace UI, KIWI Doorlocks, Wireless Tags, Insteon X10.
I am super excited about this release as it brings some great examples of how we are refining the system to become more customizable and, at the same time, user friendly. The first thing that I am really excited about is a new experimental user interface that we call Lovelace. Check this awesome rundown
Be aware, this is experimental, so things will change. However, we felt like we didn’t want to keep this away from you any longer. Check the Lovelace UI docs on how to get started. Make sure to share your creations!
Thanks to all the people that have been hanging out in the #beta channel on Discord
Example user interface created using Lovelace ([source](https://gist.github.com/ciotlosm/9508388876edf92c4c1f3579e740fbd5#file-ui-lovelace-yaml))
Another change is that Nest, Sonos and Cast will now have to be configured using a config entry. Config entries can be created via the integrations page in the config panel. This is a concept that we have been developing for a couple of months now and it’s our goal to eventually use this as the way to configure all components.
Screenshot of the Nest config entry.
And as if this releases even needs more cool stuff, the Insteon integration now supports X10 thanks to @teharris1
And finally, we’ll be extending the open beta for Home Assistant Cloud until the first of September.
Enjoy this release and have a good weekend all!
New Platforms
- Weather Platform - IPMA (@dgomes
- #14716 ) (weather.ipma docs) (new-platform) - Add Freebox device tracker (@stilllman
- #12727 ) (device_tracker.freebox docs) (new-platform) - Add IBM Watson IoT Platform component (@mtreinish
- #13664 ) (watson_iot docs) (new-platform) - Wireless tags platform (@sergeymaysak
- #13495 ) (wirelesstag docs) (binary_sensor.wirelesstag docs) (sensor.wirelesstag docs) (switch.wirelesstag docs) (new-platform) - Add netgear_lte component (@amelchio
- #14687 ) (netgear_lte docs) (notify docs) (sensor.netgear_lte docs) (new-platform) - Add Uptime Robot sensor (@ludeeus
- #14631 ) (binary_sensor.uptimerobot docs) (new-platform) - Add support for the Unitymedia Horizon HD Recorder (@benleb
- #14275 ) (media_player.horizon docs) (new-platform) - Add support for KIWI Door Locks (@c7h
- #14485 ) (lock.kiwi docs) (new-platform) - Epson projector support (@pszafer
- #14841 ) (media_player.epson docs) (new-platform) - Add sensor.nsw_fuel_station component (@nickw444
- #14757 ) (sensor.nsw_fuel_station docs) (new-platform) - Add support for ZhongHong HVAC Controllers (@crhan
- #14552 ) (climate.zhong_hong docs) (new-platform) - Xiaomi Cameras - multiple models (@vaidyasr
- #14244 ) (camera.xiaomi docs) (new-platform)
Release 0.72.1 - June 25
- Prevent Nest component setup crash due insufficient permission. (@awarecan
- #14966 ) (nest docs) - Fix socket bug with Yi in 0.72 (@bachya
- #15109 ) (camera.yi docs) - Skip nest security state sensor if no Nest Cam exists (@awarecan
- #15112 ) (sensor.nest docs) - Fix cast config (@balloob
- #15143 ) (media_player.cast docs) - Bump python-nest to 4.0.3 (@awarecan
- #15098 ) (nest docs) (sensor.nest docs)
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