0.109: New integrations page and weather card, frontend lost weight.

Last week we wrote about the future of YAML. It raised quite a bit of additional questions, so Phil and Rohan released a special edition of the Home Assistant Podcast. In this episode, they talk with Paulus about the changes announced.

Click here to listen to the Podcast

Home Assistant Core 0.109!

This release ships a lot of work that is not directly visible for the eye. We have seen a lot of bug fixes, stability improvements and quality improvements, which is really awesome! There’s more to this than meets the eye.

A new integration configuration page

Let’s start with something visible to the eye. As part of our configuration layout overhaul, we started work on the integration page. The screen now shows cards for every configured integration, and links to a filtered device and entities pages instead of providing its own detail page with devices, options and entities.

All options are now on the same card. And, you can now also rename an already set up integration instance.

Screenshot of the new integration page Screenshot of the new integration page.

Don’t the new logos look beautiful? A big thanks to all the people, who have been working hard to complete our collection of logos and icons the past few weeks. Almost 700! contributions have been processed!

Thanks to everybody for contributing, that is amazing! Special thanks to these champs who did most of the heavy lifting: @adrianmihalko, @BradleyFord, @Klumper, @nldroid, @samrdev! 🥇

As for the next steps in future releases; we will add search, group multiple entries of the same integration and add specific functions for integrations like ZHA.

New weather card

To accompany our new weather row design, @zsarnett redesigned the weather forecast card. It is cleaner and works better on smaller screens. It also allows you to hide the weather forecast.

Screenshot of the new weather forecast card Screenshot of the new weather forecast card.

Weight loss for the frontend

The Home Assistant has a translations system, which is great since it allows one to use Home Assistant in the language one prefers.

However, it came with a performance penalty. All translations were downloaded each time. All of them. This is, of course, highly inefficient. With all the new frontend features added and the integrations that now comes to the UI, it slowly is becoming a bigger issue.

For this release, @balloob worked hard to make this more efficient and as of this release, the frontend will only fetch the translations it needs. This makes the frontend load less data, and thus lighter for the browser.

Did you know you can help out translating Home Assistant?

There is no need to learn git or anything. It can be done straight from your browser! Read more about helping out translating Home Assistant on our developers website.

Detection of blocking I/O in the event loop

This is a bit technical, but some things happening in Home Assistant, like fetching data from an API or website, can lock up Home Assistant for a small moment, if not done correctly. Until now, this has been hard to detect.

This release adds logic in the core of Home Assistant that is able to detect if an integration does one of those blocking calls and writes a messages to the logs.

Screenshot of an example log entry Screenshot of an example log entry.

If you see such a message in your logs, please report the issue on our GitHub so we can fix those cases. If a custom component causes the log, it should be reported with the author of that custom integration.

By addressing these issues, we are able to greatly improve the performance, responsiveness and stability of Home Assistant.

Other noteworthy changes

  • @timmo001 Added the possibility to search in the Lovelace card picker.

Screenshot of the search added to the card picker Screenshot of the search added to the card picker.

  • There is now MQTT debug information on the device page of an MQTT device, awesome work @emontnemery!

  • @frenck re-introduced support for transitions in scenes. Both the scene.turn_on and scene.apply services now accept a transition option to make your scene transition on lights look smooth as butter. An example use is added to the documentation.

  • HomeKit got love from @bdraco. He has been squashing bugs, improving the overall stability and added support for Vacuums. Also, pairing with HomeKit now shows the easy to scan QR code, which makes it easier to set up.

  • @Kane610 really went out into making the UniFi integration perfect. A lot of adjustments and improvements. Thanks!

  • The iRobot Roomba integration now supports Braava too! Thanks @shenxn!

New Integrations

New Platforms

Integrations now available to set up from the UI

The following integrations are now available via the Home Assistant UI:

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 →

The future of YAML

Recently, comments and questions in the community have been posted, about the announcement of integrations becoming available via the frontend and the removal of YAML support from some of them.

This raises questions and opinions that need addressing. It mainly comes down to this single question:

“Is YAML going away?”

The answer to this question is: No!, but…”

Realizing you may not like that loose answer and, in that case, you are possibly looking for a hard and simple “NO” answer to this question. However, things are a bit more complicated.

This blog post aims to bring more clarity to this question, so everybody knows why things are the way they are right now and what to expect for the future of configuring Home Assistant.

Enabling configuration via the UI

Before talking about YAML, let’s explain the reasoning behind all the UI features introduced.

The Home Assistant project has grown at a ludicrous rate in the last few years. Being one of the few solutions to provide a local home automation platform, that puts privacy first, has gathered interest from all kinds of people on this planet.

In the beginning, Home Assistant was a small project; aimed at developers and the tech-savvy. With the growth of privacy concerns, but also the growth in the availability of IoT devices in our homes in general, the project gained traction; attracting lots of new community members that are not always the tech-savvy types.

This is great, but that also means we need to adjust, to make it usable for everybody. We want everybody to enjoy what we all have been enjoying already. No matter your level of experience.

Considering that, enabling and empowering people with managing their Home Assistant instance via the user interface is needed. Not just for the lesser tech-savvy, since it also brings convenience, that even many technically capable users enjoy and prefer.

Goal: Making things easier.

The goal of making it easier is currently the main focus.

Backward-incompatible changes

We all dislike them, those backward-incompatible changes when a new release is published. We all scan the release notes hoping you are not affected by any of them in that release.

There is a big upside on using configuration via the UI: Home Assistant manages that configuration part for you and handles the upgrades and migrations. Virtually removing the chances of hitting a breaking change, we all hate just as much.

Shareability & Security

This is a screenshot of one of the slides, showed during the State of the Union 2019:

Presentation slide showed during the State of the Union 2019 Presentation slide showed during the State of the Union 2019.

We all like to share our experiences, and thus parts of our configurations. GitHub is full of repositories that shares people’s homes.

This is great! Sharing ideas, providing inspiration for all of us!

There is a great downside to this, which is privacy and security. There are a lot of things we don’t want to share. For example, our passwords, sensitive (personal) information or (historical) data.

A bit more technical, but integrations using OAuth2 as the authentication method to integrate with, for example, a service like Somfy don’t need to store the username/password at all.

Both YAML & UI

Home Assistant is moving towards a better separation of YAML configuration versus configuration done in the UI. This is already partly showing in things like zones, Lovelace and the recently introduced “Helpers” (also known as the input_* integrations in YAML).

Zones can be configured via the UI and via YAML (even at the same time!). Both configuration sources will be loaded by Home Assistant when considering the configured zones and both can be changed on the fly without restarting Home Assistant.

For the future, Home Assistant will be moving towards that concept more and more. This allows anybody to use the method they prefer.

In these cases, YAML support has been extended and improved by adding features like reloading and by removing parts that mess with your YAML files.

We are still an open-source project

Home Assistant is an open-source project and relies on contributors adding those amazing integrations, maintaining them and extending their functionality to make them even more capable.

Those contributors do this in their free spare time, for which we all are eternally grateful. It is their work that enables Home Assistant to do what it can right now. It is what automates your home.

So what about integrations that remove YAML support?

Some contributors have decided to remove the YAML support to reduce their maintenance and support burden. The amount of energy that needs to be put in (to maintain both capabilities) can be too much and is complex. We have to understand and accept that. If we do not do that, a contributor could simply stop contributing.

Unfortunately, such a move creates backward-incompatible changes and often leads to a few pretty de-motivating comments, towards the contributor and the project in general. This is harmful to everybody, as the contributors get demotivated or, even worse, don’t want to implement new features or create a breaking change.

This halts our project goals, slows down innovation and induces the risk of losing contributors and maintainers. In the end, leads to a greater loss for everybody.

The future of YAML

So, with all of the above set context: What is the future of YAML?

As of today, ADR-0010 (Architectural Decision Record) has been approved that states:

  • Any new integration that communicates with devices and/or services, must use configuration via the UI. Configuration via YAML is only allowed in very rare cases, which will be determined on a case by case basis.
  • Existing integrations that communicate with devices and/or services, are allowed and encouraged to implement configuration via the UI and remove YAML support.
  • We will no longer accept any changes to the YAML configuration for existing integrations that communicate with devices and/or services.

So what stays available in YAML in the end?

All other integrations that do not communicate with a device and/or service, are configured via YAML or via Storage Collections (these enable both YAML and UI capabilities used by, e.g., Lovelace and zones). Examples of these other integrations:

  • Integrations that integrate transports. These integrations allow users to define their own protocol, e.g., MQTT, serial, GPIO.
  • Integrations that process Home Assistant data and make this available to other integrations, e.g., template, stats, derivative, utility meter.
  • Integrations that provide automations, e.g., automation, device_sun_light_trigger, alert.
  • Integrations that help controlling devices and services, e.g., script, scene.
  • Integrations that expose Home Assistant data to other services, e.g., Google Assistant, HomeKit.

This ADR is set to remove confusion and questions for everybody, builds upon the goals that have been set out (as presented during the State of the Union), and sets the guidelines for our contributors to work with. This ADR brings clarity for us all.

Myth-busting

In the raised concerns and comments across the community, some comments have been found multiple times. Please note, these are not exact quotes, as we don’t want to address anybody personally.

  • “Making backups became harder!”

    Using the Home Assistant snapshot feature, this is not an issue. However, if you do manual backups on a system that runs just Core, you need to make sure to back up the .storage folder as well (which hopefully you’re already doing). Otherwise, there is no difference.

  • “It is harder to test my configuration if integration does not support YAML”.

    YAML configuration testing is often done to see if a specific YAML configuration is still valid against (newer versions of) Home Assistant. With integrations set up via the UI, this is not a concern, since Home Assistant ensures the data structure is compatible between versions and migrates it for you.

  • “I like to use a private git repository where I store all my data in, including my sensitive data, since it is not public. Without YAML this is not possible.”

    This is actually not true, the .storage folder contains all Home Assistant managed configuration files in JSON format, which in those cases, can be stored and versioned in a git repository.

Is YAML going away?

No!

Not for the things we like to share publicly. It will also remain available for the advanced features we currently cannot provide a UI for. The goal is not phasing out YAML, the goal is to make the best home automation platform in the world that is easy to use for everybody. Enabling users of all experience levels, to enjoy this wonderful hobby we all share and allowing everyone to focus on what matters most: automating our homes.

Closing with the YouTube recording of the State of the Union 2019, starting at the part discussing this.

Special Home Assistant Podcast episode

A special edition of the Home Assistant Podcast has been put out. In this episode, Phil and Rohan talk with Paulus about the changes announced in this blog post.

Click here to listen to the Podcast


0.108: Logos, Area Pages, Lovelace Entity Card, Lovelace Map History

Before we talk about anything that matches the title of this blog post:

On behalf of everybody working on the Home Assistant project, we hope you, your family and loved ones are safe and remain healthy during this pandemic. Our thoughts are with everyone that has been deeply affected by the current situation.

Stay strong, keep distance from each other, wash your hands and stay safe.

❤️

We made it all up to 0.107.7 the previous release, 7! patch releases.

Some have noticed and commented on the fact we do a lot more patch releases the past months, which is correct. This is not because everything was shipped in a broken state, but we are trying to ship any bug fix to you as soon as possible! Just so you don’t have to wait 3 weeks for something to get fixed.

So let’s talk about the elephant in the room: Home Assistant Core 0.108!

Martin Hjelmare & Ashton Lafferty join Nabu Casa

We want to start by announcing Martin Hjelmare has joined Nabu Casa!

Martin is a core team member for a long time, and initially started out contributing to the project by his work on the MySensors integration back in Home Assistant 0.11 (2016)! Most contributors to Home Assistant, will know Martin for his endless patience on the incredible code reviews he does.

Furthermore, Ashton Lafferty (cogneato) has been working some hours for Nabu Casa, to help out with things like support. Most of you probably know him from that already, as he is very active in helping out on our Discord server.

We are happy to announce that Ashton will now join Nabu Casa full-time as well!

Congratulations Martin and Ashton! 🎉

Integration logos & icons

We have created a new repository on GitHub containing all the brand icons and logos Home Assistant is able to integrate with. These images are, for example, used in our documentation.

In 0.108, we made a start on using the content from this repository in the Home Assistant frontend. The device information page got a layout update and the integrations page as well.

These pages will now show the icons and logos matching the integration.

Screenshot of the device information page showing the Hue logo Device information page showing the Hue logo.

Looking for a way to contribute to the Home Assistant project? We still are missing a lot of images; So we are calling out for help!

Many integrations now available to set up from the UI

It is absolutely amazing to see all the upgraded integrations this release! Many contributors have gone out and added support to a lot of integrations to allow them to be configured via the Home Assistant frontend.

Not all of them were ready in time for this release; nevertheless, the list is amazing already:

Yes, @bdraco has been on fire this release! Amazing job!

Lovelace Map history

Maybe not very useful during home quarantine, but a very cool feature for when we are allowed to get out of our homes again. @Hoytron added the ability to show the history of persons or device trackers on the Lovelace map card. You can define how many hours of history you want to show and it will draw lines between all the points in that time frame.

Screenshot of the map card with history Screenshot of the map card with history.

New Lovelace card: Entity

@zsarnett added a new Lovelace card, the entity card. This card looks like the sensor card, but allows you to use any entity (not just sensors).

Screenshot of the entity card Screenshot of the entity card.

Area configuration page

We added an overview page for your areas. On this page you can see all the devices in the area, but also the automations, scenes and scripts that affect that area.

Screenshot of the area config page Screenshot of the area config page.

Horizontal stack now handles different heights better

When creating a Horizontal stack, the cards in the stack don’t always line up nicely. This has been adjusted. Horizontal stacks now deal better with the difference in heights of the cards on the stack.

Before and after screenshot for the Horizontal Stack improvements. Before and after screenshot for the Horizontal Stack improvements.

Other noteworthy changes

  • “Alexa, show the front door camera.” 😲 Alexa now has support for Cameras, thanks @ochlocracy!

  • Selecting your default Lovelace dashboard has been moved to the user profile page.

  • A lot of configuration pages are migrated to data tables, this means you can now search in your automations, scenes, scripts, users and areas.

  • Lovelace cards in panel views can now also be edited with the UI editor.

  • The graph from the sensor card is now also available as a footer for the entities and entity card.

  • The Markdown card has a new user variable that can be used to display the currently logged in user.

  • With the ZHA Zigbee integration, Zigbee groups now dynamically create entities for lights, switches and fans that are grouped together. This enables near-simultaneous control over a large group of lights allowing them to turn on or off at the exact same time. Thank you @dmulcahey!

  • Cameras added using the ONVIF integration now automatically use the still images provided by the camera, instead of Home Assistant generating one. Nice work @roleoroleo!

  • WLED got quite a few internal upgrades, has added new Wi-Fi sensors and now has a service to control the effects of your WLED device.

  • Docker images for Home Assistant are now using Jemalloc, to reduce memory fragmentation and speed up memory allocation. So, less memory and generally a faster Home Assistant.

New Integrations

New Platforms

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 →

0.107: Multiple Lovelace Dashboards, adds helpers, new media player card

George F. Will once said: “The future has a way of arriving unannounced.”

Well, George, we don’t agree: Announcing the release of Home Assistant Core 0.107!

This release brings a crazy amount of awesome new features and beautiful improvements to the frontend.

Bye old State UI

As announced with 0.105, the old States UI is now removed from Home Assistant. If you are using Home Assistant for a year or less, you might not have an idea what it is, since the “new” Lovelace UI has been the default. It is the UI we used before Lovelace.

If you are up for a flashback, maybe it is worth reading the release notes for Home Assistant 0.7 were the revamped (and now removed) States UI was originally announced. Now exactly 100 releases later, it is time to say goodbye to the states UI that has been with us for a long, long time…

As we announced the deprecation of the old States UI in 0.105, not everybody seemed to be that happy about it. So we surveyed to see what one would miss from States UI and learned that it is mostly used as an overview of all entities (besides having a nice layout that can be made in Lovelace).

In this release, we bring you a Lovelace solution for that and added a bit more…

Hello multiple Lovelace dashboards

You are now able to create multiple Lovelace configurations, called: Lovelace Dashboards!

You can have a dashboard with your main layout, one that is auto-generated (like the old State UI), one for experimenting, one for admins, one for your wall-mounted tablet, etc.

And, yes, you can even mix and match multiple YAML mode managed Lovelace Dashboard, UI managed Lovelace Dashboards and auto-generated Lovelace Dashboards at the same time.

Screenshot of the new Lovelace configuration panel Screenshot of the new Lovelace configuration panel.

Each dashboard can be added to the menu sidebar as well, with a configurable title and icon. Furthermore, it is possible to limit access to a dashboard to admin users only.

An unlimited amount of dashboards can be created right from the UI in the new Lovelace configuration panel, and YAML dashboards can be set up in configuration.yaml, see the documentation.

This awesome new feature comes with a deprecation if you use Lovelace in manual YAML mode: You need to move the resources section from your ui-lovelace.yaml to the lovelace: section in configuration.yaml. It is not a breaking change yet; we still load them from the previous location if we didn’t find anything in the lovelace: section, however, this fallback is being removed in a future version.

If you manage your Lovelace via the frontend, we automatically migrate your resources. Please note that resources are not in the raw Lovelace configuration editor anymore, but in the Lovelace configuration panel.

New media player card

@zsarnett is back on the frontend team and is not planning on letting that happen unnoticed. He did a ton of work on the frontend and created a beautiful new media control card for Lovelace.

It is inspired by the media control widget in Android and changes color based on the artwork of the played media. We think it looks absolutely gorgeous!

Screenshot of the new Media Control Card Screenshot of the new Media Control Card.

Helpers Configuration Panel

When you create advanced automations, you often need a helper. Like a toggle, to save a state, or another input field. Until now, you always had to define them in YAML and are known as the input_* fields/integrations.

We now have a UI to add and manage these Helper elements; this allows non-expert users, or anybody that prefers the frontend to manage their system, to also access this functionality.

Screenshot of a helper configuration dialog Screenshot of a helper configuration dialog.

Thanks @Adminiuga, for implementing the backend features that made this frontend change possible! Not only that, if you prefer YAML, these changes made by @Adminiuga also made it possible to reload the input_* YAML configuration without restarting Home Assistant.

Improvements to Lovelace editing experience

@zsarnett changed the looks of our card picker, instead of a simple button to pick a card, you now get a live preview with your own entities. @thomasloven added a UI editor for the horizontal and vertical stack cards and the conditional card.

Screen recording of the new card picker and stack editor Screen recording of the new card picker and stack editor.

Other noteworthy changes

  • @Misiu added a UI to set the visibility per user for views.
  • Data tables, for example, the Entities configuration panel, are now lightning fast! Even on mobile 🚀.
  • The logbook had some speed improvements, thanks @KapJI!
  • @bdraco just went all-in on the August integration, making it a top-notch integration! Awesome job there!
  • Initial support for HomeKit enabled televisions and support for occupancy sensors was added by @Jc2k.
  • @tulindo added support for newer SamsungTV models.
  • Alexa now supports starting and cancelling timers, thanks to @Tho85.

New Integrations

New Platforms

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: 5th edition

Time for the fifth enactment of the Community Highlights!

We’ve received quite a few recommendations, but also closely monitored social media and found some gems to share again!

Controlling 7! marine aquariums with Home Assistant

Let’s start with showcasing a highly unusual, but impressive, Home Assistant setup. It is shared on our Facebook group by Kevin McPeake. Kevin’s setup has a total of 5 Home Assistant instances, controlling 7x marine aquariums!

Kevin's impressive setup for his 7 aquariums Kevin's impressive setup for his 7 aquariums.

Those are some big views Kevin! I bet you will be happy with the new Lovelace features that are coming in Home Assistant Core 0.107. It will help you to trim down that a bit, into multiple Lovelace Dashboards (now in beta, sneak peak?).

Click here to check out Kevin’s post on our Facebook group.

Thanks, Walt_H for sending in this item! 👍

Live energy consumption screen

Energy saving is good for the environment (and your wallet). However, to do that, you have to become aware of your actual usage. /u/Lau-ie shared his energy consumption screen on our subreddit.

This gives insight into the current usage, but also in the usage & costs of the consumed energy of the last 24 hours.

New energyconsumption screen, still tweaking it. from r/homeassistant

Do you actively monitor your energy usage? What does your dashboard look like?

A DIY smart magnetic key holder

And here is one from James Callaghan, who created really smart and easy to replicate magnet key holder, using a Xiaomi Aqara Door/Window sensor. Yes, this key holder works on Zigbee.

Consumer Reports: Open call for non-resident technologist fellows

Consumer Reports is an American non-profit organization that does independent, (product) testing and research for consumers to provide truth, transparency and fairness. Their results are published in a monthly magazine and on their website.

The Consumer Reports Digital Lab offers paid, non-resident fellowships to study the effects of connected (IoT) products and services. They welcome anyone interested in public technology research to apply for the fellowship.

If you are interested in this, more information can be found here:

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:

See you next edition!


0.106.3: Coronavirus integration (COVID-19), track the outbreak

In December 2019, an outbreak of a novel Coronavirus also called severe acute respiratory syndrome coronavirus-2 (SARS-CoV-2), began in the Wuhan region of China. This virus can cause the COVID-19 disease.

This novel Coronavirus is spreading globally at a disturbing rate, which keeps everybody on top of the news. The media worldwide is covering the spread of the virus constantly, and a lot of people are tracking the number of cases in their country.

This special release adds the Coronavirus integration, allowing you to track the outbreak from within Home Assistant.

The Coronavirus integration

While having a meeting at Nabu Casa, we caught ourselves talking a lot about the state of the virus spreading in the countries we live in. Which brought us to the subject of being able to track the virus in Home Assistant itself.

So together, we started working on an integration right away. We decided to bring you a special release of Home Assistant that includes this integration.

The Coronavirus integration tracks the number of people that are confirmed with, recovered from, and deceased caused by the virus in your country, or worldwide.

The data is sourced from the Johns Hopkins University.

Screenshot of the Coronavirus integration in Home Assistant Screenshot of the Coronavirus integration in Home Assistant.

Adding the Coronavirus integration

This integration can be configured via the Home Assistant frontend.

  • Go to Configuration -> Integrations.
  • Click on the + in the bottom right corner to add a new integration.
  • Search and select the Coronavirus integration form the list.
  • Follow the instruction on screen to add the sensors. Either choose for adding world-wide sensors, or a specific set of sensors for your country.

If you want to track both world-wide and one or more countries at the same time, you can repeat the configuration process described above to add multiple instances of the integration.

Resources

For the latest information about the Coronavirus, be sure check the website of the World Health Organization. The WHO provides good information on basic protective measures you can take against the new Coronavirus.


Community Highlights: 4th edition

For the 4th edition, I thought it fitted to devote the community highlights to 3D!

That is actually a lie, the 3rd edition would have been much more fitting, but was hijacked by Paulus ;) At least it’s my 3rd community highlight writeup, so that counts, right?

Ready for some highly inspiring and mind-blowing 3D creations?

3D home navigation and control, using Unity

Are you sure you ready? Because Harrie de Groot created a fully navigatable 3D model of his home using Unity, accessible from within Home Assistant.

You really need to watch the video below now…

Well done, Harrie! That looks slick!

More details on his creation can be found on the Home Assistant Community Forum.

3D printed interactive floorplan

If you have been around a bit, you might have come across a screenshot of someone with an interactive floorplan in Home Assistant. Ryan Connolly took that idea straight into the real world by 3D printing his floorplan, wired it, and hooked it up Home Assistant.

Talking about taking things into another dimension…

Getting started with your own 3D floorplan

Ok, so the above two, rather impressive, listings might be a bit out of reach for the most of us. Still, with some help, you could still achieve some pretty nice looking 3D floorplans. Aaron Godfrey wrote a couple of excellent blog posts on this.

In his first blog post, Aaron shows you what his floorplan looks like

He followed up with two blog posting on how to achieve this:

Bonus tip: HomeByMe

I’ve personally got recommended a tool for creating a 3D floorplan with a tool that is generally lesser-known, but actually pretty awesome! HomeByMe

Screenshot of HomeByMe.

This is a result of a 3D floorplan created with HomeByMe.

It works fully in the browser and I enjoyed the experience using that. So credits where credits due: Thanks for recommending me this sweet little gem Andrea Donno!

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:

See you next edition!


0.106: Light brightness stepping, better Safe Mode and person dialog

Well, hello!, Home Assistant Core 0.106! We are happy to see you 😃

A great release that improves stability, reliability and a lot of helpful additions to make everything much more friendly and easier to use. So let’s dive in!

Safe Mode improvements

In Home Assistant 0.105, we introduced Safe Mode. Our goal is to make sure Home Assistant always starts and provide you an interface to work with. No matter what.

@balloob has been busy this release to improve on this feature even more, and Home Assistant is now able to overcome issues when things in the core system get into trouble and even when the Lovelace configuration isn’t readable. Besides that, the way Safe Mode is presented has changed, so you instantly know you are in Safe Mode:

Screenshot of Home Assistant running in Safe Mode Screenshot of Home Assistant running in Safe Mode.

Stepping up and down the brightness of lights

Ever tried to make an automation to brighten or dim your lights? Or tried to hook up a remote to control the brightness of a light? If you have, you probably know that doing that was pretty painful and involved some additional templating to get that going.

This release just made that a lot easier. An example device automation:

Screenshot of a device automation with dimming lights Screenshot of a device automation with dimming lights.

We have also added this functionality to the light.turn_on service. You can now change the brightness, based on the current brightness, using the brightness_step (-255, 255) and brightness_step_pct (-100, 100) parameters.

Good to know, when the brightness hits 0, it will turn off the light. If the light is already off, and you step the brightness up, it will turn on. This is awesome, because if you have a rotating dimmer button (for example, an IKEA SYMFONISK), you can rotate it to change the brightness, but also turn the light on/off by just rotating it.

Person more info dialogs improvements

Persons have a new more info dialog. They now show the location of the person on the map and if the person is not in a zone, you can create a zone with the current location of that person with one click.

Screenshot of the new more info for a person Screenshot of the new more info for a person.

Entities configuration panel now shows all entities

The entities configuration panel previously only contained entities that were uniquely identifiable by Home Assistant (they have a so-called: unique ID). However, those are not provided by all integrations of Home Assistant, confusing since the entities panel did not show all of your entities.

In this version, we now include all entities in the panel, giving you a nice complete overview of all available entities in your system. You can’t edit all entities, since that requires an entity to be uniquely identifiable. If an entity doesn’t have a unique ID, the pencil icon will be striked through.

Screenshot of uneditable entities in the configuration panel Screenshot of uneditable entities in the configuration panel.

Since all entities are now available in this panel, it does not only provide you a clear overview of all the available entities; you can also make use of the “related items” feature introduced in release 0.105 to see where they are being used!

Updates to the developer tools panels

The developer tools panel also got some nice little touches. In the “Info” tab you can now find a list of all integrations you are using and the logs are now aware of the integrations as well.

Both now include links to the documentation and our GitHub issue tracker. This allows you to dive in quickly when you run into troubles with an integration.

Screenshot of the integrations list and an example log message Screenshot of the integrations list and an example log message.

Sensor card

Our sensor card has had a style update. We initially got the design from the Lovelace Mini Graph Card and now updated to match the improved new look of that card.

Screenshot of the updated sensor card Screenshot of the updated sensor card.

Other noteworthy changes

But wait… there is more! Some other smaller noteworthy changes in this release:

  • In the zone editor that was introduced in the previous release, you can now change the location of your home zone. The radius of the home zone cannot be changed yet (we will work on that!), but you can drag the home zone on the map.

  • Also an improvement on a feature introduced in the previous release, the state_color option is now also available for other cards, so you can override the defaults of the cards.

  • New automations now default to device automations instead of state triggers and service calls. Device automations are so much easier and clearer to create from the UI. You can, of course, still use the old triggers and actions like you are used to.

  • In the generated Lovelace we no longer include automations and battery entities. You can find these in the automation configuration panel and the battery in the device configuration page. If you want to have your automations and/or battery in your Lovelace UI, you can always take control and add them.

  • Scripts and scenes now have the ability to set a custom icon. Previously, you would have to create a customization to do this, now, you can just set them in your configuration.

    scene:
      - name: Movies
        icon: mdi:movie-open
        entities:
          light.tv_back_light:
            state: on
            brightness: 125
          light.ceiling: off
    

Custom cards

Are you the creator of an awesome custom card for Lovelace?

We have made some changes to Lovelace that might impact your custom card, so be sure to read the blog post on the developers site about this.

New Integrations

New Platforms

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: 3rd edition

It’s time for the third installment of our revamped community highlights. We got some really great stuff again.

This time I (Paulus) am in charge of writing the community highlights. The reason for this is that the main item involves Frenck’s own work, and he felt weird promoting his own awesome, great, wonderful, enlighting and fabulous work on the revamped Visual Studio Code add-on.

Visual Studio Code add-on updated

Visual Studio Code is a free text editor by Microsoft that works inside your browser. It makes it very easy to manage your configuration.

The add-on used to be only available for x64 devices like intel NUC. With this update, it is now also available for ARM64 devices, including the Raspberry Pi 3 and 4 (the 64-bit version).

It comes installed with all the extensions necessary for editing Home Assistant related files:

If this is the first time you hear about the Home Assistant Config Helper, it is genius. It will set-up a realtime connection from VS Code directly to your Home Assistant installation so it can offer auto-complete suggestions when editing your configuration. This is pre-configured and works out of the box with the VS Code add-on.

To install the add-on, search for Visual Studio Code in the add-on store.

Screenshot of Visual Studio Code.

VS Code add-on part 2

But there is more in the add-on! Home Assistant contains an add-on service registry where add-ons can make their services available for other add-ons without requiring any configuration. The VS Code add-on uses this feature to offer a built-in terminal that has pre-configured tools to connect to the MariaDB add-on and the MQTT add-on.

To try it out, open VS Code, click on the menu button top left -> view -> terminal.

MQTT command-line

This requires the Mosquitto add-on to be installed and an MQTT sensor (instructions).

To publish a message to an MQTT topic:

mosquitto_pub -t home/bedroom/temperature -m 23

Or watch all messages that go through your MQTT broker:

mosquitto_sub -t \#

SQL command-line

This requires the MariaDB add-on to be installed and the recorder configured to use it (instructions).

To query the available tables:

mysql -D homeassistant -e "SELECT entity_id, state, last_updated FROM states LIMIT 0, 10"

Beta time!

Today we are releasing the first beta of Home Assistant Core 0.106. It is packed with awesome features. For a sneak peek of what is coming, check the beta release notes.

I’m personally most excited about the extended safe mode. It will guarantee that the frontend will always load, no matter how broken your configuration is.

Navigation Arrow

On Reddit user /u/Jenova70 showed a super slick navigation arrow that indicates the traffic on his daily commute. Very slick! Instructions can be found in the comments.

I built a physical "navigation arrow" that is changing color based on the estimated time of arrival at work (Waze commute data :) ) from r/homeassistant

Thanks, Jean-Loïc Pouffier & cogneato for sending in this item! 👍

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:

See you next edition!


Home Assistant Companion for Android 1.6 and 1.7

Over the last week, we’ve released some awesome new features and improvements to Home Assistant Companion for Android. I wanted to take a moment to highlight some of the recent things that we introduced in 1.6 and 1.7.

Actionable notifications

Now you can define action buttons to attach to a notification dynamically. When you click one of those buttons, an event is fired back to Home Assistant so you can take action based on the button chosen.

Here’s an example to check with a user if they want to close the garage door after it has been left open for 30 minutes:

automation:
  - alias: "Notify apps when the garage door opens"
    trigger:
      platform: state
      entity_id: cover.garage_door
      from: "closed"
      to: "open"
      for: ‘0:30:00’
    action:
      service: notify.mobile_app_robbies_pixel_5
      data:
        message: "The garage has been left open"
        data:
          image: https://www.home-assistant.io/images/merchandise/shirt-frontpage.png
          actions:
            - action: "close_garage" # The key you are sending for the event
              title: "Close Garage Door" # The button title

  - alias: "Close the garage when notification action is tapped"
    trigger:
      platform: event
      event_type: mobile_app_notification_action
      event_data:
        action: close_garage
    action:
      service: cover.close_cover
      target:
        entity_id: cover.garage_door

After adding these automations, whenever your garage door remains open for 30 minutes, your device will get a notification that looks like this:

A notification showing an open garage

When you press that close garage button… your garage will close!

We are planning to expand notifications over the next few versions to continue to match the existing functionality available in the iOS app. That includes things like sending text back to Home Assistant and critical alerts.

Requesting location updates via notification

You can now send a notification with just the message request_location_update and once it reaches your device, it will update its current location in Home Assistant. Be careful using this too much though, as it can drain your battery.

Sensors

New in version 1.7, we have added the first sensors to the app. For now, you will find the following new sensors:

  • Battery percentage
  • Battery state
  • Current Wi-Fi network information

We plan to keep expanding sensors in the near future to add things like cellular status and more.

Docs

Thanks to a few dedicated volunteers and a mad dash, we have a newly refreshed docs website. It’s using the latest version of Docusaurus, which means it’s got a new coat of paint and even dark mode support. So much easier on the eyes!

In addition to the tooling updates, we’ve also begun documenting Android and iOS differences. Keep an eye out for the Android and Apple logos to denote what works where.

Over time we plan to bring Android and iOS as close together, in terms of features and the ways they interact with Home Assistant, as much as possible. To allow using both platforms in the same way, so that users who are using both platforms, or switching platforms, can use them without any modifications.

Finale

In addition to the highlights above, we’ve also killed an impressive amount of bugs. Thanks goes to JBassett, KBerstene, quthla and neopilou for their work on all of the above.

Enjoy the new release! Don’t forget to leave a rating if you like the app, it will help other users find the app.

Get it on Google Play