Community Highlights: 2nd edition
Thank god, it’s Friday! For most of us, it means we can tinker with our Home Automation projects again 😃
The second edition of the Community Highlights is here to provide you a fresh source of inspiration this weekend. And, if that is not enough, upgrading to the latest release of Home Assistant Core 0.105 is definitely a recommendation for your list. It introduces tons of new shiny features for you to play with.
So, what changes did you make to your Home Assistant setup this week?
DIY Smart Candles
For starters, if you are looking for a cool DIY project, 3ATIVE shared a YouTube tutorial on how to make sweet little smart candles that work with Home Assistant.
The code for this project is shared on GitHub: Smart-Candles.
Thanks balloob, for submitting this suggestion 👍
Vanlife: Home Assistant on the Road
Creative use of Home Assistant; we’ve seen quite a few vehicles in the past being fitted with Home Assistant (including boats). Zane Claes (aka Technically Wizardry), shares his story on building a vanlife van with a touch of home automation magic.
In the past few months on the road, he built out a Home Assistant installation that’s geared to work in a car/vehicle. A full blog post explains how he integrated with On-Board Diagnostics (OBD) to read out the status of the van, implemented a dash camera (that doubles as a security camera), temperature sensors and the monitoring cellular internet usage.
You can read Zane’s full blog post here:
https://www.technicallywizardry.com/iot-cars-vans-home-automation/
He also made his Home Assistant configuration publicly available on GitHub.
Thanks, Robbie Trencheny & cgtobi for sending in this item in! 👍
An auto-generating Lovelace UI theme
Dwain Scheeren shared a preview of his Lovelace theme on the Home Assistant Community Forum. The cool think about this theme, is that it automatically generates itself!
Unfortunately, the source code for this isn’t available yet, however, Dwain wrote on the forums that he is planning on releasing it soon. We are looking forward to that, Dwain!
You can follow the development of this theme on the dedicated topic for it on our Community Forum.
Visualizing everything in Grafana
Ivana Huckova had a Hack Day at Grafana (the company she works for) and decided to work on her home to visualize everything (in Grafana, of course).
Today is a Hack Day 👩💻 at Grafana and I have decided to hack our home 🏠. I am going to be setting up @home_assistant, exporting metrics to @PrometheusIO and visualising everything in @grafana. Everything is going to be running at @Raspberry_Pi. Follow my progress.❤️
— Ivana Huckova (@ivanahuckova) February 7, 2020
Click on the tweet above to see the full thread of all tweets she did that day.
Oh, Ivana? Did you know we have Grafana available as an add-on? You can find it in the Home Assistant add-on store.
Got a tip for the next edition?
Have you seen (or made) something awesome, interesting, unique, amazing, inspirational, unusual or funny, using Home Assistant?
Click here to send us your Community Highlight suggestion.
Also, don’t forget to share your creations with us via Social Media:
- Twitter it! Be sure to mention @home_assistant
- Share it on our Facebook group
- Post it to our subreddit
- Tag @homeassistant on Instagram
- Or via chat, drop us a line in the #lounge at Discord
See you next edition!
0.105: Safe mode, Headers & Footers, New Zones Editor, Garmin, Sighthound
In case you have missed it, we decided to change the names we use here at Home Assistant, you can read all about it in this blog post.
Therefore, this is release 0.105 of the Home Assistant Core!
The old “States UI” is now deprecated
In June 2018, we released Home Assistant 0.72, which introduced Lovelace. It became our official default user interface in January 2019, with the release of Home Assistant 0.86.
This means, it is now over a year ago that Lovelace was officially introduced as a replacement for the states UI, so it is time to say goodbye to the old states UI. This release deprecates it and in version 0.107, the states UI will be removed from Home Assistant completely.
If you are not using Lovelace yet, we advise you to switch to it today. Lovelace is, by default, almost the same as old states UI with the bonus of a lot of flexibility, if you want it.
In addition to this, all configuration options for the States UI are deprecated as well. Please be sure to read the breaking changes to see if you have options that need to be removed from your configuration.
Safe mode
We are humans, and we do make typos. However, if we make a typo in our configuration, we might end up with Home Assistant being completely unreachable. That really is not helpful. You lose access to Home Assistant and have to do a deep dive via other methods to find out: Why did this happen?
This release introduces a “Safe mode” for Home Assistant. If during startup, Home Assistant has problems reading your configuration (for whatever reason), it will still continue to start using bits and pieces from the configuration of the last time it did start.
When this happens, Home Assistant will start in “Safe mode”. In this mode, nothing is loaded, but it does give you access to the Home Assistant frontend, settings and add-ons (for example, the VSCode or Configurator add-on). This gives you the possibility to correct the issue and restart Home Assistant to re-try.
Screenshot of Home Assistant started in safe mode.
Please note, that this feature isn’t perfect yet, and only works if Home Assistant was able to start successfully, after upgrading to this release, at least once.
We believe this feature makes Home Assistant more robust, easier to use and more forgiving, even if you made a mistake.
Revamped Supervisor panel
Remember we used to have a Hass.io panel? Well, with the new naming for Home Assistant, it has been renamed to the Supervisor panel.
So @ludeeus has been busy! He rewrote the entire Supervisor panel to match our current frontend technologies and added some really slick new visual elements to it.
Thanks, @ludeeus, it looks incredible!
Screenshot of the revamped Supervisor panel.
The new icons on the add-ons really make the add-on dashboard & store stand out. Also, new status indicators on the add-on cards make it easy to spot add-ons that need to be upgraded, or in case of visiting the add-on store, are installed already.
Please note, you need to be running Home Assistant Core 0.105 to see the new icons.
Configuration panel changes
In this release, we started the overhaul of the configuration panel. We have accumulated a lot of functionality in the configuration section in the last releases; now, it is time to bring it all together.
In upcoming releases, we will make changes to make things easier to find and connect the different elements with each other, making it easier to navigate around. For now, we implemented configuration sections, a new tabbed UI, as well as some visual tweaks.
Also updated, the device page to show the automations, scripts, and scenes a device is used in and added the ability to create new ones with the device easily.
Screenshot of the new device info page.
In the more info dialog of entities, we changed the settings button to open the entity settings dialog, and added a related tab as well! This allows you to can see what device, integration, area, scenes, scripts, automations, entities, and groups belong to that entity.
For scenes, scripts and automations that are created in the UI, an edit button is added, right in the more info dialog so you can easily edit it without searching for it.
Header & Footer for the entities card
Two new types are added to the entities card, a header and a footer. At this moment, we have two options for these, an image and buttons.
It allows you to create some very cool looking cards, but also provides you the option to put buttons in the bottom of the card. Very useful for buttons that activate scenes, for example.
Screenshot of the new header and footer for entities card.
Improved zones editor
A brand new zone editor! You can no longer find your zones in the integration list, but they moved to their own section in the configuration panel.
In this new editor, you can move your zones with drag and drop and even change the size of your zones by dragging the circle.
Adding, and removing zones or changing the name of a zone, is now easier than ever.
Screen recording of the zones editor.
The new editor will only work for zones that are created in the UI, zones that are set up in configuration.yaml
are read-only.
Additionally, if you define zones in your YAML configuration, please be aware that setting a name
is now required.
As an extra added bonus, a new service was added: zone.reload
. This service allows you to reload your zone configuration without restarting Home Assistant.
Icons no longer change color based on state
A change that is not really apparent at first, but you probably notice it sooner or later.
The entities card no longer changes the colors of icons based on states, except for lights.
Reasoning comes from a request, to make icons to become yellow for all types when an entity is active, and not for just a few entity types. However, this would get out of control very quickly, as shown in the screenshot below.
Yellow icon color on everything, isn't the solution either.
So, that is why we disabled it, by default, for all entity types, except lights. However, we did add a new option: state_color
.
Using this option, you can decide if you want to old behavior back, add it to more entity types or maybe even disable it for lights too!
Other cards will now display icons from more domains with an active color.
Other Lovelace and frontend improvements
There is a lot more done on Lovelace, more than we can mention, some other highlights:
-
In generated mode, entities that start with the name of the area or group they are in will be shown without the name of the area or group. So if you have a light named “Living room lights” that is in the area “Living room” they will be shown as “lights” in a card with the header “Living room”.
-
We no longer show
device_tracker
entities in generated mode. We advise you to bind one or more device trackers to a person that will be shown in the UI. -
We added many accessibility features to Lovelace; you can navigate almost everything with the tab key. We will continue to work on this so that people with disabilities can also enjoy Home Assistant.
For a full list of changes, see the Lovelace changelog.
Even more frontend improvements:
- Logbook panel is a lot quicker
- Maps no longer fit zones, but only entities
- ZHA panel now supports binding devices to groups
- Ability to add new areas on the device page
- Material Design Icons are updated to v4.8.95
- A lot, like a really large amount, of bug fixes!
In other news
This section is now empty, but don’t be sad! The in “In other news” section now has its own dedicated blog post, which we will put out regularly:
Want to read the first edition? Community Highlights, first edition!
Have you seen (or made) something awesome, interesting, unique, amazing, inspirational, unusual or funny, using Home Assistant? Send us your Community Highlight suggestion, so that we can include it in the next blog post.
New Integrations
- Add search integration (@balloob - #30511) (search docs) (new-integration)
- Add Safe Mode (@balloob - #30723) (frontend docs) (http docs) (safe_mode docs) (breaking change) (new-integration)
- Add Derivative component (@afaucogney - #26456) (derivative docs) (new-integration)
- Add sighthound integration (@robmarkcole - #28824) (sighthound docs) (new-integration)
- Add Garmin Connect integration (@cyberjunky - #30792) (garmin_connect docs) (new-integration)
- Add Gammu based local SMS notifications (@ocalvo - #31233) (sms docs) (new-integration)
- Add OPNSense device tracker (@mtreinish - #26834) (opnsense docs) (new-integration)
New Platforms
- Template alarm panel (@alistairg - #30487) (template docs) (new-platform)
- ZHA cover device support (@billyburly - #30639) (zha docs) (new-platform)
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.
Read on →Community Highlights, first edition!
Back in 2015 and in 2016, we tried starting a series of blog posts called “Community Highlight”, a few times, a blog post appeared about the amazingly awesome stuff our community does with Home Assistant.
Recently, that idea was picked up again by adding an “In Other News” section to the release notes on each Home Assistant release. However, the development pace of Home Assistant is high! As a result, that section is always hidden all the way down somewhere in those release notes. A bit unfortunate, since there is so much cool stuff to be found!
So, today, we present you: the Community Highlights, the first edition!
Technically, not the first, but we rebooted this series, right?
We hope you enjoy this, please let us know in the comments below!
Or join us for a little chat in our #lounge at Discord
../Frenck
A different take on designing your frontend
Mattias Persson showed an interesting alternative approach to the design of his Lovelace UI. It looks fabulous; we don’t even know where to start explaining, check the video below for an impression:
Mattias created a post in the Community Forum with all the details, including more screenshots, the things he used and links to his GitHub repository. Everything you’d need if you wanted to replicate this for your own use. Thanks Mattias!
Smart toilet roll holder
Com’on, we all know what it is like to be in the restroom, taking a number two, discovering that you are out of paper.
For the-berik, on our subreddit, it was reason enough to do something about it. He converted his toilet roll holder into a smart version using an ESP8266 chip, a load cell and ESPHome, allowing Home Assistant to know how many rolls of toilet paper are left on the holder.
Click on the video below to see how it works.
Smart toiletroll holder with Esphome and Homeassistant from r/homeassistant
Smart mailbox sensor, the easy way
Another one from our subreddit, where choketube shares his pride for the mailbox sensor he created. He placed a Hue motion sensor inside his mailbox that will trigger if it is opened, really smart and simple!
He demonstrates his mailbox in the video below.
Proud of my new Automation - Hue Sensor in my Mailbox from r/homeassistant
Got a tip for the next edition?
Have you seen (or made) something awesome, interesting, unique, amazing, inspirational, unusual or funny, using Home Assistant?
Click here to send us your Community Highlight suggestion.
Also, don’t forget to share your creations with us via Social Media:
- Twitter it! Be sure to mention @home_assistant
- Share it on our Facebook group
- Post it to our subreddit
- Tag @homeassistant on Instagram
- Or via chat, drop us a line in the #lounge at Discord
See you next edition!
Changing the Home Assistant Brand
Over the last few years, we have accumulated a wide range of projects under our umbrella. We started out as a Python application (called Home Assistant) and later added an operating system (HassOS) and management system (Hass.io Supervisor) to it, to allow users to easily manage their homes, but also to provide a system that is easy to keep up to date.
These different projects all come together in Hass.io. A system that is secure, easy to keep up to date and runs the most powerful home automation platform in the world. But having Hass.io and Home Assistant has been confusing for a lot of people, especially for newcomers to our great community.
The next step in making Home Assistant simpler is by making our naming simpler. It’s our goal to make private home automation accessible to everyone. And as part of that, people need to know how to refer to it.
Home Assistant is a home automation operating system for your home. And to make this message clear, we’re renaming Hass.io to Home Assistant, and Home Assistant to Home Assistant Core.
Note: this is only about renaming projects and does not impact any functionality of any of the projects.
If you run Home Assistant today in a Docker container or run it inside a Python virtual environment, you are running “Home Assistant Core”. Home Assistant Core will forever remain a standalone application like it is today. We promise.
This name change is a huge thing! Not just a big thing we all need to get used to, but even bigger for everything that needs to be renamed! It definitely takes a couple of weeks to get the main parts re-branded.
So bear with us while we do so.
Paulus
Home Assistant Companion for Android 1.5.0
Today we’re releasing Home Assistant Companion for Android 1.5.0. This is a great release with some cool new features and new collaborators joining in on the fun!
Big thanks in this release goes to our Android lead @JBassett who has been squashing a ton of bugs, added support for the status bar to adopt the application theme and fixed finding existing Home Assistant instances on the network.
A cool new feature that has been added is a new home screen widget. Use it to quickly trigger your favorite scripts, scenes or any other service in Home Assistant. Thanks to @KBerstene for the initial implementation and @JBassett for polishing the configuration screen.
For all you people that want to run the Home Assistant app on a tablet on the wall, good news! Thanks to @neopilou there is now a new option to make the app full screen.
To get the most out of our apps for Android and iOS, check the Home Assistant Companion website.
Enjoy the new release! Don’t forget to leave a rating if you like the app, it will help other users find the app.
0.104: Sentry, Signal Messenger, IntesisHome, Sure Petcare, KEF
The first release of the new decade! Happy New Year!
We are starting this new year with a packed release! So let us dive in!
- Improved entity handling on startup
- Ignore discovered devices & services
- Reload all the input things & bye generated groups
- Add a device to Lovelace
- Multi-select entity management
- ZHA configuration panel improvements
- Removing your Lovelace configuration
- In other news
- New Integrations
- New Platforms
- Breaking Changes
- Beta Fixes
- All changes
Improved entity handling on startup
We are now restoring all entities, stored in the registry, on Home Assistant startup.
During the startup of Home Assistant, all your configured integrations are loaded. Each of those integrations results in one or more devices and entities. However, there was a catch!
The loading of some integrations could take a while, which caused some entities not to be available immediately. Sometimes, this affected multiple things, like missing devices in HomeKit/Google/Alexa or those big red boxes in our Lovelace UI. We are sure, at some point, we’ve all experienced that.
As of this release, all these entities, if registered in our entity registry, will be restored as “unavailable”. That allows other parts of our system to use them immediately, solving a lot of common issues during startup.
These restored entities can be differentiated from normal “unavailable” entities by an additional state attribute added to those entities: “restored”.
Screenshot of a removing an unavailable entity.
As a result, entities will no longer “disappear”, so restored and unavailable entities are removable, as shown in the screenshot above. Please note that, if an integration provides an unavailable entity, the providing integration needs to be removed first, or else, those entities can not be deleted.
Ignore discovered devices & services
Got that one device that gets discovered over and over again?
It is now possible to ignore a specific discovered device with a single click!
Screenshot of a discovered Hue bridge.
It requires the integration to be updated to support this. For this release, the Hue, Axis, deCONZ, WLED and HomeKit integrations are updated to support this new feature.
Reload all the input things & bye generated groups
All input_*
integrations now have a reload
service to reload your YAML configuration for these integrations, without
the need to restart Home Assistant.
Furthermore, time to say bye-bye, to all generated entity groups
(group.all_*
). Chances are, you have never heard of those because they were
hidden. However, if you rely on those groups for your automations, you
need to adjust those automations.
Check out the breaking changes section for more information.
Add a device to Lovelace
We added a button to the device page to add all entities of a device to Lovelace in a blip! Home Assistant suggests cards based on the type of entities the device provides so that you can add them to a view of your choice instantly.
If you are using Lovelace in YAML mode, you still can use this new feature. The generated YAML can be copied and pasted into your configuration file.
Screenshot of a card suggestion for a light device.
This same functionality is also added to the unused entities page of Lovelace.
Multi-select entity management
Entity management has never been easier; It now allows for changing multiple entities at once. Select multiple entities and remove, enable or disable them with one click.
Screenshot of the entities configuration page with multi selection.
ZHA configuration panel improvements
@dmulcahey did a lot of work on the ZHA config panel this release.
The navigation for the ZHA configuration panel has been redesigned to provide a better user experience on mobile and desktop.
As part of the redesign, full Zigbee group management has been added, allowing you to create and manage Zigbee groups right from the UI.
Screenshot of the ZHA configuration panel.
In a future releases, the ability to bind devices directly to groups, will be added as well.
Removing your Lovelace configuration
Want to start your Lovelace configuration from scratch? Or go back to the automatically generated Lovelace interface?
Now you can by clearing the Lovelace configuration in the raw configuration editor and saving it.
Screenshot of the remove Lovelace confirmation dialog.
In other news
Meanwhile, HassOS 3.8 got released!
HassOS Release-3 build 8 (Stable) released today. Changelog: https://t.co/kXOXNPldJF - Next we start the first 4.0 Beta builds include the N2 support and Linux LT 5.4
— Pascal Vizeli (@pvizeli) January 13, 2020
Besides the release of HassOS 3.8, the first beta version of HassOS 4.0 is now available as well. This beta release adds support for Hardkernel’s ODROID-N2!
The ODROID-N2 is a great and powerful alternative for the Raspberry Pi.
Custom now playing poster Lovelace card
Brad Crc made this impressive demo of setting up a custom now playing poster card in Lovelace floor plans. This allows you to show currently playing media in your floor plan!
Bas showing his Lovelace theme on his setup
Bas Nijholt kept seeing his own theme popping up on Reddit, so he decided it was time for him to show off his Lovelace dashboard, featuring this lovely theme.
I keep seeing my own theme on Reddit, so now it's my turn! [OC] from r/homeassistant
His theme is publicly available on GitHub and so is his config.
New Integrations
- Add Elgato Key Light integration (@frenck - #29592) (elgato docs) (new-integration)
- Add IntesisHome Climate Platform (@jnimmo - #25364) (intesishome docs) (new-integration)
- Add Signal Messenger integration (@bbernhard - #28537) (signalmessenger docs) (new-integration)
- Revert Tahoma removal (@balloob - #29840) (tahoma docs) (new-integration)
- Add GIOS integration (@bieniu - #28719) (gios docs) (new-integration)
- Add local_ip component (@issacg - #29973) (localip docs) (new-integration)
- Add KEF speakers integration (@basnijholt - #28959) (kef docs) (new-integration)
- Add Sentry component (@dcramer - #30422) (sentry docs) (new-integration)
- Add surepetcare component (@benleb - #24426) (surepetcare docs) (new-integration)
- Add Brother Printer integration (@bieniu - #30359) (brother docs) (new-integration)
- Add TMB sensor (@alemuro - #27964) (tmb docs) (new-integration)
- Add Stookalert integration (@fwestenberg - #30306) (stookalert docs) (new-integration)
New Platforms
- Add battery sensor to iCloud (@Quentame - #29818) (icloud docs) (new-platform)
- Add light support to Velbus integration (@brefra - #30323) (velbus docs) (new-platform)
- Add support for v1 and v2 HomeKit fans. (@Jc2k - #30503) (homekit_controller docs) (new-platform)
- Add support for homekit air quality sensors (@Jc2k - #30510) (homekit_controller docs) (new-platform)
- Add pilight dimmer as light component (@Trekky12 - #30107) (pilight docs) (new-platform)
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, that is helping us a lot!
Read on →Celebrate the holidays with open standards
It’s been a busy week with a lot of announcements around IoT standards, so I thought I would do a quick round up of them, and how it might impact Home Assistant users.
New IoT standard announced
As it’s been a while, the industry has announced yet a new effort to create a new IoT standard called Project Matter (formally called: ‘Connected Home over IP’). I think that there are a few interesting bits to this standard:
The standard will be royalty-free. This is big, as it means that it will be easy for companies to build products. Take, for example, Homekit, which is a great IP-based local standard. Homekit has strict licensing and royalties, which prevented it from widespread adoption.
The new standard specification will be written in conjunction with building an open source implementation of the standard. Once it’s all finished, we’ll be able to integrate this implementation into Home Assistant.
Finally, Apple, Google and Amazon are seriously involved, even contributing their own IoT standards to help bootstrap this specification. This significantly increases the odds of them also integrating it into their products. Since their products are everywhere, it means that more companies might incorporate the standard and it can get widespread adoption.
But don’t hold your breath. Developing a standard takes time. They aim for a draft to be released at the end of 2020. And that’s just the specification. Not any of the devices built with it. If (and that’s a big IF) everything works out, expect this standard to get into your home in 2022.
Read on →HassOS 3 released! Raspberry Pi 4 support
A bit behind the original timeline, but we happy to announce, we’ve released version 3 of Hass.io Operating System: HassOS. Just in time for Christmas!
TL;DR; A quick summary of the changes:
- Official RPi4 support
- Linux LT 4.19
- Buildroot LT 2019
- USB-boot capabilities for the RPi3
- SMS integrations with USB/GSM modem
- Qemu Agent support
- Optimized kernel for virtual appliances
- Improved automatic disk expansion
- Initial foundation for offloading the data partition
Raspberry Pi
We now officially support the Raspberry Pi 4 on this stable version of HassOS! The Raspberry Pi 4 is a great and powerful device to get you started on Hass.io and Home Assistant.
@rbray89 worked hard on this release to add the very often requested USB boot support! Please note, this is currently limited to RPi3 devices. Carefully read how the USB boot works and be aware of the limited supported hardware.
Hypervisors / Running HassOS on a Virtual Machine
The HassOS image for virtual appliances did get some useful updates as well. We have optimized the Linux kernel to support more virtual hardware.
We have now included the QEMU Agent in HassOS. So if you are running on a Hypervisor that is QEMU based (e.g., Proxmox or Libvirt), you now have a lot more information in your Hypervisor control panel, proper shutdown support and improved support for backing up/snapshotting your virtual machine.
Finally, the automated disk expansion got some updates. So if you need more disk space in your virtual appliance, add it in your Hypervisor and HassOS automatically pick it up at the next boot.
We want to emphasize that running Hass.io as a virtual machine is the only supported method to run Hass.io on a virtualized system. We’ve lately seen some funky tutorials on how to run Hass.io inside a container like Docker or LXC, which we DO NOT recommend, you will end up having issues.
How to update to HassOS 3
If you are already running HassOS, you have the full flavor of Hass.io, and thus, all the comfort it has to offer, making this upgrade a breeze!
To update via the user interface, go to the Home Assistant frontend, click on Hass.io in the sidebar to go into the Hass.io panel. Next, click on the System tab and press the UPDATE button in the “Host system” panel. In case the update isn’t showing up yet, push the RELOAD button on the “Hass.io supervisor” box first, which makes your system look for updates instantly.
Another option is to use our powerful CLI, that is shipped with the SSH add-on. Run the following command to trigger the upgrade: hassio os update --version 3.7
.
Update 2019-12-18
After some confusion about the statement of supporting virtual environments and running Hass.io on top of a custom Linux; so let’s clarify it.
The supported ways to run Hass.io are documented here
This also includes running Hass.io on Linux using the Generic Linux installer, which is a supported method.
Hass.io runs partly on your local machine, but for most parts inside multiple containers. All installation types we list, respect this.
If you run VMWare, ProxMox or other virtualization environments, you can use the HassOS OVA/VMDK to run a virtual machine with. Or, if you like to use a Ubuntu VM, that will work with the supported generic Linux installer.
We DO NOT support any kind of LXC hacks like listed here: https://github.com/whiskerz007/proxmox_hassio_lxc. These setups try to put everything inside a single container, which will cause you issues. Hass.io is not designed to run fully inside a containerized system, like LXC.
We hope this clarifies our earlier statement.
0.103: Happy Holidays, Service calls, StarLine, GeoNet NZ and Proxmox
Here it is! Home Assistant 0.103 is released, which is the last major release for this year. For the final stretch of this year, we’ve focussed on cleaning things up. This release contains many things that were still in progress (e.g., due to Hacktoberfest), lots of bugfixes; mainly things that help to improve the stability and experience of Home Assistant.
We wish you happy holidays! As always, we skip a release cycle at the end of the year, making this the final, major release of 2019. This gives all of us time to enjoy the holidays with our families as well. The first release of 2020, will be on 15 January.
Furthermore, we’d like to take the opportunity to thank all of our contributors, no matter how small or big the contribution; code, documentation, issue reporting, beta testing, supporters in our forum and chat. We salute and thank you and wish you the best for the new decade, as we are entering 2020! ❤️
Cheers!
Service’s have been moved to their respective integration namespaces
For 0.103, an extensive cleanup has been taken place around the names of the services. We realize this affects many users; therefore, we made sure all these changes are in this release. This change was driven by @raman325, who did an excellent job of completing this in time for 0.103.
We used to have services that were placed inside other domains,
which wasn’t always the case, and therefore inconsistent.
So, for example, the service to add an item to Todoist was actually a service
call under the calendar
domain: calendar.todoist_new_task
.
This release, all services that were not placed correctly, are moved into their
respective integration domain. So, for the above example of
calendar.todoist_new_task
, has been renamed to todoist.new_task
.
We hope this brings a more streamlined experience to the use of services, for now, and in the future. For a complete list of old vs. new service names, a table as been added to the release notes, below.
Moving imports of Python packages
Internally, Home Assistant uses a lot of Python packages, that our integrations are using. In the past weeks, the locations where all those imports take place, was changed. This does not directly resonate with your system and is mainly an internal cleanup.
A big shout out to the following contributors that together are responsible for making hundreds of contributions the past weeks to help us out:
[@Bouni], @briglx, @djpremier, @exxamalte, @javicalle, @Michsior14, [@Misiu], @mnigbur, [@Quentame], @springstan, @thaohtp, @tulindo
Thank you so much!
Python 3.6 support is deprecated
Since version 0.101, support for Python 3.6 has been deprecated. We are currently working on Python 3.8 support, which is expected soon.
Therefore, this release marks the last release, which supports Python 3.6.
If you haven’t upgraded your system to Python 3.7 yet, it is recommended to do so, to ensure you can keep using Home Assistant in the future.
If you are using Docker or Hass.io, you don’t have to worry about this, since we provide a matching and working Python version for you.
Frenck Joins Nabu Casa
As announced during the State of the Union 2019, Frenck has joined Nabu Casa.
Today marks the first day of my full time open-source adventure! 🥳 Heading into my office this morning, full of energy and lots thankfulness for this opportunity! I feel blessed to be able to work on @home_assistant for @NabuCasa 🙏 pic.twitter.com/mjkMYeCNaz
— Franck Nijhof (@Frenck) December 2, 2019
Frontend
We gave some love and attention to the automation editor, fixing some bugs and adding some useful features.
Natural language improvements
We add area support for automations that you create with natural language, and we try to pick the right area or device for you if you mentioned the name.
So you can now say: “Turn the lights on in the living room”, and it adds all
the light devices of your living room to the automation.
By clicking Choose individual devices
, you can add or remove devices.
Screenshot of the result of the above query.
YAML support
You can now edit every individual trigger, condition or action as YAML. This makes it possible even to do very complicated automations in the automation editor and allows you to copy parts of your automation quickly.
Screenshot of the automation YAML editor.
Rearrange actions
We also added the ability to rearrange your actions, so you don’t have to start all over when you want to add a delay between 2 service calls. Talking about the service call action, that has now an entity picker to help you search for the right one.
Screenshot of automation actions.
In other news
Looking for a present for the holidays? T-shirts with our rainbow logo are now available in our online store. 🌈
— Home Assistant (@home_assistant) December 5, 2019
EU: https://t.co/KiTDuOFgG2
US: https://t.co/OdtILXBoDh pic.twitter.com/BG5mDWhwYN
.@home_assistant for iOS version 2019.1/2.0 is now (finally) available in an App Store near you! Also releasing today: beautiful new documentation for the app! Check it out at https://t.co/4RhY8tOand. pic.twitter.com/YkuhhdRjwu
— Robbie Trencheny (@Robbie) November 26, 2019
Home Assistant: Controlling Addressable LEDs like any other light! (WLED integration) https://t.co/bJJMkZbdn9 @home_assistant @Frenck #homeassistant #wled #ws2812b #tutorial #howto
— Intermit.Tech (@IntermitTech) November 25, 2019
New Integrations
The following integrations are added in this release:
- Add support for Hisense AEH-W4A1 wifi module (AC remote control) (@bannhead - #28641) (hisense_aehw4a1 docs) (new-integration)
- GeoNet NZ Volcanic Alert Level sensor (@exxamalte - #26901) (geonetnz_volcano docs) (new-integration)
- Add component VersaSense (@flamm3blemuff1n - #24619) (versasense docs) (new-integration)
- Add Proxmox VE integration ([@K4ds3] - #27315) (proxmoxve docs) (new-integration)
- Add flume support (@ChrisMandich - #27235) (flume docs) (new-integration)
- StarLine integration ([@Anonym-tsk] - #27197) (starline docs) (new-integration)
- Add intent integration to expose intent handle API (@balloob - #29124) (conversation docs) (new-integration)
- Dsmr reader (@depl0y - #28701) (dsmr_reader docs) (fleetgo docs) (openhardwaremonitor docs) (new-integration)
- Add ATEN PE component for ATEN eco PDUs (@mtdcr - #27960) (aten_pe docs) (new-integration)
New Platforms
The following platforms have been added to existing integrations:
- Add support for SimpliSafe locks (@bachya - #28672) (simplisafe docs) (new-platform)
- Add fan support to lutron_caseta (@djj211 - #29033) (lutron_caseta docs) (new-platform)
- Add support for Somfy Camera Shutter (@tetienne - #29057) (somfy docs) (new-platform)
- Add Huawei LTE binary sensor support, mobile connection sensor (@scop - #28226) (huawei_lte docs) (new-platform)
- Broadlink remote (@felipediel - #26528) (broadlink docs) (new-platform)
Breaking Changes
If you are an existing user, make sure to read the this section before upgrading, this helps you understand the changes and avoids having issues during an upgrade.
Updated Service Names
All services for use in Home Assistant are moved to their integration naming space.
The list below shows service calls and platforms which have been moved to their own integrations - @raman325
-
Local File:
camera.local_file_update_file_path
->local_file.update_file_path
(#28890) -
Elk-M1 Controller:
alarm_control_panel.elkm1_*
->elkm1.*
(#29128) -
Neato:
vacuum.neato_custom_cleaning
->neato.custom_cleaning
(#29148) -
Envisalink:
alarm_control_panel.envisalink_alarm_keypress
->envisalink.alarm_keypress
(#29126) -
IFTTT:
alarm_control_panel.ifttt_push_alarm_state
->ifttt.push_alarm_state
(#29129) -
AlarmDecoder Alarm:
alarm_control_panel.alarmdecoder_alarm_toggle_chime
->alarmdecoder.alarm_toggle_chime
(#29127) -
Econet:
water_heater.econet_*
->econet.*
(#29149) -
APNS:
notify.apns_*
->apns.apns_*
(#29165) -
Facebox:
image_processing.facebox_teach_face
->facebox.teach_face
(#29151) -
HTML5:
notify.html5_dismiss
->html5.dismiss
(#29145) -
Lifx:
light.lifx_*
->lifx.*
(#29136) -
Mill:
climate.mill_set_room_temperature
->mill.set_room_temperature
(#29132) -
Todoist:
calendar.todoist_new_task
->todoist.new_task
(#29131) -
Wink:
lock.wink_*
->wink.*
(#29137) -
Wemo:
fan.wemo_*
->wemo.*
(#29135) -
Bluetooth:
device_tracker.update
->bluetooth_tracker.update
(#29161) -
Demo:
device_tracker.randomize_device_tracker_data
->demo.randomize_device_tracker_data
(#29164) -
iCloud:
device_tracker.icloud_*
->icloud.*
(#29144) -
Blackbird:
media_player.blackbird_set_all_zones
->blackbird.set_all_zones
(#29112) -
Bluesound:
media_player.bluesound_*
->bluesound.*
(#29111) -
Channels:
media_player.channels_*
->channels.*
(#29139) -
Epson:
media_player.epson_select_cmode
->epson.select_cmode
(#29113) -
Monoprice:
media_player.monoprice_*
->monoprice.*
(#29099) -
Songpal:
media_player.songpal_set_sound_setting
->songpal.set_sound_setting
(#29143) -
Soundtouch:
media_player.soundtouch_*
->soundtouch.*
(#29140) -
Squeezebox:
media_player.squeezebox_call_method
->squeezebox.call_method
(#29141) -
Xiaomi Miio:
*.xiaomi_miio_*
->xiaomi_miio.*
(#29134) -
Xiaomi Miio:
*.xiaomi_*
->xiaomi_miio.*
(#29134) -
Yamaha:
media_player.yamaha_*
->yamaha.*
(#29142)
Other Breaking Changes
-
Mobile App - Loading the Mobile App no longer causes the Cloud integration to be loaded. If you relied on this, add
cloud:
to your configuration.yaml. - (@balloob - #29373) (mobile_app docs) -
Samsung TV - The behavior for next and previous track commands for Samsung TVs has changed. Before the change, the Samsung TV integration reacted to the two above commands sending the KEY_FF and KEY_REWIND commands. While watching TV programs, those two commands do nothing. After the change, the entity sends the KEY_CHUP and KEY_CHDOWN commands instead, thus allowing the user to change the channel using the media player standard Lovelace interface. The user doesn’t need to change anything in the configuration. - (@tulindo - #28213) (samsungtv docs)
-
Wake on LAN - The configuration key
mac_address:
was renamed tomac:
to be in sync with the service. (@fabaff - #28830) (wake_on_lan docs) -
PulseAudio Loopback Switch - The default port was incorrectly set to 4712, however, the official documentation states that the default port is 4713. Therefore, the port has been changed and all previously configured switches now need to listen to port 4713. - (@springstan - #28857) (pulseaudio_loopback docs)
-
Z-Wave - This changes the primary command class for z-wave thermostats in discovery schemas from
COMMAND_CLASS_THERMOSTAT_SETPOINT
toCOMMAND_CLASS_THERMOSTAT_MODE
. This will cause a typical dual setpoint thermostat to be correctly represented as a single entity. - (@oandrew - #27040) (zwave docs) -
Transmission - Added host field to
add_torrent
service in order to support multiple Transmission instances. (@engrbm87 - #28653) (transmission docs) -
Opentherm Gateway - Adds device support. This change breaks enabled
sensor
andbinary_sensor
entities, which are now disabled by default and can be re-enabled through the Devices panel. It also breaksentity_id
of the climate entity in some configurations. Theentity_id
is now based on thegateway_id
rather than the configuredname
to guarantee uniqueness. - (@mvn23 - #28722) (opentherm_gw docs) -
Intent - If you use the built-in intents for shopping list, cover or light, you need to add
intent:
to yourconfiguration.yaml
. - (@balloob - #29280) (conversation docs) (cover docs) (light docs) (shopping_list docs) -
Emulated Hue - As previous
entityid
were not Hue compliant,emulated_hue_ids.json
will need to be cleared out and devices re-discovered and configured in Alexa / Google Home. This is a necessary growing pain to move the integration forward in a Hue-compliant fashion. - ([@NobleKangaroo] - #28317) (emulated_hue docs) -
Miflora - Values for an unresponsive device aren’t reported any more as if they were valid, so it’s possible to send an alert. - (@ferbar - #29276) (miflora docs)
Example configuration YAML:
- id: plant_unreachable alias: "plant unreachable" trigger: - entity_id: sensor.plant_moisture for: 01:00:00 platform: state to: unavailable action:
-
Entity ID - It is no longer possible to target all entities by not passing both
entity_id
andarea_id
to your service data. This feature was previously deprecated and has been printing warnings. The correct way to target all entities is to setentity_id: all
- (@balloob - #29178) -
Heatmiser Thermostat - The Heatmiser integration has been updated to the latest version of the heatmiserV3 library, meaning less code inside HA, and more leverage on the library. The current version of the Heatmiser integration went out of date with the introduction of voluptuous. This has now been fixed, but it breaks the old config syntax slightly. See the updated docs for the new config format. - (@andylockran - #29006) (heatmiser docs)
Release 0.103.1 - December 18
- Install requirements of after_dependencies when loading integrations (@balloob - #29491)
- Bump aioambient to 1.0.2 (@bachya - #29850) (ambient_station docs)
- Fix setup for tank_utility component (@springstan - #29902) (tank_utility docs)
- Fix setup error for logbook (@springstan - #29908)
- Support entity_id: all in lifx.set_state (@amelchio - #29919) (lifx docs)
- Fix mobile app device identifiers (@JBassett - #29920) (mobile_app docs)
- Fix loading flume integration (@ChrisMandich - #29926) (flume docs)
- Fix support for legacy Z-Wave thermostats (@oandrew - #29955) (zwave docs)
- Bump simplisafe-python to 5.3.6 (@bachya - #30055) (simplisafe docs)
Release 0.103.2 - December 19
- Fix dependency installation recursinog (@balloob)
Release 0.103.3 - December 20
- Fix update port and api key on deconz discovery config entry u… (@frenck - #30088) (deconz docs)
- Patch rachio (@omriasta - #30031) (rachio docs)
- Fix failure in transform method (@depl0y - #30023) (dsmr_reader docs)
- Fix homekit handling of 0 light brightness and fan speed (@fuzzie360 - #29962) (homekit docs)
- Bump starlingbank to 3.2 (@springstan - #30098) (starlingbank docs)
- Bump ring to 0.2.5 (@balloob - #30103) (ring docs)
Release 0.103.4 - December 22
- Remove requirement from entity integration (@balloob - #30113) (doods docs) (image_processing docs) (seven_segments docs) (tensorflow docs)
- Move imports into setup function in homekit init.py (@springstan - #30137) (homekit docs)
- Fix deconz SSDP updating Hassio discovery (@frenck - #30153) (deconz docs)
- Allow battery value of 0 as well as make sure to not create a battery tracker if one already exist (@Kane610 - #30155) (deconz docs)
Release 0.103.5 - December 28
- Bump ring to 0.2.8 to fix Oauth issues (@tchellomello - #30245) (ring docs)
Release 0.103.6 - January 6
- Handle wired bug on restart (@Kane610 - #30276) (unifi docs)
- Bump pysmartthings 0.7.0 (@andrewsayre - #30302) (smartthings docs)
- Bump env_canada to 0.0.31 (@michaeldavie - #30409) (environment_canada docs)
- Fix google sync (@balloob - #30524) (cloud docs) (google_assistant 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. Make sure to fill in all fields of the issue template.
Read on →Sonos shutting down local voice option Snips
It’s that time of the year. The time when it’s cold outside, it’s cozy and warm inside, we’re spending time with friends and family, and time for big companies to drop local accessible technology (2015, 2018).
On November 20, 2019, Sonos announced that they had acquired Snips earlier that month. Snips was a popular option for people to get local voice control in their homes.
In the same month of the acquisition, Snips has announced that they are shutting down their console for users. The console allows users to train their system with custom sentences and intents. By shutting this down, it is no longer possible to make any changes to your local Snips system.
Announcement on the Snips forums.
What is actually worse, is that it looks like they are not shutting down their console completely, they are just shutting down public access. They could support users, but actively decide not to do so. It seems like they don’t want us to know this, as they have edited their announcement on the forums.
Edit history of the announcement shows they removed the words "public access to".
Voice control, powered by Snips, might show up in future Sonos devices. However, Sonos is not accessible to many people out there. The customizations will also be lost according to Patrick Spence, the CEO of Sonos, in an interview with Variety:
“We are not building an ask-anything assistant,” Spence said. Instead, the goal of the acquisition was to build something a lot more music-specific.
Bad move by Sonos
A very bad move by Sonos. This is not a world in which it’s Sonos vs. Google vs. Amazon. It is not even a fight just about smart speakers, it is a fight about if the audio system in our house is local and private, or not.
By taking Snips off the table, there is one less option for local voice control. These users will now look for alternatives, which will include cloud options.
Technology often ends up with a winner takes all. Sonos has just made a better case for its competitors, again.
What the local home needs
Audio is an essential part of our homes. We want to play music, be notified of events (i.e., doorbell) and we want to be able to use our voice to control our devices. A system that provides this, needs to run locally and be accessible via an open API.
Sonos could be this system, they have great hardware that works together nicely. However, they are keeping their API tightly controlled, making it impossible for a user to build on top of it.
It is a choice. They could keep the Snips console open to the public, open up their modern local API and embrace the community that cares about local control. Nevertheless, they choose to work against it.
So Sonos, why are you?