Community Highlights: 25th edition
The 25th edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, which we thought was worth sharing.
Also, keep an eye out for the ESPHome release next week Wednesday. We’re going to have some great announcements!
Do you want to share something for the next edition? Information on how to share.
./Klaas
Intern on Home Assistant Energy
Blueprint of the week
Are there more people who turn their lights on and off at certain times when they go on holiday?
This week’s blueprint is that of timgiwo, who created a blueprint that can repeat the behavior of your lights from the past week, so it seems like you are still at home. Try it out! Read more about it on the community forum or install this automation in your instance with a click on the My button!
Slider Button Card
Mattieha made a button card that also included a slider, so you could, for example: switch a light but also immediately adjust the brightness with the slider. Useful for those who want to keep their dashboard compact.
Floorplan Dashboard
This week again we have a new Lovelace dashboard for the necessary portion of inspiration 😄 This time the one from theone11 who has a dashboard with a floorplan, definitely recommended to take a look at the repository because there is a lot of explanation on it.
Would you also like your dashboard to be in the community highlight? Drop it on Reddit and maybe I’ll pick it out for the next edition.
Ispindel
Between the community submissions, we came across a nice project that works with ESPHome, it’s a sensor with which you can monitor your own homebrew, for example, the alcohol percentage and the temperature. Cheers Alexander! 🍻
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:
- Tweet 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!
Home Assistant OS Release 6

Home Assistant OS 6.0 stable is available now!
Highlights:
-
OS Agent for better OS integration with Supervisor
-
Support for additional Wi-Fi and Bluetooth devices
-
Smaller virtual machine disk images
-
Improved: Generic x86-64 system support
Table of contents
Operating System Changes
OS Agent
Operating System release 6 comes with a new, Go written daemon called OS Agent. This allows the Supervisor to access more aspects of the OS. One such aspect is to move the data to an external data disk or wipe data to start over without reinstalling. Note however that at this point, the required logic in the Supervisor and Frontend is still being developed.
Under the Hood
Under the hood, the OS was updated to the latest upstream Linux 5.10 kernel as well as Buildroot 2021.02.1. The latest Buildroot release brings tons of new software versions along with bug and security fixes. Some key components which received an update were systemd 247 and the Docker Container Engine 20.10.6.
Other Changes
- The short name of the OS used throughout the software stack was renamed to “haos”. From a users perspective not much changes, but it leads to new file names.
- The Home Assistant CLI is now started on tty1 instead of the login prompt. The HA CLI banner shows the IP and other device information without the need to attach a keyboard to login.
- The default shell of the root user is now the Busybox ash. This allows to use scp and similar tools using SSH.
- The system start is now delayed until the system time has been synchronized with an NTP server. This avoids connection issues to SSL/TLS enabled servers when the system time is off. In practice, the delay should only be a few seconds. The system proceeds with startup after 90s in case the NTP server was not reachable (e.g. if no Internet connectivity is available).
Device Support
Raspberry Pi
All Raspberry Pi versions were updated to use the Linux Kernel 5.10 from the Raspberry Pi team, just like Raspberry Pi OS. The latest Bluetooth firmware for CYW43455 (Raspberry Pi 3 B+/4) with security fixes is now part of the Raspberry Pi images.
Generic x86-64
In Home Assistant OS 6 the board/image “Intel NUC” was renamed to “Generic x86-64”. Existing “Intel NUC” installation will automatically migrate to the “Generic x86-64” image on update.
Already with OS 5 the “Intel NUC” image was usable for most UEFI capable x86-64 systems. With the rename that fact is emphasized. Home Assistant OS is open to changes to add drivers to extend support for other x86-64 platforms. However, keep in mind that we don’t have access to all x86-64 hardware, so support for devices is on a best effort basis.
Other Changes:
-
The Intel IGC network driver supports Intel network cards such as I225-LM/I225-V used on some newer Intel NUC devices.
-
With Home Assistant OS 6 the latest version of the Barebox bootloader 2021.05.0 which fixes boot from hard disks larger than 2TB.
-
The ACPI kernel driver for Thinkpad devices is enabled.
Open Virtualization Appliance
The virtual disk images are now built from a sparse file as source, which leads to smaller effective disk image sizes. Disk images are now also distributed in the more common zip file format (except the qcow2 images which are mostly used on Linux, they continue to be in the xz compression format).
By default, the image now has a serial console enabled which is useful to access Home Assistant OS on headless host systems.
Additional Wi-Fi and Bluetooth Device Support
Ralink rt27xx/rt28xx/rt30xx, as well as Realtek 87xx/88xx devices, are now supported on boards that don’t have onboard Wi-Fi/Bluetooth. This is also true for the OVA image for virtualized environments (when using hardware passthrough functionality). For the OVA image, also Intel firmwares are now part of the image so that Intel Wi-Fi/Bluetooth devices can be used in passthrough mode as well.
Homematic IP Support
@jens-maus contributed OS support for Homematic/Homematic IP dual-stack support for RPI-RF-MOD or HM-MOD-RPI-PCB devices. This together with the RaspberryMatic CCU Add-On offers the full functionality of RaspberryMatic embedded in Home Assistant.
Google Coral PCIe AI Accelerator Support
@ryddler enabled the driver for Google Coral PCIe TPU devices. This allows to use Google Coral Mini PCIe Accelerator or M.2 Accelerator on all boards supporting PCIe.
That’s all Folks! Now go out and update!
Community Highlights: 24th edition
The 24th edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, which we thought was worth sharing.
Do you want to share something for the next edition? Information on how to share.
./Klaas
Intern on Home Assistant Energy
Blueprint of the week
I think this situation is familiar to many parents: your children who get out of bed too early and who you would like to learn when it is the right time to get out of bed.
This week’s blueprint is that of koosvanw, who created a blueprint for the above situation that works with a light that can change color and where the brightness can also be adjusted. Try it out! Read more about it on the community forum or install this automation in your instance with a click on the My button!
Threedy card
Do you have a 3D printer and are you not quite sure how to display it in a beautiful way in your Lovelace dashboard? Then try this card from dangreco, which works well in combination with octoprint.
ESPHome weather station
Have you always wanted to build a weather station in your garden? Then try the ESPHome variant of hugokernel, it is quite extensive with many measuring options.
Garage fingerprint
This week we also came across something cool that was shared on our subreddit page. For example, you could open a garage door by means of geofencing from your phone or with an NFC tag. But Nhminer has tried another option, namely opening with a fingerprint sensor 😲
Do you want to know more about it? Then also check this forum topic.
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:
- Tweet 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!
2021.6: A little bit of everything
A little bit of everything. That is probably the best way to describe this release. It is a packed release, with a lot of small new features everywhere!
Sonos got quite a bit of love, Hue now supports push updates, the UI has a lot of usability tweaks, MQTT added quite a few attributes, themes can now support modes… seriously, I can go on forever with this list.
So, no new big features (something might be cooking for the next release…), but a nice release that has something for everybody. Definitely worth scanning the all changes section for your favorite integrations.
../Frenck
- Support for custom Dark mode themes
- Collapsed attributes
- Time format settings
- Disable polling updates on any integration
- Network integration
- Other noteworthy changes
- New Integrations
- New Platforms
- Integrations now available to set up from the UI
- Release 2021.6.1 - June 3
- Release 2021.6.2 - June 4
- Release 2021.6.3 - June 7
- Release 2021.6.4 - June 11
- Release 2021.6.5 - June 15
- Release 2021.6.6 - June 20
- If you need help…
- Breaking Changes
- Farewell to the following
- All changes
Support for custom Dark mode themes
Previously, all themes automatically used our light theme as the base to build on. As of today, themes can be based on our default dark theme as well!
Not only that, @spacegaier added support for themes that can support both a Dark & Light mode in a single theme! This allows Home Assistant to select the dark or light mode of your custom theme automatically.
Screenshot of a custom theme supporting both light & dark mode.
If you are a theme developer, you can find more information on how this works in the frontend documentation.
Oh, and of course, all your existing themes will still just work as before.
Collapsed attributes
Some entities provide quite a few attributes and those show up in the user interface. Most of the time, you don’t need to those and often contain technical data that only confuse or clutter.
To unclutter the more information entity dialog from these attributes a bit, the attributes will now show up collapsed into a bar and can be revealed with a click.
Screen recording of the collapsible entity attributes.
Time format settings
A couple of releases back, we added the possibility to select the number format that Home Assistant uses when showing numbers. Awesome! But… what about the formatting of time?
That question was raised a lot that release and many of you requested the same feature for time formatting, for example, if one prefers a 24-hour format.
Well, you can thank @spacegaier for this one:
Screenshot of new time format setting.
You can find this new setting in your user profile.
Disable polling updates on any integration
One returning feature request, for many integrations, is adding controls for tuning the polling interval an integration uses.
For example, if an integration has an API that needs to be paid for and you don’t need too many updates, it can be a cost saver to use a slower polling interval.
Another often requested example is things like battery-powered devices, or maybe a device you only want to poll during the day and not during the night.
This release, we add support for disabling polling on every integration via the integration system options; for ALL integrations.
Screenshot of the system options of an integration showing the disable polling option.
Wait? Disable polling?! Yes :)
So, there are many different requests on, for example, changing polling rates (also known as scan interval), but also requests for polling on a schedule, or, only based on other input (e.g., triggered by a motion sensor).
Therefore, we decided to provide the maximum flexibility for any use case you
can come up with. Disabling polling makes Home Assistant stop polling
automatically. However, you can use the
homeassistant.update_entity
service on those entities to trigger a poll for information.
This means, once you’ve disabled polling for an integration, you can create automations and completely customize when you poll that integration from that point on. All based on your own schedule, conditions or triggers.
Network integration
This release adds a new Network integration, created by @bdraco, to help other Home Assistant integrations to get the right information about your network.
It also provides you a single place to tell Home Assistant about your network. It is an advanced feature and thus will only show up if you have advanced mode enabled on your user profile.
You probably don’t need to change these settings, by default, Home Assistant will auto-detect the right configuration. However, if you have a more complex network configuration, with multiple network adapters or VLANs, you can now select the interface Home Assistant integrations should use.
Screenshot of new Home Assistant Network settings in the general configuration.
Please note that this is a new feature that needs to be implemented/used by other integrations. At this point, not all integrations will honor these settings yet.
Other noteworthy changes
There is much more juice in this release; here are some of the other noteworthy changes this release:
- The Modbus has been receiving lots and lots of love from @janiversen, a big shout out to him for continuously improving it for the past weeks!
- The Hue integration now supports push updates! Blazing fast response times if you are using that platform.
- @balloob and @bdraco have been working on replacing date/time/timezone handling in Home Assistant. Right on time.
- All services, for all integrations, now have updated information for their service calls. This means all service calls now have a nice new UI. Amazing job @tkdrob!
- Support for the new colors modes is slowly expanding. This release Elgato, Z-Wave JS, KNX and MQTT have added support.
- Sonos got some love from @mountainsandcode, @AaronDavidSchneider and @jjlawren. A lot of fixes and improvements, but also added support for controlling the state of the hardware buttons and controlling your Sonos alarms!
- The developer state tools, now shows the
name of the entity additional to the entity ID. Searching/filtering the list
now supports wildcards (
*
). Thanks, @spacegaier! - Thanks to @PeteBa, there is now a
recorder.purge_entities
service that allows you to purge data from the recorder database for specified entities. - Watson TTS has added a bunch of new voices to choose from, thanks @demikl!
- Ding dong! @bdraco added support for doorbell buttons to the HomeKit Controller integration.
- BMW Connected Drive, now provides a bunch of sensors about your last trip. Thanks, @EddyK69!
- @emericklaw added a new feature that allows you to duplicate a scene!
- My Home Assistant now supports linking to the Ingress interface of an add-on!
- Light templates now have support for effects, transitions and a bunch more properties, thanks to @jacekpaszkowski!
- VeSync now supports Etekcity light bulbs, thanks @sdrapha.
- The universal media player now supports overriding a lot of commands! Thanks for adding that @Drafteed!
- @mdz continues expanding the SmartTub integration adding service to change filtration settings and snoozing reminders.
- The Elgato integration now supports the new Elgato LED strips.
- If you are into Oracle DB, @mciupak made sure our recorder can now use that.
- Z-Wave JS integration now shows progress when adding or re-interviewing a device. Thanks, @cgarwood!
- The Nexia integration now also supports controlling American Standard thermostat, added by @bdraco.
- @Drafteed added support for changing channels on your LG NetCast TV, thanks!
- @mib1185 ensured that the UX for counters and number helpers look nice!
New Integrations
We welcome the following new integrations this release:
- Bosch Smart Home Controller, added by @tschamm
- Garages Amsterdam, added by @klaasnicolaas
- Kraken, added by @eifinger
- Meteoclimatic, added by @adrianmo
- Nettigo Air Monitor, added by @bieniu
- Network configuration, added by @bdraco
- SIA Alarm Systems, added by @eavanvalkenburg
- Syncthing, added by @zhulik
- System Bridge, added by @timmo001
- Wallbox, added by @hesselonline
New Platforms
The following integration got support for a new platform:
- Goal Zero Yeti now has switches to control outlets, added by @tkdrob
- OmniLogic added switches to control relays and pumps, done by @djtimca
- Mazda Connected Services can now control locks, thanks to @bdr99
- AVM FRITZ!Box Tools added a binary sensor to indicate connectivity and sensors for uptime and external IP. Added by @chemelli74
- Modbus now supports lights & fans, added by @vzahradnik
- Sonos now has switches to control enable/disable alarms, added by @AaronDavidSchneider
Integrations now available to set up from the UI
The following integrations are now available via the Home Assistant UI:
- Buienradar, done by @RobBie1221
- Growatt, done by @indykoning
Release 2021.6.1 - June 3
- Fix last activity consideration for AVM Fritz!Tools device tracker (@mib1185 - #51375) (fritz docs)
- Handle Sonos connection issues better when polling (@jjlawren - #51376) (sonos docs)
- Fix no value error for heatit climate entities (@raman325 - #51392) (zwave_js docs)
- Fix Tibber Pulse device name and sensor update (@Danielhiversen - #51402) (tibber docs)
- Fix shopping list “complete all” service name (@spacegaier - #51406) (shopping_list docs)
- Bump aiohomekit to 0.2.67 (fixes #51391) (@Jc2k - #51418) (homekit_controller docs)
- Bump zwave-js-server-python to 0.26.1 (@raman325 - #51425) (zwave_js docs)
- Update frontend to 20210603.0 (@bramkragten - #51442) (frontend docs)
Release 2021.6.2 - June 4
- Hot fix version of Apply modbus interval patch (@balloob - #51487) (modbus docs)
- Update to iaqualink 0.3.90 (@flz - #51452) (iaqualink docs)
- Retry isy994 setup later if isy.initialize times out (@bdraco - #51453) (isy994 docs)
- xknx 0.18.3 (@farmio - #51277) (knx docs)
- Update xknx to version 0.18.4 (@farmio - #51459) (knx docs)
- Bump aiolyric to 1.0.7 (@timmo001 - #51473) (lyric docs)
- Improve logging for SamsungTV (@chemelli74 - #51477) (samsungtv docs)
- Upgrade elgato to 2.1.1 (@frenck - #51483) (elgato docs)
- Protect our user agent (@balloob - #51486)
Release 2021.6.3 - June 7
- Use a single job to ping all devices in the Broadlink integration (@felipediel - #51466) (broadlink docs)
- Fix loop in tod binary sensor (@bdraco - #51491) (tod docs)
- AsusWRT fix keyerror when firmver is missing from info (@timmo001 - #51499) (asuswrt docs)
- Handle missing options in foreign_key for MSSQL (@bdraco - #51503) (recorder docs)
- Fix missing Tibber power production (@Danielhiversen - #51505) (tibber docs)
- Bump garminconnect_aio to 0.1.4 (@cyberjunky - #51507) (garmin_connect docs)
- Bump pyialarm to 1.8.1 (@RyuzakiKK - #51519) (ialarm docs)
- Improve log message when zone missing in geolocation trigger (@exxamalte - #51522) (geo_location docs)
- Ensure host is always set with samsungtv SSDP discovery (@bdraco - #51527) (samsungtv docs)
- Bump aiorecollect to 1.0.5 (@bachya - #51538) (recollect_waste docs)
- Fix garmin_connect config flow multiple account creation (@cyberjunky - #51542) (garmin_connect docs)
- Bump dwdwfsapi to 1.0.4 (@stephan192 - #51556) (dwd_weather_warnings docs)
- Increase isy setup timeout to 60s (@bdraco - #51559) (isy994 docs)
- Fix Sonos restore calls (@jjlawren - #51565) (sonos docs)
- Update builder to 2021.06.2 (@pvizeli - #51582)
- Fix deprecated value_template for MQTT light (@emontnemery - #51587) (mqtt docs)
Release 2021.6.4 - June 11
- Fix Sonos battery sensors on S1 firmware (@jjlawren - #51585) (sonos docs)
- Handle missing section ID for Plex clips (@jjlawren - #51598) (plex docs)
- Reduce ovo_energy polling rate to be less aggressive (@blastoise186 - #51613) (ovo_energy docs)
- Do not configure Shelly config entry created by custom component (@bieniu - #51616) (shelly docs)
- Fix Onvif get_time_zone from device (@pszafer - #51620)
- Ensure samsungtv reloads after reauth (@bdraco - #51714) (samsungtv docs)
- Fix race condition in samsungtv turn off (@bdraco - #51716) (samsungtv docs)
Release 2021.6.5 - June 15
- Replace garminconnect_aio with garminconnect_ha (@cyberjunky - #51730) (garmin_connect docs)
- Bump pydaikin, fix airbase issues (@fredrike - #51797) (daikin docs)
- Add httpcore with version 0.13.3 (@ludeeus - #51799)
- Bump pyialarm to 1.9.0 (@RyuzakiKK - #51804) (ialarm docs)
Release 2021.6.6 - June 20
- Fix whois expiration date (@kantselovich - #51868) (whois docs)
- Add Omnilogic switch defaults for max_speed and min_speed (@djtimca - #51889) (omnilogic docs)
- Bump pyRFXtrx to 0.27.0 (@RobBie1221 - #51911) (rfxtrx docs)
- Bump pydaikin to 2.4.3 (@fredrike - #51926) (daikin docs)
- Fix AccuWeather sensors updates (@bieniu - #52031) (accuweather docs)
- Fix double subscriptions for local push notifications (@balloob - #52039) (mobile_app docs)
- Catch unexpected battery update payloads on Sonos (@jjlawren - #52040) (sonos docs)
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: 23rd edition
The 23rd edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, which we thought was worth sharing.
Do you want to share something for the next edition? Information on how to share.
./Klaas
Intern on Home Assistant Energy
Blueprint of the week
This week’s blueprint is all about medication. It may happen that you forget to swallow it, what if you create an automation that sends you a message as a reminder every time? Mati24 has now made a handy blueprint for that, try it out!
Read more about it on the community forum or install this automation in your instance with a click on the My button!
Swiper card
Not enough space on your Lovelace dashboard? Then try the swiper card made by bramkragten, with which you can easily swipe through different cards in the same card frame.
Lovelace dashboard
Also this week we have a new Lovelace dashboard for the necessary portion of inspiration 😄 This time the dashboard of DoIGotSkillz, who made one for use on a tablet wall mount.
Would you also like your dashboard to be in the community highlight? Drop it on Reddit and maybe I’ll pick it out for the next edition.
Homegame
Recently we had an item about switching entities in Minecraft, well this time it’s a game again but in 2D. svendroid made a proof of concept game that you can play in the browser, you can adjust the map so that your own light entities work with it.

Doesn’t this also remind you of the old Pokemon games from the past? 😅
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:
- Tweet 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!
Community Highlights: 22nd edition
The 22nd edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, we thought was worth sharing.
Do you want to share something for the next edition? Information on how to share.
./Klaas
Intern on Home Assistant Energy
Blueprint of the week
Are you one of those who always leave the doors open?
Then this week we have a nice blueprint for you! BasTijs has made a blueprint that announces through text-to-speech in the house, that a door is open and only stops when the door is closed again.
Try it out! Read more about it on the community forum or install this automation in your instance with a click on the My button!
Sun card
On our Home Assistant reddit page we also encountered another nice project, namely that of AitorDB. Who made a Lovelace card that shows the position of the sun when it rises, is at its highest point and sets again.
Collapsed card
Is your Lovelace dashboard overflowing with cards and do you want to make some free space? Then try the card made by RossMcMillan92, which makes it possible to collapse entire cards and reappear as a dropdown.
Hyperion - HA bridge
You have those TVs where LEDs are mounted on the back so that the colors of the TV continue over the wall behind it, this is also called ambilight. If your TV is not equipped with this, you can also make this yourself through the Hyperion project. pimw has also written an instruction post about this on our community forum on how to connect the bridge to Home Assistant.
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:
- Tweet 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!
Community Highlights: 21st edition
The 21st edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, we thought was worth sharing.
Do you want to share something for the next edition? Information on how to share.
./Klaas
Intern on Home Assistant Energy
Blueprint of the week
Imagine, you are listening to music and suddenly you get a call, then of course you first want to turn the music down a bit to understand the person, what if we automate that with a blueprint!
This week’s blueprint is that of JackPoint, which will mute your media player when you receive a call and are at home. Try it out! Read more about it on the community forum or install this automation in your instance with a click on the My button!
Would you rather not have the media player muted but, for example, paused or take another action? More variants can be found on the Blueprint Exchange!
Car Telemetry
A few editions earlier we had shown the dashboard of Make_Itt_Work and it contained telemetry data from his car. The question was of course how does he do that?! Well, that question now has an answer, a video has come online with all the details.
Shower Duration
We’ve talked enough about saving energy, but using water efficiently is just as important. With the project from farstreet, which consists of some hardware and an automation, you could time how long you are in the shower and indicate with a LED light how long you have been under it.
Finished taking a shower? Then you can hear what your shower time was through a media player.
Mine Assistant
This item is especially nice for the Minecraft players, Andy has managed to switch a light in Home Assistant by means of a redstone block in Minecraft! In the Reddit post you can find more information about this project, as well code to get started yourself.
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:
- Tweet 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!
Why Home Assistant doesn't have an external API for integrations
Home Assistant is the world’s largest home automation platform talking with over 1900 different devices and services. Home Assistant works with these via “integrations”.
Each integration runs inside Home Assistant. They convert the data from the device into data that Home Assistant understands and forward commands from Home Assistant back to the device. For this to work a device or service needs to have an application programming interface (API).
It is not possible for a device or service to provide lights, switches or other device types via the Home Assistant API without an integration. It can be faked, but it won’t work correctly. We explicitly did not add this feature because of interoperability.
If Home Assistant were to offer this option, devices and services would no longer be required to create an API for control – they could just implement ours. This creates vendor lock-in, locks other home automation platforms out and hurts the open Internet of Things ecosystem.
You should be able to access your data from your devices without any restrictions. Requiring a specific application to get to your data is not the solution.
Our goal is a home where all smart devices can be managed locally.
This stance will hurt us in the short term because we get less integrations. It is more work for a manufacturer to create an API and a Home Assistant integration.
In the long term the user will win. Devices with local APIs will still work 10 years from now and no one will be held hostage by vendor lock-in because some of their devices only work with Home Assistant.
Note about Home Assistant APIs: Home Assistant does have an API, just not for integrations. It allows you to access all your data in real-time. We also have a data science portal that documents how you can query the historical data stored on disk.
Easier notifications in iOS 2021.5
Notifications are a popular feature of the Companion apps, but the differences between Android and iOS made it painful to use them to their full potential. Starting with today’s release of iOS 2021.5, the vast majority of functionality is now shared across both platforms. As part of this, the notifications documentation has been extensively updated as well.
Actionable notifications
Building actionable notifications for iOS and watchOS no longer requires defining categories in advance of using them; instead, you can include the actions right in the notification. Support for macOS will be included in a future release. Categories were one of the hurdles around multi-server support, so removing them entirely solves that part!
Included in the documentation is how to migrate from categories to dynamic actions. Both are still supported in the app at this time, but categories will be removed in the future.
Below is an example script which sends an actionable notification and uses script variables, wait for trigger, and choose to decide what to run.
# In a script's `sequence` or an automation's `actions`
- alias: "Set up action variables"
variables:
# Including 'id' in 'action' allows us to identify this script run
# and not accidentally trigger for other notification actions
action_very: "{{ 'VERY_' ~ context.id }}"
action_mod: "{{ 'MOD_' ~ context.id }}"
- alias: "Send the notification"
service: notify.mobile_app_zac_iphone
data:
message: "Are you hungry?"
data:
actions:
- action: "{{ action_very }}"
title: "Very Hungry"
- action: "{{ action_mod }}"
title: "Moderately Hungry"
- alias: "Wait for a response"
wait_for_trigger:
# We wait for specific actions because we don't want to run for
# any action, only for a response to the one we just sent
- platform: event
event_type: mobile_app_notification_action
event_data:
action: "{{ action_very }}"
- platform: event
event_type: mobile_app_notification_action
event_data:
action: "{{ action_mod }}"
- alias: "Handle the response"
choose:
- conditions: "{{ wait.trigger.event.data.action == action_very }}"
sequence:
- service: notify.notify
data:
message: "⚠️ Soylent Launch Incoming"
- service: homeassistant.turn_on
target:
entity_id: switch.soylent_dispenser
- conditions: "{{ wait.trigger.event.data.action == action_mod }}"
sequence:
- service: notify.notify
data:
message: "Anyone want to grab a croissant? -Zac"
This works for both platforms without including any platform-specific logic! Other features around actionable notifications are also shared, including adding a URL to open when picking an action:
actions:
- action: "URI"
title: "View More"
uri: "/lovelace/some-dashboard"
Replacing, grouping, clearing
Replacing existing notifications or threading certain notifications was another difference between platforms, and the iOS-specific versions were a bit less ergonomic, so the Android versions now work for both. You can now use the simpler tag
and group
keys:
- service: notify.mobile_app_<your_device>
data:
message: "The front door is unlocked!"
data:
# replace any existing front_door_lock notifications
tag: front_door_lock
# thread with other doors notifications
group: doors
You can also remove an existing notification by its tag:
- service: notify.mobile_app_<your_device>
data:
message: clear_notification
data:
tag: front_door_lock
Attachments
Attachments no longer require certain categories for dynamic attachment, so you can include streaming playback of a camera for any notification:
- service: notify.mobile_app_<your_device>
data:
message: "Motion detected"
data:
entity_id: camera.outside
Specifying a non-dynamic attachment is a little easier now, allowing you to short-hand the attachment part:
- service: notify.mobile_app_<your_device>
data:
message: "3D Print Complete"
data:
image: /media/local/3dprinter/latest.jpg
You can use video
, image
and audio
. Only image
is supported on Android.
You may have noticed that iOS notifications have file limits; this release adds on-demand downloading of attachments that exceed the size limit or when requested using the lazy
attachment option.
Future areas of improvement
We’re still on the lookout for places of confusion or redundancy in notifications across the iOS and Android apps. What would you like to see improved?
Community Highlights: 20th edition
Damn! We are already at the 20th edition of the Home Assistant Community Highlights! Some interesting things popped up around our community, we thought was worth sharing.
Do you want to share something for the next edition? Information on how to share.
./Klaas
Intern on Home Assistant Energy
Blueprint of the week
Recently Home Assistant has received support for the use of alarm keypads
with deCONZ, which works with an alarm control panel entity and the deconz_alarm_event
.
Therefore this week’s blueprint is that of Robban, with which you can use a physical (Zigbee) keypad to switch your alarm on or off.
Keep in mind: the support in deCONZ rest plugin is still in an alpha stage.
Try it out! Read more about it on the community forum or install this automation in your instance with a click on the My button!
Lovelace Dashboard
Also this week we have a new Lovelace dashboard for the necessary portion of inspiration 💡 This time it has become that of StreetInevitable5427, a beautiful Neon UI that looks so sleek that you would love to hang it on your wall 🖼️
Take also a look at the original post on Reddit. Would you like your dashboard to be in the community highlight? Drop it on Reddit and maybe I’ll pick it out for the next edition.
Browser Extension
Fresh off the press, we came across something really cool on the community forum.
bokub has made browser extensions for Chrome and Firefox with which you can display a Lovelace dashboard in your browser and thus quickly switch a light, for example.
ESPHome 1.17
A new version of ESPHome has also been released this week! 🥳
In particular, I would like to point out the new pulse_meter component, which is ideal for if you want to measure all your energy via a pulse LED on your smart meter or when you want to read what your water consumption is.
The pulse meter component is also what I’ve used for the hardware I’ve been working on. I’ve made a range of improvements since the last time I shared it. Now including a status LED so it’s easy to check if it’s working. pic.twitter.com/GwaVZS0HQj
— Klaas Schoute (@klaasnicolaas) May 4, 2021
By combining measuring how many pulses there are within a time frame and the time between each pulse, you get even better accurate readings!
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:
- Tweet 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!