❌

Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

Big Tech ruined the cloud, so we’re renaming ours

Big Tech ruined the cloud, so we’re renaming ours

From ever-increasing subscription prices to outages and data harvesting: we don’t like what the cloud has come to represent. So we’re redefining what an online service should be: private, optional, and free from lock-in or walled gardens.

That’s why today Nabu Casa is renaming Home Assistant Cloud to more accurately describe what the service actually does, and to better reflect our values. Allow us to introduce:

Home Assistant Link

I’m Carl, Vice President of Commercial at Nabu Casa. You probably know us as the folks making all that sleek, highly optimized Home Assistant hardware. Beyond hardware, we also manage and run Home Assistant Link, and as one of the Open Home Foundation’s commercial partners, we’re here to help fund all their amazing work. We feel pretty passionately about the word cloud, and we’d love to explain how the old name never fit, and why Link finally does.

Created for the community

Home Assistant began with a group of core developers working nights and weekends alongside their regular jobs to create the platform – a good recipe for burnout, and one that has ended plenty of similar open source projects. So in 2018, we founded Nabu Casa and created Home Assistant Cloud to make sure that didn’t happen.

Home Assistant Cloud set out to make Home Assistant easier for more people to use, starting with a problem many of you had: reaching your Home Assistant when you’re not at home, without having to spend a weekend on it. It was also built to make Home Assistant’s development sustainable.

The intent was never to just ask for donations, but to build an optional service that benefited the community and funded the work at the same time. The majority of profits from subscriptions now fund the Open Home Foundation. That money supports everyone working on Home Assistant – from salaried staff to volunteers – keeping the project sustainable. That shift took Home Assistant from a passion project to one that could invest back into its community, and one that could stick around for the long haul.

A breath of fresh air

The Nabu Casa logo without the word cloudWe even took it out of the Nabu Casa logo… did we take this too far? 🤔

We had a service that we and the community loved, but the name just didn’t feel right. For example, there were times when Paulus, founder of Home Assistant and President of the Open Home Foundation, was on stage saying “don’t buy products that require the cloud to work,” then in the next breath having to explain how Home Assistant Cloud is different, despite the name. That created unnecessary friction.

It also caused confusion, since some new users thought (and continue to think) Home Assistant Cloud is a way to run Home Assistant in the cloud. This has never been the case, because we believe Home Assistant should always be run locally, in your home.

Big Tech has given the cloud a bad name, and while Link does run online, it is very different from other cloud-powered smart home services:

Home Assistant Link A Big Tech cloud
Optional: your smart home will still work without it, lights and all. Required: all or most features won’t work without it.
No lock-in: you can use this service or someone else’s, and you’ll never be stuck. A walled garden: you’ll be locked into that one service, and all its outages or price increases.
Your data’s private: your data is yours, and will always stay that way. Your data’s monetized: you’re the product, and your data is used for ads, AI training, and sometimes sold to third parties.
Funds a nonprofit: Nabu Casa contributes the majority of profits from subscriptions to the Open Home Foundation, supporting their fight for privacy, choice, and sustainability. Funds investors first: profits flow to shareholders, debt repayment, and a bunch of other stuff first, and funding developers is an afterthought.

Your subscriptions help sustain Home Assistant, but we’ve been clear from the beginning that you do not need Link to use the platform. We hate what Big Tech has done to smart devices, turning them into paperweights when they drop support. Thermostats that can’t be scheduled or cameras that can’t detect motion, giving the smart home a bad reputation and making a mountain of e-waste. By not using Link, you’ll miss out on some extras, but that’s all they are: extras. And if you do use Link but have to unsubscribe, your smart home will keep working.

Big Tech treats your data as a commodity and a tool for mass surveillance: sold to advertisers, used to train AI, and dealt to third parties for the best price. We think this is morally bankrupt. That’s why when you use Home Assistant Link, your data is encrypted, and only you have the key. Neither Nabu Casa nor the Open Home Foundation want your data, and we work hard to never have an opportunity to see it.

This is what tech serving people looks like: data that’s yours, and a smart home that answers to you – not corporate shareholders.

Choose your own path

Many of you build DIY projects to customize your setup, and Home Assistant isn’t going anywhere on that front. But for those who’d like a simpler approach, Link makes using Home Assistant easier, opening up the local and private smart home to more people. For example, connecting to Alexa and Google Home can be complex to set up yourself, but Link allows you to… ahem… link them to Home Assistant without the hassle. Not having the time or know-how shouldn’t be a barrier to using the platform, and Link ensures it isn’t.

On top of things that can only be done online, there are other features that just work better with Link’s connected services. For instance, online speech-to-text tends to be faster, supports more languages, and is more reliable than self-hosted alternatives. Likewise, Link offers a way to store a backup online, so your data is always recoverable while remaining private. Plus, if you run into trouble with a feature, we have real humans you can contact to help you out. You heard that right. A real person.

The new Nabu Casa account pageSee everything at a glance on our new account page.

We’re also constantly improving the service and are now working to add new features. You may have noticed the new, easier-to-use account page, the speech-to-text Labs test, or the new settings page in Home Assistant with a setup wizard. What you probably won’t notice is the massive backend update to improve the responsiveness of your remote access (we’ve migrated to a new bare-metal setup that always tries to get you on the closest server, and it’s fast 🏎️). Most importantly, these updates let us add new security features, account management tools, and more.

What’s in a name?

In the end, our actions speak louder than product names, and we’ll continue to run a subscription that’s about privacy, transparency, and not locking users in, all the while supporting the development of Home Assistant.

Whenever features get renamed, we always come to you, the community, first. Even though this is a service from Nabu Casa, Home Assistant is a community project, and we value your opinion and thoughts. Love the new name? Something we didn’t consider? We’re all ears. We intend to make the name change official in the December 2026.12 release, so please provide all your feedback well before then! 👇

2026.9: There's room on this bus

Home Assistant 2026.9! 🎉

I’ll be honest: Modbus has never been the flashiest part of Home Assistant. It quietly powers solar inverters, heat pumps, and energy meters, but only if you’re comfortable hand-writing your own register map in YAML, a real wall that’s kept a huge category of devices out of reach. This release finally makes room on the bus: integrations that already know how a device talks over Modbus, sharing a single connection instead of fighting over it, so you simply pick your device in the UI like anything else in Home Assistant. It won’t show up in a screenshot, but modernizing Modbus is hands-down my favorite change this release. 🔧

I’m also really looking forward to jumping on the new Cloud voice processing myself and putting it through its paces. We’re a household with a non-English main language, and if you’ve ever run a private voice assistant in one, you know exactly how fast accents and background noise trip things up. This new speech-to-text engine specifically targets those pain points, so I’m very curious to see how it holds up against my own accent. 😉

And there’s plenty more: active alerts and favorites for the Security dashboard, a shared Sources panel for History and Activity, Activity that finally explains why something changed, a brand new network map for Matter, charts you can now navigate by keyboard and sound, and 13 new integrations! 🚀

One more thing before you dive in: we’re at IFA Berlin this weekend! It’s one of the largest consumer electronics expos out there, running September 4 to 8, 2026, and the Open Home Foundation has its own booth in the Smart Home hall: Hall 1.2, stand 1.2-153. If you’re around, come find us and say hi. 👋

Enjoy the release!

../Frenck

A huge thank you to all the contributors who made this release possible! And a special shout-out to @googanhiem and @piitaya who helped write these release notes. Also, @Diegorro98, @jan-tdy, @RaHehl, and @farmio for putting effort into tweaking its contents. Thanks to them, these release notes are in great shape. ❤️

Home Assistant Cloud

Home Assistant Cloud is an essential part of funding the Open Home Foundation. We’re so thankful for all the support from our subscribers, and from the start we’ve always been clear: this isn’t just a donation to Home Assistant, we want it to provide real benefits to subscribers. Together with Nabu Casa, we’ve been constantly working to make Cloud better, and here are some useful recent additions.

Seeing through the Cloud

A new addition that should help security-conscious Home Assistant Cloud subscribers is the ability to better see who is attempting to log into your instance. In the past, they all looked like local requests, and you may have seen the 127.0.0.1 invalid login attempt message, which wasn’t that helpful. Now the proper IP address gets passed through, so whether that’s you mixing up your passwords when logging in, or some bot trying their luck, you’ll now know better where it’s coming from.

A side benefit of this change is that it’s now possible to use IP banning to make it harder for these malicious actors, which was added to the UI in the previous release. In conjunction with setting up multi-factor authentication (2FA) in Home Assistant, you can add a little extra peace of mind to your home, but that’s not the only Cloud benefit being improved this month.

Test the new voice processing

When we launched Home Assistant Voice Preview Edition, a good amount of the community jumped into running their own private voice assistants in their homes. Building something to rival big tech is still a work-in-progress, but every year we get closer. Today, we’re again asking for our Cloud subscribers to help us test another awesome step forward.

Our friends at Nabu Casa are testing a new speech-to-text engine for Home Assistant Cloud, and it significantly improves the three common places voice processing gets tripped up: accents, background noise, and non-English languages. Many of us around the Foundation have been using it and finding it works great with our sometimes unique accents even in noisy environments.

There are several big changes under the hood, including switching to a new provider Soniox, so it needs to be tested. You’ll still get the same privacy guarantee of no logging, storing, or training on your audio. It’ll be available to test via Labs, with the normal caveat that it may not be a permanent addition, so provide your feedback on the Labs page if it’s the right step forward.

If you’re a Home Assistant Cloud subscriber, you can toggle this on right now by heading to Settings > System > Labs. If you’re not a subscriber, there is a 31-day trial. Speaking of which, there are some big improvements on signing up coming as well.

Float in to be a Cloud subscriber

Signing up for Home Assistant Cloud now begins on a clearer start page: one obvious button to Start your free trial, and a link to Sign in if you already have an account. It also finally shows what you would actually be getting. The old page left you to guess what was behind that button, which, fair enough, didn’t help anyone. Now the features are listed right there, before you even start the trial.

Screenshot of the redesigned Home Assistant Cloud start page, with a button to start a free trial, a link to sign in, and an overview of what Home Assistant Cloud offers.

Now confirming your email will automatically log you in to Home Assistant Cloud, so you can immediately set up remote access, voice, and backupsHome Assistant has built-in functionality to create files containing a copy of your configuration. This can be used to restore your Home Assistant as well as migrate to a new system. The backup feature is available for all installation types. [Learn more]. No more logging in after signing up! And as always, the one-month trial requires no payment details.

Home Assistant Cloud is built and run by Nabu Casa, a commercial partner of the Open Home Foundation. Every subscription funds the foundation directly, and with it, the full-time development of Home Assistant, this release included. 😊

In return, you get secure remote access with no port forwarding or VPN, encrypted off-site backupsHome Assistant has built-in functionality to create files containing a copy of your configuration. This can be used to restore your Home Assistant as well as migrate to a new system. The backup feature is available for all installation types. [Learn more] ready to restore your whole system the moment you need them, faster and more accurate speech-to-text and text-to-speech for your own voice assistant, native Amazon Alexa and Google Assistant support, and more. It’s all built with the same respect for your privacy as Home Assistant itself: no ads, no data harvesting, just a service that keeps Home Assistant independent.

If you have been thinking about a subscription, there has never been an easier moment to try it.

Active alerts and favorites for the Security dashboard

The built-in Security dashboard is getting more love, and this release adds two things people kept asking for, both managed from the same editor.

The new Active alerts section only shows up when something actually needs your attention, like a door left open or a smoke detector going off. You choose which entitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] can trigger it, and how serious each one is, as an Alert or a Warning, so a window left open doesn’t get the same red treatment as an actual smoke alarm. Nothing going on? The section stays out of the way entirely.

Right alongside it, a new Favorites section lets you pin the entities you check most, so your most important doors, locks, or sensorsSensors return information about a thing, for instance the level of water in a tank. [Learn more] sit at the top of the dashboard instead of wherever they happen to fall.

Screenshot of the Security dashboard editor, showing the favorite entities and the active alert entities with their severity levels.

This started as a community-designed concept from @ricardoantoniocm, right down to the severity colors and the pulsing animation for anything that needs attention. It’s part of an Open Home Foundation roadmap opportunity to bring severity to the Security dashboard, and there’s more to come: surfacing these same alerts on the Home dashboard is still on the list for a future release.

A new Sources pane for History and Activity

Browsing and finding what you’re looking for in History and Activity can be daunting, so… we made it better! Both pages now share a single Sources panel on the left side that merges target picking (floorsA floor in Home Assistant is a logical grouping of areas that are meant to match the physical floors in your home. Devices & entities are not assigned to floors but to areas. Floors can be used in automations and scripts as a target for actions. For example, to turn off all the lights on the downstairs floor when you go to bed. [Learn more], areasAn area in Home Assistant is a logical grouping of devices and entities that represents a room or space in your home, such as the living room, kitchen, or garage. [Learn more], devicesA device is a model representing a physical or logical unit that contains entities., and entitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more]) with filtering by domainEach integration in Home Assistant has a unique identifier: The domain. It is often shown as the first part (before the dot) of entity IDs., device class, and integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more], so you can narrow a whole area down to, say, just its motion sensors. The panel docks to the side and opens automatically on wider screens, and tucks away as a pull-up sheet on narrower ones. Whatever you filter on is remembered the next time you come back.

Screenshot of the History page with the new Sources panel open, showing three areas selected and filtered down to temperature sensors, with their chart on the right.

The two pages still behave the way they always have, on purpose: History waits for you to pick something before it draws a chart, since showing everything at once wouldn’t be very useful (or fast in that regard 😅). Activity keeps showing everything by default, and you can narrow it down with filters alone, no target required.

Screenshot of the Activity page with the new Sources panel open, filtering activity down to the lights in the office.

A couple of smaller improvements come along for the ride: the date range picker is now a single pill with previous and next arrows, and long entity names on the History timeline draw above their bar and truncate to fit, instead of being cut off. Always nice to see the attention to detail.

This follows an Open Home Foundation design discussion on giving History and Activity a shared layout.

From what changed to why it changed

Open Activity and you can see exactly what changed: a light turned on, a door unlocked, a blind closed. What you couldn’t see was why. Figuring that out meant guessing which automationAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] was responsible, opening it, digging into its trace, and working backward to the entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] that actually triggered it. It got harder still after a recent redesign of the log rows, which traded the sentence that used to explain where an entry came from for showing an entity’s area and device instead, so even that small hint disappeared.

Selecting any row in Activity now opens a details dialog that lays out the full story, read top to bottom: what started it (a person, a state change, a schedule, an integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more], or a restart), the automationsAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] or scriptsA script is a saved list of steps that runs when you start it, for example, from a dashboard, with Assist, or from an automation. Unlike an automation, a script has no triggers, so it doesn’t start by itself. [Learn more] it passed through, and finally the entity’s own change. Every step in that chain is clickable, opening the entity behind it or, for automations, its trace directly. Timestamps go down to the millisecond, so even events that landed in the same second keep their correct order.

Screenshot of the Activity details dialog for a light, showing the presence sensor and the automation that triggered its state change, with millisecond timestamps.

Insights into your Matter world

Zigbee (through ZHA), Z-Wave, and Bluetooth have shown you a map of how their devices connect to each other for a while now. 🗺️ MatterMatter is an open-source standard that defines how to control smart home devices on a Wi-Fi or Thread network. [Learn more] never got the same treatment in Home Assistant, even though the data existed all along, just not here: the Matter Server has its own working network map, tucked away in a separate web interface most people never open.

The Matter panel now has a Show map button that brings that same picture right into Home Assistant, using the same graph experience you already know from the other protocols. It shows the full picture: which devices talk over ThreadThread is a low-power mesh networking standard that is specifically designed for smart home applications. It is a protocol that defines how devices communicate. [Learn more] and which over Wi-Fi, which ones are routers or “border routers”A Thread border router forwards data packets between your local network and the Thread network. This enables smart home devices within a Thread network to communicate with IPv6-capable devices in your local network. A Thread border router is connected to your network either via Wi-Fi or Ethernet and uses its radio frequency (RF) radio to communicate with the Thread mesh network. In case of Matter, the data that is forwarded is encrypted. Examples of Thread border routers are the Nest Hub (2nd gen), the HomePod mini, and the Home Assistant Connect ZBT-2 together with the OpenThread Border Router app. [Learn more] versus battery-powered end devices, and the path from Home Assistant to each one. Border routers and access points are named from things you’d actually recognize, like their network host name or Wi-Fi network name, instead of a serial number. Link color tells you the transport, Thread or Wi-Fi, and the thickness and direction reflect the signal strength on each side of the connection.

Screenshot of the Matter network map, showing Home Assistant connected to Thread border routers, a Wi-Fi access point, and end devices.

If your Matter server is a bit older and doesn’t support this yet, the page tells you so instead of just failing, so you know to update rather than assume something’s broken.

This closes out an Open Home Foundation roadmap opportunity to bring Matter’s network map in line with the other protocols.

New tile card features

The tile card keeps gaining more ways to control an entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] without opening its more-info dialog, and this release adds three, all from the same contributor.

Lights get a new Light effect feature, so you can pick and preview an effect, like Rainbow, directly from the tile.

Screenshot of two light tile cards with the Light effect feature, each showing an effect selector.

Vacuums get a new Vacuum fan speed feature, so you can switch between fan speeds, like min, medium, high, or max, right alongside the existing start, stop, and dock commands.

Screenshot of two vacuum tile cards with the Vacuum fan speed feature, each showing a fan speed selector.

And the existing Target humidity feature, previously limited to humidifiers, now also works with ClimateThe Climate entity allows you to control and monitor HVAC (heating, ventilating, and air conditioning) devices and thermostats. [Learn more] entities that support humidity control, using the step size your device reports instead of a fixed one.

Screenshot of the target humidity feature on a tile card for a thermostat, with a humidity slider.

All three come with matching tile card suggestions, so Home Assistant offers to add them automatically when they make sense for an entity.

Thanks to @pcan08 for all three!

One more tile card fix: with the Feature position set to Inline, only the first feature used to show up, and the rest were silently dropped. Now the first one sits next to the entity name as before, and the others appear below it in two columns.

Screenshot of two tile cards with the feature position set to Inline, showing one feature next to the name and more features below it.

Thanks to @JulianHock for that one!

Modernizing Modbus

Modbus devices, like solar inverters, energy meters, and heat pumps, have long been supported in Home Assistant through the YAMLYAML is a human-readable data serialization language. It is used to store and transmit data in a structured format. In Home Assistant, YAML is used for configuration, for example in the configuration.yaml or automations.yaml files. [Learn more]-based Modbus integration, where you hand-write a register map for your device yourself. That still works and isn’t going anywhere, but it puts the burden of understanding a device’s protocol on every user. This release lays the groundwork for a different way: integrations that already know how a device talks over Modbus, so you pick your device in the UI, the same as any other integration.

The first integrations built this way are already here: Fronius gained optional Modbus TCP (SunSpec) support, adding per-string solar data — current, voltage, power, and lifetime energy for each MPP tracker — that its existing local HTTP API doesn’t expose. It shares its connection with anything else talking to the same inverter, which matters in practice: some Fronius models only accept a handful of simultaneous Modbus sessions. Sofar Inverter Modbus and Flexit are built the same way.

For the full story, including the new standalone modbus-connection library and how to build your own integration on top of it, read Modernizing Modbus in Home Assistant on the developer blog. Underneath, it talks to devices through tmodbus, a modern, fully typed Modbus library.

Thanks to Paulus (@balloob) for pushing this forward, @wlcrs for tmodbus, the library it’s built on, @farmio for Fronius, @darkrain-nl for Sofar Inverter Modbus, and @troelde for Flexit!

Integrations

Thanks to our community for keeping pace with the new integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] and improvements to existing ones! You’re all awesome 🥰

New integrations

We welcome the following new integrations in this release:

  • Besen, added by @moryoav
    Connect Besen EV chargers to Home Assistant over Bluetooth Low Energy, using Home Assistant’s built-in Bluetooth support or an ESPHome Bluetooth proxy. It works with the Besen BS20 charging station and other Besen chargers that use the same protocol.

  • Collection image, added by @karwosts
    Turn a folder from a media source into a dynamic image entity. Home Assistant picks a random picture from the folder, so you can show a changing image on a dashboard or use it as a view background.

  • Flow-it, added by @albertogeniola
    Monitor and control your Flow-it ventilation system from Home Assistant. Adjust the fan speed, switch between preset modes such as Auto and Boost, and bring it into your automations alongside your other smart home devices. The integration connects to the device on your local network and supports automatic discovery.

  • Hot Spring, added by @Moustachauve, launching at 🏆 platinum quality
    Monitor and control a Hot Spring spa equipped with the HotSpring Connected Spa Kit 2 module, directly over your local network.

  • ISEO Argo BLE, added by @FezVrasta
    Control an ISEO Argo Bluetooth smart lock, common on armored doors in Italy and Switzerland, syncing its access log into the Home Assistant logbook and managing its users through actions. Home Assistant appears to the lock as its own gateway, polling it locally over Bluetooth.

  • LibreNMS, added by @mib1185
    Bring your LibreNMS network monitoring instance into Home Assistant. This initial release adds a binary sensor for the online status of each monitored device, with alerts and more sensor data planned for later.

  • NexBlue, added by @nexblue-maintainer
    Connect a NexBlue EV charger account to Home Assistant. It discovers the chargers on your account and provides read-only sensors for charging state, power, session and lifetime energy, and other electrical and diagnostic values. Charging controls are planned for a future release.

  • Ridder HortiMaX Pro, added by @wildekek
    Bring measurements from a Ridder HortiMaX Pro greenhouse controller into Home Assistant, including temperatures, humidity, vent and screen positions, irrigation volumes, and energy use. The integration is read-only, so your growing decisions stay fully in the controller’s hands. It’s the same kind of controller running the greenhouses at Amsterdam’s Hortus Botanicus, one of the oldest botanical gardens in the world, which we visited earlier Read the full story in our newsletter.

  • Samsung TV via ExLink, added by @balloob, launching at 🥈 silver quality
    Control Samsung TVs through their RS-232 serial port, which Samsung markets as ExLink, using a serial cable, a USB-to-serial adapter, or an ESPHome-based serial proxy. Talking directly to the TV’s serial port makes control fast and reliable, and it also works with TVs that lack smart features or a network connection.

  • Silla Prism, added by @ebaschiera
    Monitor a Silla Prism EV wallbox over its local MQTT API, with sensors for charging status, power, current, voltage, and session and lifetime energy. Setup only needs the MQTT topic your Silla app already shows you. Charging controls are planned for a future release.

  • Sofar Inverter Modbus, added by @darkrain-nl
    Connect a Sofar Solar inverter to Home Assistant over Modbus TCP, either directly or through a Modbus TCP bridge. Setup automatically detects your inverter model, and it works with both PV-only and hybrid inverters with battery storage.

  • Specialized Turbo, added by @JamieMagee
    Connect a Specialized Turbo e-bike over Bluetooth Low Energy, covering the TCU1 and TCX1 through TCX4 models, with detailed ride and battery telemetry. Encrypted bikes can sign in through your Specialized account or use a manually entered key, and Home Assistant manages the Bluetooth connection itself without storing your password.

  • Tonewinner, added by @emma-sg, launching at 🥈 silver quality
    Control Tonewinner AV processors, receivers, and amps over an RS-232 serial connection, using a USB-to-serial adapter or an ESPHome-based serial proxy.

This release also has new virtual integrations. Virtual integrations are stubs that are handled by other (existing) integrations to help with findability. These ones are new:

Noteworthy improvements to existing integrations

It is not just new integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] that have been added; existing ones keep getting better too. Here are some of the noteworthy improvements this release:

  • Tuya added support for the HCDD device category, covering chasing tape lights, so these RGB LED strips can be controlled like any other light. Thanks, @AnthonyZavala!
  • Shelly cameras are now fully supported, with a camera platform, motion detection, and a privacy switch to disable the lens. The Wall Display XL also gained its own motion sensor, and climate entities now report the correct heating and cooling status when a thermostat’s relay output is wired inverted. Thanks, @bieniu!
  • HomeKit Device gained duration, fault, and low battery sensors for more HomeKit accessories, so you can see how long a valve has been running, catch a failing accessory, and get a heads-up before a battery-powered sensor drops offline. Thanks, @nijel!
  • LG webOS TV added a switch to turn off just the screen while keeping the sound running, handy if you want to keep listening without the picture. Thanks, @darkrain-nl!
  • Reolink gained floodlight on/off schedule times, a button to synchronize the camera’s clock, a select to choose the anti-flicker frequency, and the ability to enable or disable the tamper alarm. Thanks, @Lukkasss and @starkillerOG!
  • Roborock brought dock controls, such as starting mop washing, drying, or emptying, to V1 vacuums. Thanks, @piitaya!
  • Google Gemini added a thinking budget option for Gemini 2.5 models and a thinking level option for Gemini 3 models, so you can tune how much the model reasons before it responds. Thanks, @mxwmnn!
  • Home Connect gained new event sensors, including short and long presses of the Favorite button on hobs and hoods, and a setpoint temperature option for air conditioners. Thanks, @Diegorro98!
  • Tado lets you choose which heating circuit serves a zone, handy in homes with more than one circuit, like a mix of underfloor heating and radiators. Thanks, @PeterLinuxOSS!
  • SwitchBot Cloud now supports the Permanent Outdoor Lights string lighting and the Curtain4 curtain motor, so you can control them from Home Assistant alongside the rest of your SwitchBot devices. Thanks, @XiaoLing-git!
  • KNX weather and select entities can now be created directly from the KNX panel in the UI, and YAML-defined entities can be given an explicit unique ID instead of relying on the auto-generated one. YAML entities can now also be assigned to devices. Thanks, @farmio and @martinhoefling!
  • Proxmox VE added a button to pause a VM, handy for freeing up resources for a moment, for example while another job needs the extra headroom, without fully shutting the VM down. Thanks, @erwindouna!
  • HomematicIP Cloud added a carbon dioxide sensor for supported devices, so you can trigger ventilation or an air purifier automation when CO2 levels creep up in a room. Thanks, @lackas!
  • VIZIO SmartCast now supports Crave portable speakers, with a battery level sensor and a charging binary sensor. Thanks, @raman325!
  • Environment Canada radar images can now be smoothed for a less blocky picture and extended with a short-term forecast, so you can see rain or snow coming before it actually arrives. Thanks, @michaeldavie!
  • MikroTik gained switches to turn Ethernet and Wi-Fi interfaces on or off, a select to set the PoE output mode, a binary sensor for interface connectivity, and more sensors, including a fix for incorrect voltage readings on the netPower 16P. Thanks, @chemelli74!
  • Mealie added actions to update and delete mealplan entries, so you can manage next week’s dinners from an automation or script instead of opening the app. Thanks, @andrew-codechimp!
  • Portainer added a Docker event entity, so container lifecycle changes reach Home Assistant immediately instead of waiting for the next update cycle. Thanks, @erwindouna!
  • Transmission added a sensor for available disk space, so you can get a warning before your download folder fills up. Thanks, @Eniot666!
  • Honeywell Lyric added a schedule status sensor, so you can tell at a glance whether your thermostat is following its schedule or someone put it on a temporary hold. Thanks, @clutch2sft!
  • Teslemetry added a rear defroster binary sensor, so you can automate it on a cold morning, and a cover entity for the Cybertruck’s tonneau, so you can open and close the bed cover from Home Assistant. Thanks, @Bre77!
  • IOmeter added entities for three-phase electricity meters, so homes with a three-phase connection get accurate readings for every phase instead of just the total. Thanks, @torben-iometer!
  • Modern Forms added support for breeze mode, which varies the fan speed to mimic a natural breeze. Thanks, @wonderslug!
  • Midea grew substantially this release, with new fan, humidifier, light, and switch controls, select and number entities to configure your appliance, buttons for common actions, and a full dust filter alert binary sensor. Thanks, @chemelli74!
  • Subaru added binary sensors for doors, windows, and the hood or tailgate, per-door lock status, EV plug and charging state, and vehicle health warning lights. Thanks, @jpettitt!
  • Anova cook time sensors now suggest hours as the displayed unit, making long cook times easier to read. Thanks, @goetzc!
  • iZone now shows the supply and return air temperatures of your ducted system, so you can spot a struggling compressor or a clogged filter before it becomes a bigger problem. Thanks, @Swamp-Ig!
  • Imou added a select entity to change night vision mode and volume, and a binary sensor for door and window contacts. Thanks, @Imou-OpenPlatform!
  • OpenEVSE added switches for solar PV divert, so you can charge from surplus solar power, the current shaper, which limits charging to protect your home’s electrical service, and a manual override to force charging on or off. Thanks, @firstof9!
  • Green Planet Energy added a get_prices action to fetch electricity prices for a given period, handy for building your own price charts or automations that react to tomorrow’s rates. Thanks, @petschni!
  • Vistapool added time entities for the three filtration schedule intervals, so you can adjust when your pool pump runs directly from Home Assistant instead of the Vistapool app. Thanks, @fdebrus!
  • ToGrill added a button to silence the alarm, handy when your food has reached temperature and you’d rather not walk over to the grill to quiet the beeping. Thanks, @thumbnail!
  • Watergate added a switch to turn the Sonic device’s automatic leak shut-off on or off. Thanks, @adam-the-hero!
  • IntelliClima added a binary sensor that reports when the filter needs cleaning. Thanks, @dvdinth!
  • Lyngdorf rounded out its debut with number entities for lip sync and channel trims, a remote entity to drive the processor’s on-screen menus, selects for RoomPerfect position and voicing, sensors for the active input and streaming source, and now-playing information with transport controls for models with a streaming module. Thanks, @fishloa!
  • Harbor Sleep added a select entity to set the camera’s night mode to Auto, On, or Off, so you can control it from Home Assistant instead of the Harbor app. Thanks, @Lash-L!
  • NeoPool added a pool light entity, plus an options flow to opt in to it, since the controller can’t detect whether a light is actually wired to the relay. Thanks, @svasek!
  • UniFi Protect can now be set up with just an API key from your UniFi OS Console, no local user account required. Select API key only (limited feature set) when adding the integration, or switch an existing entry over at any time. This first usable piece of the public API migration covers the alarm panel, cameras with their streams and snapshots, and lights. Sensors, switches, events, and media browsing are not available in this mode yet, and more platforms follow as they move over. Thanks, @RaHehl!

Integration quality scale achievements

One thing we are incredibly proud of in Home Assistant is our integration quality scale. This scale helps us and our contributors to ensure integrations are of high quality, maintainable, and provide the best possible user experience.

This release, we celebrate several integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] that have improved their quality scale:

This is a huge achievement for these integrations and their maintainers. The effort and dedication required to reach these quality levels is significant, as it involves extensive testing, documentation, error handling, and often complete rewrites of parts of the integration.

A big thank you to all the contributors involved! 👏

Now available to set up from the UI

While most integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] can be set up directly from the Home Assistant user interface, some were only available using YAML configuration. We keep moving more integrations to the UI, making them more accessible for everyone to set up and use.

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

Farewell to the following

Time for a little cleaning, and no, we did not wait for spring! The following “integrations”Integrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] are no longer available as of this release:

  • VLC has been removed. It required direct access to your system’s audio hardware, which only worked on the deprecated Home Assistant CoreHome Assistant Core is the Python program at the heart of Home Assistant. It is part of all installation types. It can be installed standalone (without Home Assistant Supervisor) as a container using Docker (this is typically referred to as the Home Assistant Container installation type). For development, Core can also be run using a Virtual Environment (previously referred as the Home Assistant Core installation type). For production setup, the Home Assistant Core installation type is deprecated. installation method. This does not affect the separate VLC via Telnet integration, which remains available on any installation method.

Other noteworthy changes

There is even more packed into this release. Here are some of the other changes worth a mention:

  • Settings gained a new Connectivity page that groups Matter, Zigbee, Z-Wave, KNX, MQTT, Thread, Bluetooth, Serial, Infrared, Radio frequency, Insteon, and Tags behind a single entry, instead of listing each one directly in the settings menu. Every existing link keeps working, and Voice assistants moved down to join it as the settings root’s short second group. Thanks, @balloob!
  • Template got some more love this release. Thanks, @Petro31!
    • Custom attribute templates were added to alarm control panel, button, cover, device tracker, fan, image, light, lock, number, select, switch, update, and weather entities, alongside the binary sensor, event, sensor, and vacuum platforms that already supported them.
    • The attributes option is now fully templatable, cutting down on repeated Jinja2 templates.
    • Trigger-based template entities now support a per-entity conditions option. When set, the conditions block all updates to the entity it’s attached to.
  • Button triggers can now also fire from button helpers, alongside physical device buttons. Thanks, @abmantis!
  • Automation traces now show which entities, devices, and areas each step targeted, the same way the automation editor already does, instead of baking that information into the step’s own description. Thanks, @piitaya!
  • Cover open, close, and set position actions gained an optional speed parameter, so covers that support multiple speeds can be told how fast to move, not just where to. Thanks, @wollew!
  • The restart confirmation dialog now lists the automations and scripts currently running, instead of a vague warning that some might be interrupted. The list updates live as they start and stop. Thanks, @karwosts, @MindFreeze, and @NoRi2909!
  • The Energy dashboard now labels individual devices with their device name, not just the bare entity name, so devices that share a generic sensor name like Energy are easy to tell apart across the graphs, sankeys, and configuration list. Thanks, @MindFreeze and @silamon!
  • Dashboards gained a Background tab in their detail editor, so you can set a dashboard’s background straight from the UI instead of needing YAML. Thanks, @timmo001!
  • Searching the media browser now also reaches media players with their own library, such as Music Assistant, Sonos, Squeezebox, and Jellyfin, instead of only searching media sources. Thanks, @marcelveldt, @bramkragten, and @silamon!

Golden hour, blue hour, and polar sun automations

Rebuilding automationsAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] around the sun has been a slow-burn project, and this release wraps it up. 2026.7 replaced the old, offset-heavy sun triggerA trigger is the part of an automation that makes the automation run when a specific change happens, for example, when the sun sets or a door opens. [Learn more] with dedicated ones for sunrise, sunset, solar noon, solar midnight, dawn, dusk, and elevation changes, plus matching conditionsConditions check whether something is true at that moment, for example, whether a door is closed. You can use them in automations and scripts. If a condition is not met, the actions that come after it in the same sequence do not run. At the top level of an automation or script, this stops the automation or script. [Learn more] like is up, is night, and twilight. 2026.8 then added a time-based offset option to those triggers, the same way the calendar trigger already works, so you can fire an automation a set amount of time before or after a sun event.

This release adds the last of it to the Sun integration: four new conditions and eight matching triggers for golden hour, blue hour, midnight sun, and polar night. Golden hour and blue hour are the warm and cool light either side of sunrise and sunset, handy for automations that match your lighting to the mood outside, or close the blinds before direct sun hits a room. Each one can be limited to morning, evening, or either.

Farther from the equator, midnight sun and polar night cover the more extreme stretches of the year: the sun staying above the horizon for a full day around midsummer, or below it for a full day around midwinter. Both now have their own condition and start and end triggers too, so automations that only make sense at high latitudes finally have something to hook into. Documentation for the full set is still catching up.

Thanks, @emontnemery!

Accessibility for charts!

Making Home Assistant work for everyone isn’t a one-off project for us, it shows up release after release. Better color contrast and clearer buttons landed in 2025.8, clearer status indicators for people who can’t rely on color alone arrived in 2026.7, and this release, it’s charts’ turn.

Charts render straight to a single image, which means every data point on them has been invisible to screen readers and unreachable by keyboard. If you rely on either, a chart in Home Assistant might as well not have been there at all.

That changes this release. Tab into a chart and it becomes a real focus stop: the arrow keys walk you through it point by point, and a live region announces the time and value of each one to your screen reader. Press H at any point to bring up a list of every shortcut, styled to match your own theme.

Here’s the best part: as you move through a chart, Home Assistant also plays a short tone for each point, rising and falling with the data. You don’t just hear the individual numbers, you hear the shape of the whole trend, like a little melody. 🎵 It plays for anyone navigating a chart by keyboard, not only people using a screen reader, since there is no reliable way to know who needs it, so it’s on for everyone.

This works on your line and bar charts, including the device breakdown on the Energy dashboard. A few more specialized ones, like timelines, sankey diagrams, and network graphs, aren’t covered yet.

Thanks to @MindFreeze for bringing this to charts!

Serial and MQTT panels

Serial joins the other protocol panels under Settings > Connectivity, the same recognition infrared and radio frequency got over the last two releases. Once anything is using a serial port, whether that’s a USB dongle like a Zigbee or ThreadThread is a low-power mesh networking standard that is specifically designed for smart home applications. It is a protocol that defines how devices communicate. [Learn more] radio, or an appApps are additional standalone third-party software packages that can be installed on Home Assistant OS. [Learn more] talking to one, the new Serial page lists it.

It splits what it finds into three groups: ports actually in use by an integration or app, ports that are connected but not used by anything, and ports something expects but that aren’t currently plugged in. A status banner at the top gives you the numbers at a glance, so if a stick has come loose or an app lost its connection, you see it the moment you open the page instead of hunting through logs.

Screenshot of the new Serial panel, with a status banner at the top and the connected serial ports, showing which integrations and apps use each one.

This rounds out the trio planned in an Open Home Foundation roadmap opportunity: serial, infrared, and radio frequency all have their own place in Settings now. Documentation for all three is still on its way.

Thanks to @puddly, who built this end to end, panel and all!

MQTT got a settings page of its own this release too, sitting right alongside Serial and Bluetooth in Connectivity instead of hiding its tools behind the integration’s options. A status banner at the top shows whether the broker is online and how many devices it’s found, with quick links to the devices and entities on your network. Discovery options and the broker connection settings each get their own row instead of sharing one options flow, and a new Publish a packet tool lets you send a test message, topic, QoS, and retain flag included, straight from the page, with a code editor for the payload. The topic subscribe view also now formats incoming messages as code, with a copy button. Thanks, @jbouwh!

How full is your network storage?

The Storage page in Settings has always shown which network shares you have connected, like a NAS for backupsHome Assistant has built-in functionality to create files containing a copy of your configuration. This can be used to restore your Home Assistant as well as migrate to a new system. The backup feature is available for all installation types. [Learn more] or media, but not how full each one actually was, so there was no early warning before one quietly ran out of room.

Each active mount now gets a small usage bar and a “{used} of {total} used” line. Rows appear immediately, and each bar fills in as soon as its own request comes back, so one slow or unreachable share never holds up the rest of the list. The bar also changes color as it fills, amber past 85% used and red past 95%, so you get a heads-up before you actually run out of space. A mount that’s currently unreachable just shows no usage bar; it already gets its own warning treatment.

Screenshot of the Network storage section on the Storage page, listing three network mounts with usage bars, one of them nearly full and shown in red.

Thanks to @MindFreeze and @silamon for keeping an eye on this!

Patch releases

We will also release patch releases for Home Assistant 2026.9 in September. These patch releases only contain bug fixes. Our goal is to release a patch release once a week, aiming for Friday.

2026.9.1 - September 5

2026.9.2 - September 11

2026.9.3 - September 18

2026.9.4 - September 27

Need help? Join the community

Home Assistant has a great community of users who are all more than willing to help each other out. So, join us!

Our very active Discord chat server is an excellent place to be, and don’t forget to join our amazing forums.

Found a bug or issue? Please report it in our issue tracker to get it fixed! Or check our help page for guidance on more places you can go.

Are you more into email? Sign up for the Open Home Foundation Newsletter to get the latest news about features, things happening in our community, and other projects that support the Open Home straight into your inbox.

Backward-incompatible changes

We do our best to avoid making changes to existing functionality that might unexpectedly impact your Home Assistant installation. Unfortunately, sometimes it is inevitable.

We always make sure to document these changes to make the transition as easy as possible for you. This release has the following backward-incompatible changes:

Flexit Nordic (BACnet)

The deprecated fireplace mode switch entity has been removed. If you have automationsAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] or scriptsA script is a saved list of steps that runs when you start it, for example, from a dashboard, with Assist, or from an automation. Unlike an automation, a script has no triggers, so it doesn’t start by itself. [Learn more] that use switch.<device>_fireplace_mode, use the climate.set_preset_mode action on the Flexit climate entity with preset_mode: fireplace instead.

(@magnusoverli - #179272) (Flexit Nordic (BACnet) documentation)

KNX

KNX exposes no longer send an entity’s first value to the KNX bus. Previously, this depended on timing: if the entity already had a value when the expose was set up, nothing was sent, but if the value arrived later, it was sent to the bus right away.

Now, both cases behave the same way. The first value is adopted locally without sending a telegram, but stays available for read requests and periodic sending. Later value changes are still sent as before.

To send the first value right away, turn on Send on initialization for the expose in the KNX panel, or set send_on_init: true in your YAML configuration.

(@Kolbi - #178793) (KNX documentation)

LLM APIs

LLM tool names are now prefixed with the domain of the integration that offers them. For example, GetLiveContext becomes homeassistant__GetLiveContext and HassTurnOn becomes intent__HassTurnOn. If you have a custom prompt that names a tool directly, update it to use the new prefixed name.

(@balloob - #179938)

Persistent Notification

Updating a persistent notification that already exists now triggers an update_type of updated instead of added. If you have an automationAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] that triggers on an update_type of added to catch every new or changed notification, add updated to the list of types it triggers on.

(@davidlang42 - #171067) (Persistent Notification documentation)

UniFi Protect

The smart detection switches (for example Detections: Person, Detections: Vehicle, and the audio alarm toggles) are no longer hidden while recording is disabled. They now stay available and follow the same public API as the other camera configuration switches. Their entity IDs and what happens when you toggle them are unchanged.

(@RaHehl - #174963) (UniFi Protect documentation)

UniFi Protect 7.2.105 or newer is now required. On an older version, the integration stops setting up and tells you to update. Update UniFi Protect, then reloadApplies the changes made to Home Assistant configuration files. Changes are normally automatically updated. However, changes made outside of the front end will not be reflected in Home Assistant and require a reload. the integration.

(@RaHehl - #179954) (UniFi Protect documentation)

Update

Installing an updateAn update entity is an entity that indicates if an update is available for a device or service. [Learn more], skipping an update, and clearing a skipped update now require an administrator account. These are configuration-level actions, so they are now restricted to admins, like other sensitive actions in Home Assistant.

AutomationsAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] are not affected, because they run without a user context. A scriptA script is a saved list of steps that runs when you start it, for example, from a dashboard, with Assist, or from an automation. Unlike an automation, a script has no triggers, so it doesn’t start by itself. [Learn more] runs in the context of the user who started it, so a script that installs or skips an update now fails when a non-admin user starts it. Trigger it from an automation instead, or start it as an admin.

(@balloob - #178232) (Update documentation)

Vacuum

The deprecated battery_level property has been removed from the base vacuum entity. All core vacuum integrations were already migrated in Home Assistant 2026.8. If a custom integration still sets this property, it no longer reports a battery level; add a separate battery sensor instead.

(@gjohansson-ST - #175682) (Vacuum documentation)

Z-Wave JS

The Z-Wave actions to manage lock users and credentials (set_user, delete_user, delete_all_users, set_credential, delete_credential, and delete_all_credentials) now require an administrator account.

(@balloob - #177300) (Z-Wave JS documentation)

If you are a custom integration developer and want to learn about changes and new features available for your integration: Be sure to follow our developer blog. The following changes are the most notable for this release:

All changes

Of course, there is a lot more in this release. You can find a list of all changes made here: Full changelog for Home Assistant Core 2026.9.

Anonymous and open to all: The Home Assistant survey dataset

Our why as an organization is clear: to fight for privacy, choice, and sustainability for smart homes, and for every person who lives in one. But who does live in them?

In December 2024, we launched the first Home Assistant survey to find out. Our goal was simple: to make Home Assistant more inclusive and approachable by listening directly to the diverse community of people who use it.

In the spirit of building in the open, today we’re thrilled to announce the anonymized results of that survey are now freely available. In this post, we’ll run you through what the survey covered, why and how we’re publishing this data, what the data is not (read: identifiable), how we’re using this information to improve what we do, and opportunities for further understanding and research.

2026.8: Approachable by design

Tip

Don’t forget to join our release party live stream on YouTube on August 5, 2026, at 20:00 GMT / 12:00 PT / 21:00 CET!

Tip

ESPHome Starter Kit launch party livestream on August 12 There’s more to look forward to next week: the ESPHome Starter Kit is launching, and you’re invited to the official launch party! 🚀 Join the ESPHome team and their partners at Apollo Automation on the ESPHome YouTube channel on August 12 at 21:00 CEST. Familiar faces are dropping by to celebrate lift-off, too: Reed from Smart Home Solver, Simon from Simon Says Home Assistant, and Gavin from HomeTech.fm.

Home Assistant 2026.8! 🎉

Hi, I’m Ashley, the Technical Program Manager at the Open Home Foundation. With Frenck taking a well-deserved break, Bram and I are teaming up to handle things this time around.

We have been working on a lot over the past few weeks, and I’m excited to share some of what we have done for this release!

If there’s one thread tying this release together, it’s a direction we care about: making Home Assistant something you don’t need to be technical to use. This release is another step along that path.

Enjoy the release!

- Ashley

A huge thank you to all the contributors who made this release possible! And a special shout-out to @frenck and @bramkragten who helped write the release notes this release. Also, @piitaya, @RaHehl, and @farmio for putting effort into tweaking its contents. Thanks to them, these release notes are in great shape. ❤️

Making Home Assistant more approachable

One of the directions we care about most for Home Assistant is making it simpler to pick up and use, without compromising on capability. It’s something we have been working toward for a long time, and it runs through our roadmap and goals for this year. We cannot do it overnight though, so we keep listening to your feedback to make sure we are fixing the things that actually get in your way. If there is something you would like to see, we would love for you to weigh in. Every comment helps shape what comes next.

This release brings together some of that work. It may never be truly finished, and that is fine, but it is something we hold close: the more people who can use Home Assistant, whatever their technical ability, the better.

The same Home Assistant, minus the magic number

Ever wondered why the address for your own home has a random number stuck on the end? So did we. For years, reaching Home Assistant meant remembering to add :8123 to the address, a little piece of technical trivia that everyone simply had to learn. This release starts to put that right.

New installations of “Home Assistant OS”Home Assistant OS, the Home Assistant Operating System, is an embedded, minimalistic, operating system designed to run the Home Assistant ecosystem on single board computers (like the Raspberry Pi) or Virtual Machines. It includes Home Assistant Core, the Home Assistant Supervisor, and supports apps. Home Assistant Supervisor keeps it up to date, removing the need for you to manage an operating system. Home Assistant Operating System is the recommended installation type for most users. now use a normal web address by default, with no number to add on the end. You reach your home the same way you reach any website. Nothing extra to remember, nothing extra to type.

Your current setup keeps working

If you are already running Home Assistant, nothing changes and there is nothing you need to do. This only affects new installations of Home Assistant OS. Your existing installation is completely unchanged, keeps the exact port it has always used, and keeps working just as before. If everything works today, the simplest thing is to leave it exactly as it is.

Want to change the port? We’ve got you covered

You do not have to change anything, but if you would like the cleaner address, or need to change the port for another reason, you can now do it yourself from the interface. The same screen also holds a few more options, like choosing which network connection Home Assistant listens on and setting trusted proxies, for the setups that need them.

Screenshot of the web server settings in the Home Assistant interface, showing options for the port, the network connection to listen on, and trusted proxies.

Changing something as fundamental as the port your home lives on can feel nerve-wracking, so we made it hard to get stuck. When you change the web server settings, Home Assistant applies the new configuration and then waits for you to confirm everything still works. If you do not confirm within five minutes, it assumes something went wrong, puts your previous settings back, and restarts. And if the new settings cannot be applied at all, it falls back right away. So if you ever lock yourself out with the wrong setting, you do not have to do anything: wait a few minutes, and Home Assistant returns you to where you were.

Note

One thing to keep in mind: anything that reaches Home Assistant using the old address may need updating to match the new port, such as your bookmarks or other services and tools you have connected, including the mobile app. If your setup works today, that is a good reason to leave it as it is.

Screenshot of the confirmation prompt shown after changing the web server settings, asking you to confirm everything still works before the new settings are kept.

What this means for YAML

If you currently set up the web server in YAMLYAML is a human-readable data serialization language. It is used to store and transmit data in a structured format. In Home Assistant, YAML is used for configuration, for example in the configuration.yaml or automations.yaml files. [Learn more], you do not need to change anything. The first time you start Home Assistant after updating, your settings move into the interface for you, and you manage them there from then on. You might also see a repair appear, just to let you know your settings were imported; it can point you to tidying up the old YAML if you like, but nothing breaks either way.

Less “advanced”, more approachable

A word comes up around Home Assistant a lot: advanced. But what does it actually mean, and who gets to decide what counts as advanced and what does not? Too often it is a label that quietly tells people a feature is not for them. We want Home Assistant to be approachable for everyone, so this release removes some of that language.

Describing the feature, not the user

The clearest place to start is the words themselves. Labels like advanced and expert were dotted around Home Assistant. Words like these can be discouraging: they suggest a feature is not for you and steer you away from trying it, even when it is perfectly approachable. This release removes that wording in around 43 places, across the app, its documentation, and the companion apps. None of these features changed. Instead of rating your skill, the wording now simply describes what each one does.

A big thank you to everyone who helped comb through and clean this up! 👏

Just Tools, no developer required

In the same spirit, Developer Tools is now simply Tools. It has always been a useful spot for everyone, whether you are checking the stateThe state holds the information of interest of an entity, for example, if a light is on or off. Each entity has exactly one state and the state only holds one value at a time. However, entities can store attributes related to that state such as brightness, color, or a unit of measurement. [Learn more] of your “devices”A device is a model representing a physical or logical unit that contains entities., testing a templateA template is an automation definition that can include variables for the action or data from the trigger values. This allows automations to generate dynamic actions. [Learn more], or reloading part of your setup, and you never needed to be a developer to use it. The shorter name matches how people actually use it, and feels a little friendlier to open.

Home Assistant Cloud, now easier to explore

Home Assistant Cloud by Nabu Casa is how many people add remote access, fast and private voice, encrypted backupsHome Assistant has built-in functionality to create files containing a copy of your configuration. This can be used to restore your Home Assistant as well as migrate to a new system. The backup feature is available for all installation types. [Learn more], and more to their home, all while supporting the project at the same time. Until now, everything it offers lived on a single long page of switches and settings. This release gives that page a proper redesign.

The main page is now a clean overview. Each feature (remote access, backups, voice assistants, the companion app, and more) has its own space, so you can see what you have turned on at a glance. The settings for each one move onto their own page, which keeps the overview tidy and makes every feature easier to understand on its own.

The bigger change is for anyone just getting started. There is now a guided setup that walks you through Home Assistant Cloud step by step, instead of leaving you to find your way around a wall of options. If it is not a good moment, you can put it off and pick it up again later.

Screenshot of the top of the redesigned Home Assistant Cloud page, showing the overview with each cloud feature in its own space. Screenshot of the lower part of the redesigned Home Assistant Cloud page, showing more cloud features and their settings.

A big thank you to @klejejs for this redesign!

Your entity IDs, your choice

Behind every deviceA device is a model representing a physical or logical unit that contains entities. and sensorSensors return information about a thing, for instance the level of water in a tank. [Learn more] sits an entity ID, a short name such as light.kitchen_ceiling that your automationsAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more], scriptsA script is a saved list of steps that runs when you start it, for example, from a dashboard, with Assist, or from an automation. Unlike an automation, a script has no triggers, so it doesn’t start by itself. [Learn more], and dashboards use to refer to it. Most of the time they look after themselves. But when you do want them neat and consistent, you should be the one deciding how they read.

Some earlier work looked at building entity IDs automatically from the areaAn area in Home Assistant is a logical grouping of devices and entities that represents a room or space in your home, such as the living room, kitchen, or garage. [Learn more] a device belongs to. Your feedback told us this suited some people but not everyone. So this release takes a more flexible route and puts you in charge: you can rename an entity ID yourself, and control how it is ordered, so your entitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] follow whatever naming pattern makes sense to you.

Screen recording showing how to rename an entity ID and change how it is ordered in the Home Assistant interface.

Thanks to @arturpragacz and @piitaya for this work.

A cleaner way to handle your devices

Home Assistant is changing how it keeps track of your devices behind the scenes. Until now, if one physical deviceA device is a model representing a physical or logical unit that contains entities. was set up through two different integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more], Home Assistant merged them into a single device. Details that can only hold one value, such as the model or serial number, could then clash. From this release, each integration keeps its own device entry, so nothing gets collapsed together.

When you update, any devices that were merged this way are separated automatically, and their entitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] move to the right device for you. Most people will not notice a thing. In the rarer cases where a device was set up through more than one integration, you might see it appear twice, once per integration, and Home Assistant may raise a repair to let you know.

There is nothing you need to do. Your automationsAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] and scriptsA script is a saved list of steps that runs when you start it, for example, from a dashboard, with Assist, or from an automation. Unlike an automation, a script has no triggers, so it doesn’t start by itself. [Learn more] keep working, because Home Assistant still sends actions to the right devices after the split. The only things that might need a second look are automations that point to a device by its ID directly, or the occasional unusual setup. If a repair appears, just follow it.

This is groundwork for more flexible device handling we are building toward over the coming months, so think of it as a step along the way rather than the finished picture.

If you build a custom integrationA custom integration is an integration that has been created by someone from the Home Assistant community and has been published for others to use at their own risk. Custom integrations are not supported by the Home Assistant project. They are not reviewed or tested by the Home Assistant development team and thus may negatively impact the stability of your Home Assistant instance. An example of a custom integration is the Spook integration., most need no changes at all. If yours works with device details directly, the developer blog walks through what changed. There is no rush: the previous approach keeps working for now, so you have plenty of time.

Thanks to @emontnemery for this work.

We can’t stop adding triggers and conditions

Last release, purpose-specific triggers and conditions became the friendlier way to build automationsAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more]: you describe the moment you care about, like when the front door opens, instead of piecing it together from the technical parts underneath. This release adds two more of them.

Vibration now has conditions to match its triggers. On top of reacting the moment vibration starts or stops, you can check whether something is vibrating (or not) as part of a bigger automation, for example, only sending a “laundry is done” message once the washing machine has actually stopped shaking.

Moon gains a trigger and matching conditions. You can start an automation the moment the moon enters a new phase, or check the current phase as part of a bigger automation. Point it at the full moon, the new moon, or any change of phase, and let your home take it from there, whether that is mood lighting, a reminder, or just a bit of fun. 🌙

Thanks, @nielsrowinbik!

Integrations

Thanks to our community for keeping pace with the new integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] and improvements to existing ones! You’re all awesome 🥰

New integrations

We welcome the following new integrations in this release:

  • Dyson Infrared, added by @elax46
    Control your Dyson fans through any infrared transmitter you already have set up in Home Assistant. Because the connection only goes one way, Home Assistant shows the last command you sent rather than the fan’s live state.

  • Fuelprices.dk, added by @MTrab
    Track current fuel prices from Danish fuel companies in Home Assistant. The integration pulls prices from the Fuelprices.dk service and creates a sensor for each product you select at a station, so you can watch prices and build automations around them.

  • Gatus, added by @TN-1, launching at 🥈 silver quality
    Bring the health of your services into Home Assistant from your Gatus monitoring instance. Each monitored endpoint shows up as a binary sensorA binary sensor is an entity that reports one of two mutually exclusive states, on or off. The device class determines how those states are labeled in the UI. For example, open/closed for a door or detected/clear for motion. [Learn more], so you can put service status on a dashboard or trigger automations when something goes down or comes back up.

  • GeoSphere Austria Warnings, added by @tklecka
    Bring official weather warnings for Austria into Home Assistant from GeoSphere Austria (formerly ZAMG), the national weather service. Warnings are issued per municipality and cover events like storms, heavy rain, snow, black ice, thunderstorms, heat, and cold, so you can get notified or trigger automations when the warning level rises.

  • Google Health, added by @allenporter
    Bring your health and fitness data into Home Assistant from Google Health and the Fitbit Web API. After you connect your Google account, you get sensors such as steps, distance, weight, and resting heart rate, and it can run alongside the existing Fitbit integration.

  • Harbor Sleep, added by @Lash-L
    Keep an eye on your Harbor Sleep baby monitor from Home Assistant. The integration connects to the device on your local network and exposes sensors like temperature, Wi-Fi strength, and stream quality.

  • Harman Luxury Audio, added by @sbesh91
    Control network streamers built on the Harman Luxury Audio platform, such as the Arcam Radia ST5 and ST60, and equivalent JBL and Mark Levinson streamers. The integration talks to the device directly on your local network, so no cloud account is required.

  • Karakeep, added by @sli-cka
    Connect your self-hosted Karakeep bookmarking service to Home Assistant and keep track of your bookmark statistics. Karakeep helps you save, organize, and tag links, notes, and images, and this integration surfaces those numbers as sensors.

  • LED Infrared, added by @tr4nt0r
    Control LED lights through any infrared emitter you already have set up in Home Assistant. It supports many branded and unbranded bulbs and strip controllers that use generic infrared remotes. Communication is one-way, so the integration uses assumed states.

  • LiteLLM, added by @luismalves
    Use a LiteLLM proxy as a conversation agent in Home Assistant. LiteLLM puts a single OpenAI-compatible API in front of many model providers, so you can reach almost any model through one endpoint, hosted or self-hosted. Home Assistant creates a conversation agent for each model you configure.

  • llama.cpp, added by @allenporter
    Use a local llama.cpp server, or any OpenAI-compatible endpoint, as a conversation agent in Home Assistant. You can set up several agents, each with its own model and instructions, and keep everything running on your own hardware.

  • Lyngdorf, added by @fishloa, launching at 🥈 silver quality
    Control Lyngdorf audio processors and amplifiers from Home Assistant, including power, volume, source selection, and sound modes. The integration keeps in sync with the device over your local network.

  • Midea, added by @chemelli74
    Bring devices that use the Midea protocol, such as air conditioners and air purifiers, into Home Assistant. The integration provides information on the connected devices and lets you control their main features.

  • NeoPool, added by @svasek, launching at 🥈 silver quality
    Monitor and manage pool controllers built on the NeoPool system, originally from Sugar Valley and sold under many brands like Hidrolife, Aquarite, and Oxilife. It talks to your controller locally over Modbus TCP, exposing water chemistry, filtration, and hydrolysis data with no cloud needed.

  • ScorpionTrack, added by @Herbertmt978, launching at 🥈 silver quality
    Follow vehicles shared through a public ScorpionTrack location-share link on your Home Assistant map. The integration reads the shared vehicle feed and creates a device trackerDevice trackers are used to track the presence, or location, of a device. [Learn more] for each vehicle, without needing your private account credentials.

Noteworthy improvements to existing integrations

It is not just new integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] that have been added; existing ones keep getting better too. Here are some of the noteworthy improvements this release:

  • Shelly now supports Enhanced Security, the HTTPS-only mode on firmware 2.0 for gen2 and newer devices, and added support for Shelly circuit breakers, with on/off control plus output-state and safety-switch sensors. Thanks, @bieniu and @thecode!
  • Reolink gained pre-siren entities and a motion device class on its AI-detection binary sensors. Thanks, @starkillerOG and @abmantis!
  • Overkiz added window and tilt binary sensors for contact sensors, boost and drying-duration numbers for the Atlantic electrical towel dryer, and support for the Somfy Thermostat PRO. Thanks, @iMicknl!
  • SwitchBot added support for the Candle Warmer Lamp and the RGBIC Neon Rope Light, plus fan and select controls for the Standing Fan. Thanks, @Onero-testdev!
  • Roborock got plenty of love for the Q10, with a do-not-disturb switch, switch entities, a map image, and a volume control. Thanks, @lboue and @tubededentifrice!
  • Whirlpool added an oven light, an oven cook-mode select, and an oven target-temperature number. Thanks, @matthewdias and @bdlcalvin!
  • MQTT gained an infrared platform, so you can send infrared commands over MQTT. Thanks, @jbouwh!
  • KNX got a whole set of improvements. Button and notify entities can now be configured from the interface, the KNX panel gained a Send telegram dialog (keyboard shortcut s), plus a datapoint type (DPT) reference and a device view for your project data. On top of that, all KNX entities now restore their state after a reload or restart. Thanks, @farmio!
  • Enphase Envoy added ACB battery sensors, along with sleep and wake controls. Thanks, @genestealer!
  • MELCloud gained on/off control, an operation-mode select, and a flow-temperature number for air-to-water heat pump zones. Thanks, @imilchev!
  • MELCloud Home added energy-consumption reporting and a number platform. Thanks, @erwindouna!
  • Portainer added an update platform and container health status. Thanks, @erwindouna!
  • Mikrotik gained sensor, button, and update platforms. Thanks, @chemelli74!
  • Imou added switch and sensor platforms. Thanks, @Imou-OpenPlatform!
  • Fronius added a binary sensor for backup mode. Thanks, @farmio!
  • OpenAI Conversation now supports GPT-5.6. Thanks, @Shulyaka!
  • WiiM added multi-room grouping and metadata synchronization. Thanks, @Linkplay2020!
  • SMLIGHT added Bluetooth proxy support and an infrared receiver for SMLIGHT Ultima devices. Thanks, @tl-sl!
  • Vizio added command aliases for its remote. Thanks, @raman325!
  • Tesla Wall Connector added an option to switch total power calculation between single-phase / split-phase and three-phase electrical service, along with vehicle current and Wi-Fi signal sensors. Thanks, @sarabveer!
  • Teslemetry added control for seat coolers. Thanks, @Bre77!
  • Tessie added a navigation-destination text entity. Thanks, @Mattheinrichs!
  • Gardena Bluetooth added tank pressure and water temperature sensors. Thanks, @icereed!
  • Duco added ventilation temperature sensors. Thanks, @ronaldvdmeer!
  • Victron BLE added support for Orion XS and inverter devices. Thanks, @rajlaud!
  • OMIE added an action to get prices for a specific date. Thanks, @abmantis!
  • Ecowitt added soil conductivity sensor support. Thanks, @GSzabados!
  • Steam added an image platform, plus new Last online, Level, and Now playing sensors. Thanks, @tr4nt0r!
  • LG Infrared added support for LG air conditioners. Thanks, @Dr-Blank!
  • UniFi Protect now supports the USL smart sensors (USL Entry, USL Environmental, and USL GlassBreak) on UniFi Protect 7.2 and newer, and cameras gained Motion detection, Smart detection, and Sound detection event entities that fire for any detection the camera reports, such as a person, a package, or barking, with the detected type as an attribute. Thanks, @RaHehl!

Integration quality scale achievements

One thing we are incredibly proud of in Home Assistant is our integration quality scale. This scale helps us and our contributors to ensure integrations are of high quality, maintainable, and provide the best possible user experience.

This release, we celebrate several integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] that have improved their quality scale:

This is a huge achievement for these integrations and their maintainers. The effort and dedication required to reach these quality levels is significant, as it involves extensive testing, documentation, error handling, and often complete rewrites of parts of the integration.

A big thank you to all the contributors involved! 👏

Now available to set up from the UI

While most integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] can be set up directly from the Home Assistant user interface, some were only available using YAML configuration. We keep moving more integrations to the UI, making them more accessible for everyone to set up and use.

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

Farewell to the following

Time for a little cleaning, and no, we did not wait for spring! The following “integrations”Integrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] are no longer available as of this release:

  • Permobil has been removed. Permobil deprecated the API it relied on, so the integration could no longer retrieve any data, and there is no replacement available.
  • Volvo On Call has been removed. If you have a supported Volvo, set up the newer Volvo integration instead.

Other noteworthy changes

There are many more improvements in this release; here are some of the other noteworthy changes:

Tell us how setup went

If you have set up Home Assistant recently, you might notice a short, optional survey asking how your first experience went. It is entirely up to you, and every response helps us make getting started smoother for the next person. Thank you to everyone who shares their thoughts! 💛

A roomier template editor

The template tool in Tools is where you try out “templates”A template is an automation definition that can include variables for the action or data from the trigger values. This allows automations to generate dynamic actions. [Learn more] and watch the result update as you type. This release gives it a more comfortable layout: the editor and the result now sit in a split view you can drag to resize, and you can switch between side by side and stacked, whichever suits what you are working on. Your choice is remembered for next time.

Thanks, @maartenla!

Taps that land where you mean them

On the picture elements card, a tap could trigger the element next to the one you meant, or hit nothing at all, and some elements could not be tapped. Taps now go to the nearest icon or label, so every element can be reached, and tapping a label’s text always triggers that label. Thanks, @RaHehl!

A combined battery level you can trust

If you track more than one battery in the energy dashboard, you can now give each one a capacity. The combined state of charge is then weighted by size, so a small full battery and a large empty one no longer average out to a misleading number. Batteries without a capacity set keep using the plain average, so nothing changes unless you want it to. Thanks, @MindFreeze!

Search your media

Browsing for the right song, photo, or film used to mean clicking through folder after folder. Now, integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] that provide media can offer search right in the media browser, so you type what you are looking for and jump straight to it.

What you can search depends on the media source. Immich, for example, gained a smart search that finds photos by what is actually in them rather than by their filename, and Overseerr lets you search for and request movies and shows without leaving Home Assistant.

Thanks, @zweckj, @mib1185, and @felixschndr!

Find your favorite cards faster

Your most-used cards are now easier to find. In the card picker’s “By Card” tab, you can now mark the cards you use most as favorites using the icon in the corner of each card. Favorited cards float to the top of the section, so if you reach for the same card again and again while building similar dashboards, it’s always right there waiting for you. Tap the icon again to remove a card from your favorites.

Screenshot of the card picker's By Card tab, with the Tile, Area, and Entities cards marked as favorites with a star icon.

Thanks, @piitaya, @laupalombi, and everyone who suggested this at a Release Party!

Z-Wave lock credentials, properly managed

Managing who can unlock your Z-Wave lock just got a lot more capable. Powered by Z-Wave JS’s new Access Control API, the Z-Wave JS app 1.6.0 brings a heavily revised interface: every supported lock now gets a dedicated Access Control tab. For now, this lives in Z-Wave JS UI rather than in the Z-Wave panel in Home Assistant.

The new Access Control tab in Z-Wave JS UI, showing users and their credentials Users, their credentials, and a full audit trail, all in one place.

Depending on what your lock supports, you can now give each user several credentials of more than one type, so the same person can have a PIN and a fingerprint, or multiple of both. New credentials can be learned on the lock itself: start the enrollment from the interface, then present the finger or type the PIN. There is also an audit log of every change, admin code management for locks that use one, and the ability to move credentials between users or delete them in bulk.

Update the Z-Wave JS app to 1.6.0 or later, then open Z-Wave JS UI to find the new tab. Thanks, @AlCalzone!

And a few more

There is even more packed into this release. Here are some of the other changes worth a mention:

  • Templates keep getting faster. Another round of “templates”A template is an automation definition that can include variables for the action or data from the trigger values. This allows automations to generate dynamic actions. [Learn more] performance work landed: templates with a numeric result are up to 40% faster, and templates used on dashboards can now be cached. Thanks, @frenck!
  • Template entities remember their state. Fan, coverCovers are devices such as blinds, garage doors, etc that can be opened and closed and optionally set to a specific position. [Learn more], and device trackerDevice trackers are used to track the presence, or location, of a device. [Learn more] template entities now restore their previous state after a restart, so they pick up right where they left off. Thanks, @Petro31!
  • Search finds more of what is connected. When you search or open a device or entity, Home Assistant now digs deeper into what is related, so scenes, scripts, groups, the people behind a person entity, and anything sharing a label or area all show up where you would expect them. It is a small change that makes it much easier to see how your setup fits together. Thanks, @frenck!
  • A reboot heads-up on Home Assistant OS. The system updateAn update entity is an entity that indicates if an update is available for a device or service. [Learn more] entity now lets you know when an update needs a reboot to finish. Thanks, @mdegat01!
  • A new radon device class. Sensors and numbers can now be classified as radon, so radon measurements get the right units and display. Thanks, @abmantis!
  • Filter entities by manufacturer and model. The entity filter can now narrow entities by manufacturer, model, and model ID. Thanks, @Skaronator!
  • Ask Assist from quick search. You can now start an Assist command straight from quick search. Thanks, @timmo001!
  • A date on the clock card. The clock card can now show the date alongside the time. Thanks, @timmo001!
  • More from the Activity panel. The Activity panel gained a CSV download and a clear-and-reset action. Thanks, @karwosts and @timmo001!

Patch releases

We will also release patch releases for Home Assistant 2026.8 in August. These patch releases only contain bug fixes. Our goal is to release a patch release once a week, aiming for Friday.

2026.8.1 - August 7

2026.8.2 - August 14

2026.8.3 - August 21

Need help? Join the community

Home Assistant has a great community of users who are all more than willing to help each other out. So, join us!

Our very active Discord chat server is an excellent place to be, and don’t forget to join our amazing forums.

Found a bug or issue? Please report it in our issue tracker to get it fixed! Or check our help page for guidance on more places you can go.

Are you more into email? Sign up for the Open Home Foundation Newsletter to get the latest news about features, things happening in our community, and other projects that support the Open Home straight into your inbox.

If you would like to wear your support: the Open Home Foundation store just added new T-shirts featuring ESPHome, Music Assistant, and a fresh Home Assistant design, all in classic black (or Dark Mode, if you prefer!). They are versatile, built to last, and best of all, every purchase helps fund the foundation’s work. Grab yours from the store.

Three black T-shirts from the Open Home Foundation store, featuring the ESPHome, Music Assistant, and Home Assistant designs.

Backward-incompatible changes

We do our best to avoid making changes to existing functionality that might unexpectedly impact your Home Assistant installation. Unfortunately, sometimes it is inevitable.

We always make sure to document these changes to make the transition as easy as possible for you. This release has the following backward-incompatible changes:

AirNow

The station radius option has been removed. The 2026 AirNow API no longer uses a distance parameter, so the radius had no effect on which reporting station was used. Existing entries are updated automatically, and any radius you had set is discarded. No action is needed.

(@derekcentrico - #176740) (AirNow documentation)

Gardena Bluetooth

The valve’s activation_reason sensor now reports a fixed set of values instead of free-form text. If you have automationsAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more], scriptsA script is a saved list of steps that runs when you start it, for example, from a dashboard, with Assist, or from an automation. Unlike an automation, a script has no triggers, so it doesn’t start by itself. [Learn more], or “templates”A template is an automation definition that can include variables for the action or data from the trigger values. This allows automations to generate dynamic actions. [Learn more] that match on the old text values, update them to match the new ones.

(@elupus - #177187)

Edifier Infrared

If you set up the Edifier Infrared integration for the R2000DB or R2730DB speakers, some buttons were mapped to the wrong infrared codes (on the R2730DB, power and mute were swapped). The mappings are now corrected and migrated automatically. If you built automationsAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] or scriptsA script is a saved list of steps that runs when you start it, for example, from a dashboard, with Assist, or from an automation. Unlike an automation, a script has no triggers, so it doesn’t start by itself. [Learn more] around the old, incorrect buttons, update them to match.

(@abmantis - #177472) (Edifier Infrared documentation)

Ohme

The Ohme energy sensor has been removed. It reported an estimate of the energy stored in the car’s battery rather than the energy delivered by the charger, which caused confusing jumps in the energy dashboard, and the vendor’s API no longer provides a useful value.

If you tracked this sensor, use an Integration - Riemann sum helperA helper is a virtual entity you create inside Home Assistant. It is not backed by a physical device. Helpers store values, track state, or do calculations that your automations and dashboards need. [Learn more] on a power sensor to estimate the energy instead.

(@dan-r - #174664) (Ohme documentation)

Paperless-ngx

Paperless-ngx now requires a newer version of your Paperless-ngx server. The minimum supported server version is raised to 2.19, which also restores compatibility with Paperless-ngx 3.0. If your Paperless-ngx server is on version 2.18 or older, update it before you update Home Assistant.

(@IngmarStein - #176889) (Paperless-ngx documentation)

Robot vacuums

The deprecated battery_level property has been removed from the vacuum entitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] of several integrations. If you use a robot vacuum’s battery level in an automationAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more], scriptA script is a saved list of steps that runs when you start it, for example, from a dashboard, with Assist, or from an automation. Unlike an automation, a script has no triggers, so it doesn’t start by itself. [Learn more], or on a dashboard, use the vacuum’s battery sensor instead.

This affects the following integrations:

(@gjohansson-ST - #175681, #175684, #175685, #175686, #175687, #175688, #175691, #175764)

ScreenLogic

The option to configure the pollingData polling is the process of querying a device or service at regular intervals to check for updates or retrieve data. By defining a custom polling interval, you can control how frequently your system checks for new data, which can help optimize performance and reduce unnecessary network traffic. [Learn more] interval has been removed from ScreenLogic. Home Assistant now polls the integration at a fixed interval. If you need a different update frequency, you can set your own polling interval or trigger an update with the homeassistant.update_entity action.

(@Pinball3D - #175576) (ScreenLogic documentation)

UniFi Protect

Support for UniFi Protect AI Port devices has been removed. These devices only ever exposed diagnostic sensors, all disabled by default, and are not part of the UniFi Protect public API the integration is moving to. The AI Port device and its sensors are removed automatically when you update. You can still configure the AI Port directly in UniFi Protect.

(@RaHehl - #174378) (UniFi Protect documentation)

Detection scores are no longer available. The detection binary sensors (motion, person, vehicle, animal, and the smart-audio alarm sensors) now take their state from the UniFi Protect public API, which carries no per-event score, so their event_score attribute is gone and automations that filter on it need another condition. The event id and the detected types moved to the new Motion detection, Smart detection, and Sound detection event entities.

(@RaHehl - #174948) (UniFi Protect documentation)

UniFi Protect 7.1 or newer is now required. On an older console the integration reports that the version is too old instead of setting up. Update UniFi Protect to 7.1 or newer to keep using it.

(@RaHehl - #177620) (UniFi Protect documentation)

Volvo On Call

The Volvo On Call integration has been removed. If you have a supported Volvo, set up the newer Volvo integration instead.

(@gjohansson-ST - #175677)

If you are a custom integration developer and want to learn about changes and new features available for your integration: Be sure to follow our developer blog. The following changes are the most notable for this release:

All changes

Of course, there is a lot more in this release. You can find a list of all changes made here: Full changelog for Home Assistant Core 2026.8.

A big win for Android interoperability

Something big just happened. As the Open Home Foundation’s Android developer for Home Assistant, I was invited by the European Commission to consult on Android interoperability. On July 16, 2026, the Commission adopted a decision requiring Alphabet to open up eleven Android features — including always-on wake word detection, ambient sensor access, and screen automation — to all assistants, on equal terms.

Making our web analytics open source with Plausible

The Open Home Foundation fights for privacy, choice, and sustainability. These principles are at the heart of everything we do, including how we handle website analytics. Our position is clear: we reject tools that track individuals across the web to monetize their data. Instead, we want aggregated, anonymized analytics that show how our websites are performing overall — without identifying who our visitors are, or compromising their privacy.

FireAvert joins Works with Home Assistant

FireAvert joins Works with Home Assistant

Sound the alarm, because Works with Home Assistant just welcomed our newest partner to the program: FireAvert! 🎉 Specialists in fire safety, FireAvert are on a mission to keep you and your home out of harm’s way. They bring the very first gas and electric appliance shutoff devices to the program, and with them, a whole lot of peace of mind.

Where there’s smoke, there’s FireAvert

As ex-firefighter Peter Thorpe knows too well, a moment of forgetfulness is all it takes for a kitchen to end up in flames. And after close to twenty years of service witnessing the same devastating scenario repeat itself, he knew something had to be done. So he founded FireAvert, launching with the Auto Stove Shutoff for electric stovetops.

The device was already gaining momentum before FireAvert’s pitch caught the attention of Shark Tank, and for good reason. They say there’s no smoke without fire, but years on the job taught Thorpe that in the kitchen, that isn’t always the case. Smoke can build well before a flame takes hold – and that’s the window FireAvert’s shutoff works in. By listening for your standard smoke alarm, the device automatically shuts off your stove when the alarm sounds – cutting the heat at the source before a fire can catch.

“Excited to see FireAvert join the Home Assistant community. Smart homes shouldn’t just be convenient – they should help keep families safer too. This is exactly the kind of innovation the ecosystem needs.”

- Chasen Tolbert, FireAvert

Since their launch, FireAvert’s range has expanded to include gas stove and small appliance shutoffs (think microwaves, air fryers, hot plates), so whatever’s most likely to be left on in your kitchen, there’s a shutoff for it. And with Z-Wave units now among them, it’s easier than ever to bring that protection straight into your Home Assistant setup.

On the same frequency

The FireAvert shutoffs joining the program run on Z-Wave. For anyone unfamiliar, here’s a quick rundown: Z-Wave is an open smart home protocol that allows your devices to talk to each other regardless of the brand, without locking you into one ecosystem. It’s also a mesh network, where each device relays signals for the others to extend coverage across your home, reinforcing your connection.

While Z-Wave wasn’t a part of FireAvert’s initial product line, since then we’ve been pleased to see the company prioritize local control by producing shutoff devices with the open standard, and certifying them with the Z-Wave Alliance. We first met the FireAvert team at a San Diego alliance meeting back in 2025, and it was clear from the get-go that we were on the same wavelength: driven to build open, interoperable smart home tech that doesn’t require a cloud to keep your home protected.

FireAvert automatic shutoffs for electric and gas stoves FireAvert automatic shutoffs for electric and gas stoves

Safe as houses

It’s important to note that FireAvert’s shutoffs don’t rely purely on Z-Wave to do their job, and they’ll keep protecting your kitchen even if your network drops out entirely. That kind of safety net is reassuring for anyone, but even more so for those with caring responsibilities or aging relatives to worry about.

Likewise, FireAvert’s shutoffs don’t depend on a battery to function: just plug your stove or small appliance into the shutoff device, and the device into your wall socket – and you’re all set. As long as your appliance has power, the shutoff is on duty. And FireAvert back up that dependability where it counts: all four devices come with a lifetime warranty, and are independently tested to CSA and UL standards – confirming the hardware meets strict, recognized electrical safety requirements.

Devices

Just like every device certified by the Works with Home Assistant program, FireAvert’s shutoffs have also been rigorously tested by our in-house team to ensure they are up to code with our core requirements of local control and privacy.

Check out the devices that made the grade:

But it’s not just about adding devices to a list – our community is the engine of everything we do, and by joining it FireAvert commits to providing long-term support to make certain their devices continue to work smoothly within your setup.

Building the brigade

While there are already certified water shutoff devices in the program, stove shutoffs are a first, bringing a brand-new category of safety tech to Home Assistant users. It’s exactly the kind of innovation we love to see: more ways for our community to manage their smart homes, on their own terms.

That expansion is core to what the Open Home Foundation – which operates the Works with Home Assistant program – is about: keeping smart homes local, private, and safe. If you’d like to see more safety-focused partners like FireAvert join the program, consider subscribing to Home Assistant Cloud or buying official hardware like the Home Assistant Connect ZWA-2. Every bit of support helps us expand and maintain the program for all ⚒️.

Geared up and ready to respond

Forged to protect the community, FireAvert are a natural match for ours. We’re thrilled to have them join the ranks, and excited for Home Assistant users to be able to add another line of defense for their smart homes, and the people and pets who live in them. Head to our certified device list to discover the full range of devices to safeguard your home.

FAQs

Q: If I have a device that is not listed under Works with Home Assistant does this mean it’s not supported?

A: No! It just means that it hasn’t gone through a testing schedule with our team or doesn’t fit the requirements of the program. It might function perfectly well but be added to the testing schedule later down the road, or it might work under a different connectivity type that we don’t currently test under the program.

Q: OK, so what’s the point of the Works with program?

A: It highlights the devices we know work well with Home Assistant and the brands that make a long-term commitment to keeping support for these devices going. The certification agreement specifies that the devices must have the functionality you would expect within Home Assistant, operate locally without the need for the cloud, and that they will continue to do so long term.

Q: How were these devices tested?

A: All devices in this list were tested using a standard Home Assistant Green Hub with the Home Assistant Connect ZWA-2 as the Z-Wave adapter and with our Z-Wave integration. If you have another hub/adapter/integration that’s not a problem but we test against these as they are the most effective way for our team to certify within our ecosystem.

Q: Will you be adding more FireAvert devices to the program?

A: Why not! We’re thrilled to foster a close relationship with the team at FireAvert to work together on any upcoming releases or add in further products that are not yet listed here.

IoTorero joins Works with Home Assistant

IoTorero joins Works with Home Assistant

The Works with Home Assistant program powers up this month as we welcome our new partner, IoTorero! 🎉 Experts in pre-flashed smart home hardware, IoTorero bring the very first ESPHome-ready smart plugs and relays to the program (and that’s not all).

IoTorero enters the ring

If you’ve spent any time browsing pre-flashed smart home tech online, there’s a good chance you’ve come across IoTorero. And if you haven’t, let us introduce you! Founded in 2020, the company (formerly Athom Technology) was tinkering with ESPHome right out of the gate. Their new name is a nod to the Internet of Things (IoT), but unlike standard IoT gadgets that stop working if your internet drops or a company closes its servers, IoTorero champion open source firmware.

Other smart devices run manufacturer-written software, which is tuned to work well with Home Assistant for certification to the program. IoTorero go a step further to make sure their tech is accessible for all: all seven of their certified devices are pre-flashed with ESPHome, meaning there’s no installation required – the devices will integrate into your Home Assistant setup straight out of the box. And because their devices are genuinely open, you can always tweak and customize them if you want to.

“Since inception in 2020, IoTorero (Athom Technology) has been dedicated to the research, development, and manufacturing of open source smart home hardware products. We provide Home Assistant users with high-quality devices pre-flashed with ESPHome firmware. By joining the Works with Home Assistant program, we ensure that customers can select and purchase our products with complete confidence.”

- Aiden Tang, CTO and Co-Founder, IoTorero

That same spirit of openness carried over to last year’s Community Day, where IoTorero donated a stack of samples for attendees to try – a gesture we loved to see, and one that speaks to how seriously they take supporting our community 💪. It shows up in their approach to code, too: IoTorero maintain a public GitHub repository of configs for all their devices, free for anyone to learn from or build on.

Speaking of community, the development of projects like ESPHome from the Open Home Foundation is supported by Home Assistant Cloud subscribers and anyone who purchases Home Assistant hardware. While all of IoTorero’s devices work locally, if you’re interested in remote access – for example to check your energy use or open the garage door from a distance – check out Home Assistant Cloud.

Right on (Io)Time

For anyone new to it, ESPHome is a powerful platform that allows smart home devices to operate completely locally via the chip inside, with no cloud required. Because IoTorero’s devices arrive pre-flashed, you get all that local power without having to learn how to build or compile firmware yourself. And it just got a major upgrade. The ESPHome team recently released a new UI and Device Builder, swapping the old code editor-inspired dashboard for a visual workspace that can suggest components and layouts as you build.

Since IoTorero’s devices arrive pre-flashed, there’s nothing to set up in advance: just connect them, and they’ll show up in Home Assistant like any other device, ready to control and automate from your normal dashboard. The ESPHome Device Builder is there if you ever want to go further: it allows you to do things like renaming a device or tweaking its config, without needing to touch any code… unless you want to. Whether you’re new to the arena or a seasoned pro, it means a lot less guesswork (and a lot more fun!).

Devices

Every device that earns Works with Home Assistant certification goes through our in-house testing process, checked against our core requirements of local control, privacy, and long-term support – and IoTorero meets that bar across the board. Their devices also carry the Made for ESPHome certification, a separate badging program and prerequisite for any ESPHome devices joining Works with Home Assistant.

Here’s the full list of IoTorero’s certified devices:

Sustainability is one of the Open Home Foundation’s core principles, and IoTorero’s ESP32-C3 plugs are a great example of what that looks like in practice. They turn an ordinary appliance into something smart and measurable, with all four regional variants monitoring voltage, current, power, and total consumption – making it easy to spot energy waste and cut your home’s carbon footprint, as well as your bill.

The Power Monitoring Mini Relay brings that same convenience to hardwired setups. At roughly the size of a matchbox, it’s small enough to tuck behind a wall switch or inside a cabinet, and it’s built for switch control, garage and appliance automation, and other local smart home workflows a standard plug can’t reach.

Proxy points

Another nifty feature across IoTorero’s devices is that they double as Bluetooth proxies. This means they pick up signals from nearby Bluetooth low-energy (BLE) devices and pass them on to Home Assistant, extending your Bluetooth range without having to buy an extra, dedicated device. The Open Home Foundation’s recent blog post, Proxy all the things: no device left behind, explains why this is so important: turning everyday hardware into a “bridge” for other devices means getting more out of what you already own, instead of buying something new for every job. And one less gadget to buy means one less device ending up as e-waste ♻️.

Old friends, new badge

As one of ESPHome’s earliest adopters, IoTorero have well and truly earned our formal badging, and we’re thrilled to bring their devices to the Home Assistant community – tested, certified, and ready to make the path from unboxing to automating that much smoother. Check out the full lineup of IoTorero’s devices, along with the full range of Works with Home Assistant-compatible tech over at our certified device list.

FAQs

Q: If I have a device that is not listed under Works with Home Assistant does this mean it’s not supported?

A: No! It just means that it hasn’t gone through a testing schedule with our team or doesn’t fit the requirements of the program. It might function perfectly well but be added to the testing schedule later down the road, or it might work under a different connectivity type that we don’t currently test under the program. We do not certify anything that relies on cloud control.

Q: OK, so what’s the point of the Works with program?

A: It highlights the devices we know work well with Home Assistant and the brands that make a long-term commitment to keeping support for these devices going. The certification agreement specifies that the devices must have the functionality you would expect within Home Assistant, operate locally without the need for cloud and that they will continue to do so long-term.

Q: How were these devices tested?

A: All devices in this list were tested using a standard Home Assistant Green as a hub and using the ESPHome integration. If you have a different set-up that’s not a problem, but we test against these as they are the most effective way for our team to certify within our ecosystem.

Q: Will you be adding more IoTorero devices to the program?

A: Why not! We’re thrilled to foster a close relationship with the team at IoTorero to work together on any upcoming releases or add in further products that are not yet listed here.

Companion app: Changing support for Apple platforms

Companion app: Changing support for Apple platforms

We’re updating which Apple platforms the Home Assistant Companion app supports, and because transparency is core to how we work, we want to be upfront about what’s changing.

Starting with version 2026.8.0 of the Companion app, we will no longer support iOS 15, watchOS 8, or macOS 11. The last supported version for these platforms will be 2026.7.1.

Here’s everything you need to know:

Why we’re making the change

At Home Assistant, we’re committed to helping you use your devices for the long haul. We know your hardware is something you rely on every day, which is why we try to keep the Companion app running on older devices for as long as possible. However, supporting older OS versions indefinitely comes at a cost, limiting our ability to adapt to modern technology.

From September this year, Apple’s developer tools will officially stop supporting watchOS 8 and macOS 11, making it technically difficult for us to keep building for them. With less than 1% of our users currently running these older OS versions, this update allows us to future-proof the Companion app for the vast majority of our community.

By focusing our efforts on current operating system versions, we can keep our codebase maintainable for the long term. This shift removes some long-standing constraints, since older OS versions had been limiting our ability to make UX, stability, and performance improvements, including adding features such as Apple Watch complications and more advanced widgets.

What this means for you

A recap of what’s changing:

  • The last Companion app update for these platforms will be version 2026.7.1.
  • After version 2026.7.1, the minimum supported versions for the Companion app will be iOS 16.4, watchOS 9, and macOS 12.

Importantly, this doesn’t mean your older iOS devices will become unusable. You can still control your home using the Home Assistant frontend in your device’s web browser, which remains fully supported and receives regular monthly updates.

The last compatible Companion app version (2026.7.1) will also remain available on the App Store, and the source code will stay accessible on GitHub for any users who want to compile the app themselves.

Looking ahead

This update means a stronger, more capable Companion app for everyone going forward, and it’s part of how we keep Home Assistant evolving. We appreciate your understanding and support through this change, and are looking forward to building what’s next.

2026.7: Automations that speak your language

Tip

Don’t forget to join our release party live stream on YouTube on July 1, 2026, at 20:00 GMT / 12:00 PT / 21:00 CET!

Home Assistant 2026.7! 🎉

This is one of those releases I’ve been looking forward to for a long time. My favorite by far is what we’ve done with automations. Purpose-specific triggers and conditions graduate from Labs and become the new default for everyone. 🎉

It comes down to something we’ve been chasing for years: more power, less complexity. Instead of starting from Home Assistant’s internals, which entity, which state, which kind of trigger, you start from what you actually want your home to do. When the bedroom drops below 18°C, turn on the heating. That’s it. No technical traps, no quirks to memorize. And because integrations can teach the automation engine their own triggers and conditions, it only gets better from here. All of it right there in our beautiful user interface.

The nice thing is, nothing breaks. All your existing automations keep working, worry-free. We’ve also written tons of great documentation explaining every single trigger, condition, and action, with examples to learn from. And if you’re one of those people who prefers writing automations in YAML instead of the UI, you’re in for an amazing experience too. User experience is not a synonym for “the UI”. YAML users deserve good user experience too.

But honestly? I’ve got a second favorite this release, and that surprised me a little. Activity, what many of you still know as the logbook, has been rebuilt into a slick and clean timeline. 😍 It reads top to bottom like a feed, groups entries by day, and finally speaks the same language as the rest of Home Assistant. I keep opening it just to look at it.

And that’s just the start. There’s a new update-all button, dedicated panels for infrared and radio frequency, an overhauled ZHA Zigbee device management, and 10 new integrations from our community.

One more thing before you dive in: the Open Home Foundation is exhibiting at IFA Berlin for the first time, from September 4 to 8, 2026. We’d love to meet you there, so come say hello. There’s also a community meetup on Sunday, September 6, and everyone’s welcome. You can read all about it here.

Enjoy the release!

../Frenck

A huge thank you to all the contributors who made this release possible! And a special shout-out to @piitaya, @sairon, and @agners who helped write the release notes this release. Thanks to them, these release notes are in great shape. ❤️

Creating automations just became easier, natural and more powerful

This is, hands down, one of the biggest and best changes we’ve made to the automation editor in years. It has been roughly eight months in the making, built and refined release after release by a lot of people, and shaped by a mountain of your feedback along the way. As of this release, it is here for everyone, and we could not be more excited to finally hand it over.

Why are we this excited? Because automations have always asked you to meet Home Assistant halfway. Some people still talk about it like you need YAML, a coding background, and a free evening just to automate a light. That hasn’t been true for a while, and this release takes the biggest step yet toward closing that gap for good.

Back in Home Assistant 2025.12, we introduced purpose-specific triggers and conditions in Settings > System > Labs. Every release since has added more of them and polished the experience. This release, they graduate: this new way of building automationsAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] is out of Labs and becomes the new default for everyone. 🎉

It is tempting to read this as a nicer set of menu options. It is much more than that. It is a different starting point: you describe what you want your home to react to, rather than starting from the technical building blocks underneath.

Start with what you want, not how it works

An automation engine thinks in primitives. People don’t. You think “when the front door opens”, “when the last person leaves”, or “when a battery runs low”.

The old path started somewhere else, with Home Assistant’s internals. Which entity? Which state? Does it become on, detected, home, or not_home? Do I need a state trigger, a numeric state trigger, a device trigger, or a system event? If you know Home Assistant well, those questions are second nature. If you don’t, they are the wall you hit before you even start. 😤

The new triggers and conditions speak the language of the thing you care about. When the bedroom drops below 18°C, turn on the heating. You don’t think about numeric state triggers, attributes, or units. You pick Temperature crossed threshold and say what matters. Or Battery low: no need to know whether a device reports its battery as a percentage sensor, or what counts as “low”. You build around the moment itself.

Screenshot of the automation editor showing the new purpose-specific triggers, described by what they do rather than their underlying state.

Built around areas, not one device or entity at a time

The new building blocks also support targets, and that is a bigger deal than it sounds.

You can build an automationAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] around motion in the living room, instead of around one specific motion sensor. One sensor in that room, fine. Ten, also fine. Swap one out next year, add another, or remove the one that kept seeing the cat, and the automation keeps describing the same intent: motion in the living room.

When motion is detected outside, turn on the lights outside. The trigger points at the outside areaAn area in Home Assistant is a logical grouping of devices and entities that represents a room or space in your home, such as the living room, kitchen, or garage. [Learn more], the action points at the outside lights. Change which sensors or lights live there later, and the automation follows along. It reads like a sentence, and it is one less fragile list of entities to maintain forever.

Screenshot of an automation built around motion in an area instead of a single sensor entity.

More than friendlier wording

Here is the part that is easy to miss: this isn’t just a friendly wrapper around the old triggers.

These triggers and conditions can be extended by integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more], including custom and community ones. Integrations have long been able to add their own actions; now they can add their own triggers and conditions too. Picture a washing machine integration offering a plain “laundry is done” trigger, with no need to know which state value or attribute actually means finished. An integration knows things you would otherwise have to figure out yourself: which state changes matter, which to ignore, which edge cases are normal, and what a useful automation moment looks like in its world.

A sensor can tell you the electricity price. The integration can tell you when the price is lowest today. Instead of everyone rebuilding the same template, or learning the quirks of one particular heat pump, EV charger, or alarm panel, the integration can offer the triggers, conditions, and actions that make sense for it. That turns the automation engine into something integrations can teach. It is where “more power, less complexity” stops being a slogan.

No technical traps

There is a quieter benefit too: No technical traps. 💪

With these new triggers, you don’t need to care about unknown or unavailable states. The building block handles those in the way that makes sense for its purpose. The moment you have to decide whether one specific automation should ignore unavailable, wait it out, or treat it as false, we have already made you think about the wrong thing.

Event entities are another classic. Automate around one with a plain state trigger and you may discover it doesn’t fire the second time the same event happens, because the state didn’t change the way you expected. A purpose-specific trigger expresses the event directly, so that whole class of surprise simply goes away.

Screenshot of the automation editor reacting to an event entity directly, instead of working around its state.

Your automations are safe, and YAML isn’t going anywhere

Before anyone opens a forum thread in mild panic: no, you don’t need to rewrite anything.

Existing automations keep working. Generic triggers, conditions, templates, and YAML all keep working. The new triggers and conditions are simply the better starting point for the next automation you build, and a nicer option when you decide to improve an old one. It is not a migration tax.

And this isn’t Home Assistant walking away from YAML. We put real effort into making the new building blocks read well in YAML too, the same way we did when automations moved to triggers, conditions, and actions and swapped service for action. If text is your interface, it should feel just as natural. If you use YAML to write automations, we are sure you’ll love the new triggers and conditions just as much!

Documentation is part of the feature

We also did the less flashy work, which on a project like this is often the work that matters most. Every trigger, condition, and action now has its own documentation page over at triggers, conditions, and actions. Each one explains what the building block is, when you would reach for it, how to use it from the automation editor, how it looks in YAML, and includes real examples to learn from.

Screenshot of a trigger documentation page, explaining what the building block does, how to use it in the UI, and how it looks in YAML.

There is a lot of it, on purpose. Approachability is not only about a friendlier button in the UI. It is also about helping you understand what that button does, and when to use it. Good documentation is product work, even when it does not get its own screenshot.

There is an AI angle here too, and it belongs in the right place: this is for people first. But many of you already use AI to help build automations, and clearer, well-described building blocks give those tools much better material to work with. Their suggestions can become more consistent, because there is less Home Assistant-specific guesswork to invent. It will not happen overnight, since most models are trained on older examples and may keep suggesting the old patterns for a while. The better the documentation, the faster both people and machines pick up the new way.

Haven’t tried building automations this way yet? Open the automation editor and start with what you want to happen. We think you’ll like where it begins. 😎

Activity logbook

Activity, the feature many of you still know as the logbook, has always been there to answer a simple question: what happened, and when? The way it answered, though, was a flat list of full sentences. “Living room lamp turned on.” “Auto lights was triggered by motion.” Every row was a complete sentence, the device name was repeated on every line, and it used its own wording (“turned on”, “changed to”) that didn’t quite match how states are written everywhere else in Home Assistant. Reading back a busy day meant reading every single line.

This release rebuilds it from the ground up into a timeline.

Screenshot of the redesigned Activity timeline, with entries grouped by day on a vertical rail with colored state dots.

Each entry now sits on a vertical rail: the time on the left, a colored dot with the entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more]’s icon, and the text beside it. You read it top to bottom, like a feed. Entries are grouped by day, with Today, Yesterday, and dated headers, so you never lose track of where you are in time. The dot takes on the state color too, so an on and an off are easy to tell apart at a glance, without reading a word.

It also shows only the context you actually need. The timeline trims the name down to where you’re looking: on an entity page you just see the value, on a device page the device name is dropped, and on an area page the area is left out. No more reading the same device name on every row.

A few more touches make it feel right at home:

  • The same words as the rest of the app. State text now comes from the backend, the same source the rest of Home Assistant uses, so it reads identically everywhere and in every language. No more logbook-only verbs.
  • It shows the cause. When something was set in motion by a person, you see their avatar. An automation shows what triggered it, and an integration shows its brand icon. The “why” sits right next to the “what”.
  • Time the way you want it. In the compact views, like the more info dialog, device and area pages, and on cards, select the timestamp to flip between absolute time and a relative “2 hours ago”. A quick glance when you want it, exact precision when you need it.
Screenshot of the compact Activity timeline inside a more info dialog, showing the cause icon and trailing time.

The same component powers all of this, so the timeline stays consistent whether it’s filling the full Activity page on a wide screen or tucked into a card on your phone. Wide screens get the full timeline with the time column and icons; narrow screens and cards get a compact version with the cause icon and the time trailing the entry.

Update all

We’ve all been there. You open Settings > Updates after being away for a bit, and there it is: a wall of pending updates. A new Home Assistant release, a handful of apps, that one integration, and seven ESPHome devices that all decided to ship new firmware in the same week. Keeping up used to mean working down that list one entry at a time, selecting, waiting, selecting the next, and repeating until your finger got tired.

Not anymore. This release reorganizes the updates page around how you actually think about your system, and adds a single button that does the heavy lifting: Update all.

Screenshot of the redesigned Updates page showing pending updates grouped into cards.

Instead of one long, flat list, your pending updates are now grouped into clear cards, each covering a part of your setup:

  • Home Assistant sits right at the top, with Core, the Operating System, and the Supervisor. These run the core of your system, so they’re kept on their own, without an Update all button. You apply them yourself, on purpose.
  • Integrations with several pending updates get a card of their own. Those seven ESPHome devices? Bundled together, so a single selection brings them all up to date. The same goes for a stack of HACS integrations waiting on a new version.
  • Integrations gathers the remaining one-off integration updates into one tidy card.
  • Apps does the same for your apps (used to be called add-ons).
  • Skipped updates show up in their own card once you turn on Show skipped updates. Keeping them separate means they never get swept along by an Update all you didn’t intend for them.

Select Update all on any card, and Home Assistant takes it from there, updating everything in that group in one go. No ticking boxes, no confirmation dialog to step through, just done.

It’s a small change to a page you only visit now and then, but it turns a recurring chore into a couple of taps.

Integrations

Thanks to our community for keeping pace with the new integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] and improvements to existing ones! You’re all awesome 🥰

New integrations

We welcome the following new integrations in this release:

  • Aqvify, added by @astrandb, launching at 🏆 platinum quality
    Monitor your Aqvify water well and tank sensors in Home Assistant. The integration connects through Aqvify’s public cloud API and exposes sensors for your well water level, so you can keep an eye on your supply and build automations around it.

  • Chef iQ, added by @Invader444
    Read the temperatures from your Chef iQ wireless cooking probes directly over Bluetooth. No cloud account, base station, or hub is needed: the probe broadcasts its readings and Home Assistant listens passively.

  • Dropbox, added by @bdr99
    Store your Home Assistant backups straight to your Dropbox account. Setup runs through the Home Assistant Cloud Account Linking service, so you do not need a Home Assistant Cloud subscription or your own application credentials to get started. Once connected, Dropbox shows up as a backup location alongside the rest.

  • Edifier Infrared, added by @abmantis
    Control your Edifier speaker with any infrared transmitter you already have set up in Home Assistant. Built on the Infrared entity platform, so you can pair it with an ESPHome device with an IR LED, or any other supported IR emitter. Communication is one-way, so the integration uses assumed states.

  • energieleser, added by @AjinkyaGokhale
    Bring real-time energy readings into Home Assistant from energieleser devices, such as stromleser, gasleser, wasserleser, and wärmeleser. The integration reads consumption data over a local HTTP API, so all communication stays on your network.

  • Envertech EVT800, added by @daniel-bergmann-00
    Monitor your Envertech EVT800 solar microinverter in Home Assistant. The integration receives data locally over your network, exposing energy and power readings you can track on dashboards and use in automations.

  • Greencell, added by @BrzezowskiGC
    Connect your Greencell EV charging devices to Home Assistant over MQTT. It monitors charger status and electrical measurements like voltage, current, and power, and exposes real-time telemetry and charging-session data for dashboards and automations.

  • Helty Flow, added by @ebaschiera
    Control your Helty Flow decentralized heat-recovery ventilation units with the smart Wi-Fi interface. The integration talks to each unit directly on your local network, so it keeps working without an internet connection.

  • KlikAanKlikUit, added by @Phunkafizer
    Control self-learning KlikAanKlikUit 433.92 MHz RF devices from Home Assistant. Because the integration sends commands over RF without a feedback channel, it uses assumed states.

  • MELCloud Home, added by @erwindouna
    Bring your Mitsubishi Electric air conditioning and heat pump products into Home Assistant through MELCloud Home, Mitsubishi Electric’s cloud service. Monitor and control your devices alongside the rest of your home automations.

This release also has new virtual integrations. Virtual integrations are stubs that are handled by other (existing) integrations to help with findability. These ones are new:

Noteworthy improvements to existing integrations

It is not just new integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] that have been added; existing ones keep getting better too. Here are some of the noteworthy improvements this release:

Integration quality scale achievements

One thing we are incredibly proud of in Home Assistant is our integration quality scale. This scale helps us and our contributors to ensure integrations are of high quality, maintainable, and provide the best possible user experience.

This release, we celebrate several integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] that have improved their quality scale:

This is a huge achievement for these integrations and their maintainers. The effort and dedication required to reach these quality levels is significant, as it involves extensive testing, documentation, error handling, and often complete rewrites of parts of the integration.

A big thank you to all the contributors involved! 👏

Now available to set up from the UI

While most integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] can be set up directly from the Home Assistant user interface, some were only available using YAML configuration. We keep moving more integrations to the UI, making them more accessible for everyone to set up and use.

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

Farewell to the following

Time for a little cleaning, and no, we did not wait for spring. The following integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] are no longer available as of this release. Most had been broken for a while, leaning on libraries or services that went unmaintained or offline years ago:

  • Acer projector has been removed. It had been broken since 2019.
  • Ampio Smog has been removed. The air quality service it polled is offline and its library has been unmaintained since 2019, so it no longer works.
  • ATEN Rack PDU has been removed. It had been broken since 2024 over a dependency conflict, and its maintainer stepped down with no one to take over.
  • Avi-on has been removed. It depended on the bluepy library, which Home Assistant dropped back in 2022.7, and which has been unmaintained since 2018.
  • BeeWi SmartClim has been removed for the same reason: it relied on the long-unmaintained bluepy library that Home Assistant dropped in 2022.7.
  • BlinkStick has been removed. It was disabled in 2024 because it relied on a non-open-source library that has been unmaintained since 2020.
  • Clementine has been removed. It had been broken since 2023, and its library has been unmaintained since 2018.
  • Dovado has been removed. It was disabled in 2024.7 because it relied on a non-open-source library that has been unmaintained since 2017.
  • ELIQ Online has been removed. Its API endpoint no longer exists, and the underlying library has been unmaintained for years.
  • Gitter has been removed. Gitter migrated to Matrix back in 2023 and its old API no longer works, so it is now a virtual integration handled by the Matrix integration, which you can use to connect instead.
  • Greenwave Reality has been removed. It had been broken since around 2022, because the devices use an outdated encryption key that modern systems reject, and its library has been unmaintained since 2018.
  • Logentries has been removed. The service was rebranded to InsightOps years ago and is no longer offered, and its API endpoint no longer responds.
  • Microsoft Face has been removed, together with the Microsoft Face Detect and Microsoft Face Identify integrations that built on it. They had been broken since 2022 after a change to Microsoft’s Azure face API.
  • MS Teams has been removed. The integration relied on Office 365 Connectors, which Microsoft discontinued on May 22, 2026, so it no longer works.
  • Mycroft has been removed. It was disabled in 2023.6 over an unresolvable dependency conflict, and its library has not been updated since.
  • SCSGate has been removed. It required obscure DIY hardware that is no longer available, its library has been unmaintained for a decade, and it had effectively no users left.
  • ThermoWorks Smoke has been removed. It was disabled in 2024.10 over a dependency conflict, and its library has been unmaintained since 2019.
  • Tikteck has been removed.
  • UniFi LED has been removed. The hardware is discontinued and the integration had no remaining users.
  • Watson TTS has been removed. It was disabled in 2023 over a dependency conflict, and no one stepped up to update it since.

Other noteworthy changes

There are many more improvements in this release; here are some of the other noteworthy changes:

  • Edit a running timer’s duration. Change a timer’s duration straight from its dialog, no need to cancel and start over. Thanks, @chli1!
  • A faster frontend. A big batch of performance work landed this release, most noticeably across the energy, history, and statistics graphs, so they draw quicker and feel snappier. Thanks, @MindFreeze!
  • Device and area pages adapt to your screen. They now use a responsive column layout, and the device page lists its main entities first, so the important controls sit right at the top.
  • More context in the scene editor. Entity rows now show their type and the integration they belong to, making large scenes easier to read. Thanks, @pszypowicz!
  • Tags in the Apps store. The Apps store now shows tags and marks which apps you already have installed. Thanks, @bramkragten!
  • A sub-editor for the statistics graph card. Tune each entity right from the card’s visual editor. Thanks, @ildar170975!
  • Live condition testing keeps improving. Conditions now show clearer status icons (addressing the red and green only accessibility concern from last release), the indicator works on mobile in the visibility editor, and live testing now covers conditions inside actions too. Thanks, @silamon and @marcinbauer-ohf!
  • Hide columns in Developer tools. The States tab can now hide the Device and Area columns. Thanks, @vingerha!
  • Matter soil moisture sensors. Matter-certified soil moisture sensors now show up in Home Assistant. Thanks, @lboue!
  • A projector device class for media players. Projectors are now a proper media player device class, surfaced through Google Assistant, HomeKit, and SmartThings too. Thanks, @jtjart!
  • Template lights gain xy color. Build template lights with full xy color support. Thanks, @Petro31!
  • Clean a specific room from Google Assistant. Ask Google to send your robot vacuum to a particular room. Thanks, @joostlek!
  • Snappier templates. Under the hood, a template engine optimization makes templates render up to 40% faster. Thanks, @frenck!
  • Clearer automation traces. When you debug an automation or script, its trace now always includes template errors, making it easier to spot what went wrong. Thanks, @emontnemery!

Time format selection

Some entitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] tell time. A sensor with the next sunrise, the timestamp of your last backup, a countdown to the next calendar event. How that moment should be shown is a matter of taste: sometimes you want the exact date and time, and sometimes a friendly “in 3 hours” or “2 days ago” is far more useful at a glance.

Until now, picking how a timestamp was displayed meant editing YAML. This release brings that choice into the UI. When you add a timestamp entity to a tile card, the entities card, or as an entity badge, a Time format option shows up in the editor, so you can choose how the time is presented, including a new short or long style for the relative format.

Screenshot of the tile card editor showing the new Time format option for a timestamp entity.

Thanks, @karwosts!

Dedicated panels for infrared and radio frequency

Earlier this year, Home Assistant gained dedicated entity platforms for infrared and radio frequency devices, the building blocks behind integrations that reach your gear through an IR blaster or a 433 MHz transmitter. This release gives them a proper home.

Two new panels show up in the Settings menu, one for infrared and one for radio frequency. Each lists the proxies and transmitters you’ve set up, so you can see your IR blasters and RF bridges at a glance and jump straight to the one you’re looking for, instead of hunting for them among everything else. The panels only appear when you actually have such devices, so they stay out of the way if you don’t.

Screenshot of the new infrared and radio frequency panels in the Settings menu, each listing the configured proxies.

Thanks, @balloob!

The ZHA Zigbee device management got an overhaul

Managing a Zigbee device through ZHA used to mean squinting at a cramped dialog. The clusters, bindings, signature, and neighbors tools were all there, but crammed into a small popup that left little room to breathe.

This release moves all of that onto a dedicated, full-page device view. The same tools are now laid out across tabbed navigation, with a device summary card up top, and the loading, empty, and error states have been cleaned up throughout. It’s the same powerful Zigbee management, just far easier to work with.

Screenshot of the revamped ZHA device management page, with a device summary card and tabbed navigation for clusters, bindings, signature, and neighbors.

Thanks, @jpbede!

Keeping your Raspberry Pi firmware up to date

Running Home Assistant Operating System on a Raspberry Pi? You are in good company: per our public, opt-in analytics, the Raspberry Pi platform currently powers about a third of all installations. As of this release, there is an “update entity”An update entity is an entity that indicates if an update is available for a device or service. [Learn more] for the Pi’s bootloader firmware, also often referred to as the EEPROM update. You can keep it current right from Settings > Updates, the same place you handle every other update.

This is more than a nice-to-have. Especially on the Raspberry Pi 5 and Compute Module 5, the firmware contains bug fixes, compatibility improvements for NVMe drives, thermal improvements, and much more. Until now, updating that firmware was cumbersome: you had to flash another SD card with a special image, or connect a keyboard and a display and run the rpi-eeprom-update command by hand. Now it takes a single step.

Screenshot of the Raspberry Pi firmware update entity on the Settings, Updates page.

A few things to keep in mind:

  • This needs Home Assistant Operating System 18 or newer, which provides the support the update entity builds on. On older versions, the entity simply isn’t there.
  • On a Raspberry Pi 4, the firmware can only be updated when the board boots from an SD card. If your Pi 4 boots from USB storage, the update isn’t available. This is a limitation of the update system, and one more reason we recommend using USB only as a data disk while keeping an SD card as the main boot device.
  • Not every board can update its firmware this way. Besides a Raspberry Pi 4 booting from USB storage, the Home Assistant Yellow with a Compute Module 4 isn’t supported either. Where an update can’t be applied, the entity doesn’t appear at all, so you don’t see an update that wouldn’t work.
  • After the update is applied, Home Assistant prompts you to reboot to complete it.

Thanks, @sairon!

Patch releases

We will also release patch releases for Home Assistant 2026.7 in July. These patch releases only contain bug fixes. Our goal is to release a patch release once a week, aiming for Friday.

2026.7.1 - July 3

2026.7.2 - July 10

2026.7.3 - July 21

Apologies for shipping off schedule. This patch release should have shipped last Friday, but we weren’t able due to technical difficulties.

2026.7.4 - July 24

Need help? Join the community

Home Assistant has a great community of users who are all more than willing to help each other out. So, join us!

Our very active Discord chat server is an excellent place to be, and don’t forget to join our amazing forums.

Found a bug or issue? Please report it in our issue tracker to get it fixed! Or check our help page for guidance on more places you can go.

Are you more into email? Sign up for the Open Home Foundation Newsletter to get the latest news about features, things happening in our community, and other projects that support the Open Home straight into your inbox.

Backward-incompatible changes

We do our best to avoid making changes to existing functionality that might unexpectedly impact your Home Assistant installation. Unfortunately, sometimes it is inevitable.

We always make sure to document these changes to make the transition as easy as possible for you. This release has the following backward-incompatible changes:

Purpose-specific triggers and conditions

Several entity triggers and conditions, part of the new purpose-specific triggers and conditions, have been renamed so their keys are consistent across all domains. The old keys no longer work.

The following triggers changed:

  • battery.low is now battery.became_low
  • battery.not_low is now battery.no_longer_low
  • lawn_mower.docked is now lawn_mower.returned_to_dock
  • schedule.turned_off is now schedule.block_ended
  • schedule.turned_on is now schedule.block_started
  • timer.time_remaining is now timer.remaining_time_reached
  • update.update_became_available is now update.became_available
  • vacuum.docked is now vacuum.returned_to_dock

The following conditions changed:

  • climate.target_humidity is now climate.is_target_humidity
  • climate.target_temperature is now climate.is_target_temperature

If an automation or script uses one of these, it will stop working until updated. To fix it, open the affected automation or script, re-select the trigger or condition (it now appears under its new name), and save. If you edit in YAML, replace the old key with the new one from the list above.

(@frenck - #174463)

BSB-LAN

The BSB-LAN integration has reduced its support for the older version 1 JSON API. If your BSB-LAN device runs very old firmware that only speaks the version 1 API, update it to firmware that supports the version 2 API to keep everything working.

A repair notification will let you know if your device is affected.

(@liudger - #172843) (BSB-LAN documentation)

iCloud

The battery_level attribute has been removed from iCloud device tracker entities. Use the dedicated battery sensor in your automations and scripts instead.

(@some-random-climber - #174117) (iCloud documentation)

Person

Person entities no longer report the latitude and longitude of the home zone when their location comes from a presence scanner associated with the home zone.

If you have automations or scripts that check the coordinates of a person, adjust them. To check whether a person is in a specific zone, use the new in_zones state attribute instead.

(@emontnemery - #173042) (Person documentation)

Rabbit Air

The Rabbit Air fan preset mode values changed from title case to lowercase to match Home Assistant’s state convention: Auto is now auto, Manual is now manual, and Pollen is now pollen. The user-facing labels stay the same through translations.

Update any automations, scripts, templates, or action calls that reference the old title-case preset values.

(@MagikalUnicorn - #172931) (Rabbit Air documentation)

Reolink

Reolink Duo PoE and Duo WiFi dual-lens cameras now expose a sub-device per lens. The camera and motion/AI sensor entities that previously had a “lens 0” or “lens 1” suffix in their name are moved to the new lens sub-devices and lose that suffix. Entity IDs and custom names stay the same, so most automations keep working.

If you target these entities through the camera device, update them to use the new lens sub-devices.

(@Markus98 - #173037) (Reolink documentation)

StarLine

The battery_level attribute has been removed from StarLine device tracker entities. Use the dedicated battery sensor in your automations and scripts instead.

(@some-random-climber - #174118) (StarLine documentation)

Tesla Fleet

The route device tracker (device_tracker.<vehicle>_route) no longer reports the active route’s destination name as its state. Its state is now derived from your zones like a normal device tracker (home, not_home, or a zone name), based on the route’s coordinates.

The destination name is still available through the new destination sensor (sensor.<vehicle>_destination), which is disabled by default. Enable it from the entity settings if you have automations that relied on the destination name, and update any automations that matched the old route tracker state.

(@Bre77 - #172513) (Tesla Fleet documentation)

Teslemetry

The route device tracker no longer reports the active route’s destination as its state or through a location_name attribute. Its state is now derived purely from the route’s coordinates (zone-aware, like home or not_home).

If you relied on the destination name, enable the new Destination sensor (sensor.*_destination), which is disabled by default and reports the destination name as Tesla provides it.

(@Bre77 - #172514) (Teslemetry documentation)

Tractive

The battery_level attribute has been removed from Tractive device tracker entities. Use the dedicated battery sensor in your automations and scripts instead.

(@bieniu - #172756) (Tractive documentation)

Zeroconf

The legacy requires_api_password field has been removed from the Home Assistant zeroconf/mDNS discovery announcement (_home-assistant._tcp). It had been hardcoded to true since the http.api_password authentication mechanism was removed in Home Assistant 2024.7, so it no longer carried any meaning. The official companion apps already ignore it.

Third-party discovery clients that still read this field need to tolerate its absence.

(@agners - #173090) (Zeroconf documentation) (API documentation)

Zone

The state (person count) and persons attribute of zone entities are now calculated from the in_zones attribute of person entities. As a result, a person can now be counted in more than one zone at the same time. For example, a person who is home with in_zones: ["home", "near_home"] now counts toward both zone.home and zone.near_home, where previously they only counted toward zone.home.

In addition, the state of position-aware device trackers is now the smallest zone the device is in, instead of the zone whose center it is closest to.

Automations, scripts, or templates that depend on zone person counts or on device tracker zone states may need to be adjusted.

(@emontnemery - #172942, #173106) (Zone documentation)

Z-Wave JS

This release requires an updated Z-Wave JS server. You need zwave-js-server 3.9.0 or newer (schema 49):

  • If you use the Z-Wave JS app, update it to at least version 1.4.0.
  • If you use the Z-Wave JS UI Docker container, update it to at least version 11.19.1.
  • If you run your own zwave-js-server, update it to at least version 3.9.0.

(@AlCalzone - #173309) (Z-Wave JS documentation)

If you are a custom integration developer and want to learn about changes and new features available for your integration: Be sure to follow our developer blog. The following changes are the most notable for this release:

All changes

Of course, there is a lot more in this release. You can find a list of all changes made here: Full changelog for Home Assistant Core 2026.7.

The Matter upgrade you’ve been waiting for

The Matter upgrade you've been waiting for

It started as a passion project. Yet in a few years matter.js has grown beyond my wildest expectations, becoming the backbone of the open source Matter ecosystem, and powering everything from Homebridge to openHAB, and even some commercial products.

Ten months ago, I joined forces with the Open Home Foundation to work full time as Lead Developer of Matter. Shortly after, I donated matter.js to the foundation – giving it a new home where it would be safeguarded for the future. Together we announced our plans to take Matter support in Home Assistant in a completely new direction: we set out to rebuild the Open Home Foundation Matter Server – the engine that powers Matter in Home Assistant – on matter.js.

After four months of beta testing, with our community fixing bugs and contributing new features along the way, today we’re thrilled to present the newest version of Matter for Home Assistant! 🎉

The Open Home Foundation invests in important technology to make open alternatives possible, and our work is funded in part by everyone who subscribes to Home Assistant Cloud and buys official hardware from our commercial partners. The launch of a new Matter experience in Home Assistant shows what’s possible with your support. 💪

Ingo Fischer presenting at CSA events Presenting the matter.js plans at the Connectivity Standards Alliance (CSA) Member Meeting in November 2025 (right), and returning in March 2026 as an Outstanding Contributor Award recipient (left).

Serving up more with matter.js

For those new to matter.js, it’s an open source TypeScript implementation of the Matter standard. I built it to give developers and power users more speed and flexibility, and to make Matter better suited for open source development across the millions of homes that use Home Assistant. By running Matter in Home Assistant on matter.js, all of those benefits now flow directly into the platform.

This major update brings greater stability for Matter in Home Assistant, fewer bugs, and faster start-up and recovery. It also comes with a brand new visualization feature to help you understand your network (more on that below 👀). And by upgrading to the Matter 1.5.1 specification (1.6 coming soon!), we’re better equipped to improve support for all new Matter device types, such as cameras, doorbells, and closures.

Coupled with an updated OpenThread Border Router (OTBR) app to support Thread 1.4 in Home Assistant, these changes mark important steps in making Matter work more reliably within your setup, now and into the future. But don’t just take our word for it – here’s what our beta testers are saying:

"The new Matter Server has evolved into the ultimate Matter controller and troubleshooting tool for power users, backed by an incredible open community that continues to push the standard forward."

- Ward Zhou, Smart Home Journalist

"The new matter.js server is fantastic. I love all the new possibilities it offers. In particular, the new Thread mesh view is unique and helps keep the Thread network under control at all times. The icing on the cake is that Home Assistant now supports Matter 1.5.1. This means Home Assistant's Matter implementation is once again at the forefront of the industry."

- hoppel118, Home Assistant Discord Member

"Joining the beta program was born as a last resort to get my Matter/Thread network going. But it was a great experience! While I'm not at all a power user nor programmer, I could contribute at some degree. The very short feedback loop and close involvement of the developer made this a nice (and easy!) way to contribute to the development of the Open Home."

- Haapster, Home Assistant Discord Member

It was just a matter of time

When Matter emerged a few years ago, we immediately saw its potential to shape the industry for the better. As an open standard that lets smart devices from different brands speak the same language, it represents the kind of interoperable tech the Open Home Foundation exists to champion. So we set out to build on it.

Just weeks after Matter’s official launch in 2022, we added the Matter integration to Home Assistant, and in 2025 both Home Assistant and the Open Home Foundation Matter Server were officially certified by the Connectivity Standards Alliance. That server was built with Python and the official C++ Matter SDK – a solid starting point, but one that couldn’t keep pace with our open source ambitions.

Matter now runs in 38% of Home Assistant instances, and ranks twelfth among all integrations – a clear sign of where the smart home world is heading. We want that future to have fewer compatibility headaches, more device choice, and a smart home that just works. This update to Matter support in Home Assistant takes a huge step toward that vision.

An easy switch

The new Matter experience in Home Assistant is delivered through the “Matter Server app 9.0” – a fully compatible drop-in replacement for the previous Python-based server. After you’ve updated the app, it will automatically migrate your data on the first start, and work in exactly the same way that the previous server did.

Faster, smarter, and more secure

The real benefits kick in with every subsequent server start and device reconnection. Thanks to a range of optimizations, devices now come back online much faster, networks are more responsive, and over-the-air updates are more reliable.

Beyond performance, the new server also tightens security. When commissioning new devices, uncertified devices with an official development/test certificate can no longer be added out of the box, ensuring no malicious devices are added to your Matter network without your knowledge. Additionally, the new server checks certificate revocation data during commissioning, adding another layer of protection.

A clearer view

While the Matter Server’s web UI received a range of new and improved features, the ability to visualize your Thread or Wi-Fi networks steals the show.

Network visualization in the Matter Server web UI Your whole network, at a glance.

The visualization feature draws details from your commissioned Matter devices to map the network and offer insights into connection quality. Each device appears as a node, with small icons indicating its role in the network – whether it’s a leader (crown), a router (arrows), a sleepy, or another end device. The color of the connections between nodes reflects connection quality: green is strong, orange medium, red weak, and gray no signal (for those that want a deeper dive, check out our GitHub documentation).

This is especially helpful for Thread networks, where there can be multiple “hops” between a device and the border router, and the devices themselves decide how data is routed. Where possible, border routers are also discovered and displayed, giving you a fuller picture of how your network is structured. The visualization also helps with Wi-Fi devices, making it easier to see which device is connected to which access point, and at what signal quality.

A foundation for what’s next

Graduating Home Assistant to matter.js wouldn’t have been possible without our community, who’ve helped grow Home Assistant into one of the biggest smart home platforms in the world.

With these new changes, we’re better placed than ever to make Matter in Home Assistant more approachable for all. Head to the Open Home Foundation roadmap to add your voice to what comes next. We can’t wait to keep building together ⚒️.

Proxy all the things: no device left behind

Every smart home has them: the older devices that still work perfectly well but no longer fit neatly into a modern setup. Instead of letting them gather dust in a drawer, the Open Home Foundation’s projects can help you bring them back into the fold. Here’s how a little proxying can give your beloved old gear a new lease of life, and keep your smart home that bit more sustainable.

2026.6: Pick a card, any card

Home Assistant 2026.6! 🎉

I’m going to put my hand up right away: ✋ I am not a dashboard person. Not because I don’t like them; I love seeing what you all build. But designing a beautiful one is a kind of visual creativity I just don’t have. That’s a big part of why I love the built-in Home dashboard so much, it does the designing for me. But when I do build a custom dashboard, I usually stare at that “add a card” dialog for way too long, picking cards almost at random just to see if they look good with the data I have.

So you can imagine my excitement for my personal favorite of this release: the new card picker. Instead of asking “which card type do I want?”, it now asks “which thing in your home do you want to show?”, and then suggests cards that actually make sense for it, with live previews using your own data. For someone like me, that’s not just easier; it’s genuinely inspiring. It nudges me towards combinations I would not have thought of on my own. 💡

This fits into a bigger direction I keep getting more excited about: Home Assistant getting better at starting from the thing you want to do, instead of asking you to first learn the building blocks. The same idea is what makes purpose-specific triggers and conditions in Home Assistant Labs feel so right, and this release brings them a big step closer to graduating out of Labs with brand new zone triggers and conditions. 📍

A close second favorite for me this release is everything happening around that in the automation editor: live test indicators on your conditions, target counts on every device, area, floor, and label, and proper notes you can attach to any step. Individually they are small quality-of-life touches; together, they make building automations feel a whole lot more transparent. ✨

And there is plenty more to love in this release: new tile card features, Z-Wave smart locks catching up with their Matter siblings, a friendlier Apps page, and another big batch of new integrations from our community. 🚀

Enjoy the release!

../Frenck

A huge thank you to all the contributors who made this release possible! And a special shout-out to @piitaya who helped write the release notes this release. Also, @karwosts, @lexpostma, and @Petro31 for putting effort into tweaking its contents. Thanks to them, these release notes are in great shape. ❤️

A friendlier way to add cards to your dashboard

Adding a card to a dashboard is one of those moments where Home Assistant has historically asked a lot of you. The old dialog opened on a wall of card types, all named after the building blocks we use under the hood: tile, entities, button, gauge, glance, picture, markdown, and so on. Lovely if you already know what each one does. A lot less lovely if you came in thinking “I just want my living room light on this dashboard.” 💡

User research kept telling us the same thing: people open the editor with a deviceA device is a model representing a physical or logical unit that contains entities. or an entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] in mind, not a card type. So we flipped the dialog around.

When you add a card now, the dialog opens on a new By entity tab. On the left, your home: a tree of floorsA floor in Home Assistant is a logical grouping of areas that are meant to match the physical floors in your home. Devices & entities are not assigned to floors but to areas. Floors can be used in automations and scripts as a target for actions. For example, to turn off all the lights on the downstairs floor when you go to bed. [Learn more], areasAn area in Home Assistant is a logical grouping of devices and entities that represents a room or space in your home, such as the living room, kitchen, or garage. [Learn more], devices, and entities, the same shape some of you may recognize from the new purpose-specific triggers and conditions currently in Settings > System > Labs. Anything that doesn’t fit cleanly into your areas shows up under Unassigned, so nothing gets lost. Search jumps straight to a flat result list.

Pick an entity, and the right side fills with live previews of cards that actually fit it, not a generic list:

  • For a light, you get a plain tile, a tile with a brightness slider, a toggle tile, color temperature, and favorite colors.
  • For a cover, open/close, a position slider, and tilt.
  • For a media player, a tile with playback controls or with the volume slider.
  • For a numeric sensor like temperature, humidity, or power, a trend graph tile so you can see history at a glance.
  • For a calendar or to-do list, the matching dedicated card.
  • And a Browse all cards option in case none of those is what you wanted; the familiar By card tab is still there too, unchanged.

Every suggestion renders as a real preview of how the card will look on your dashboard, with your data, before you pick it. No more “add it, see how it looks, delete it, try the next one.”

Custom cards can join the party too. If a custom card you have installed has opted in to the new picker, its suggestions show up under a separate Community section, right below the built-in ones. Support depends on the custom card’s author adding it.

On mobile, the same dialog turns into a two-step flow: pick your entity, then pick your card.

Screenshot of the new add card dialog with an entity tree on the left and live card previews on the right.

This is the first visible step of a broader effort on the Open Home Foundation roadmap to make building a dashboard feel as natural as building an automation: start from what you want to control, and let Home Assistant suggest the rest. Expect more in this direction in the releases to come.

Tip

Maintain a custom card? You can opt in to the new picker by adding a getEntitySuggestion function to your window.customCards entry. The developer blog post Custom card suggestions in the card picker walks through the details.

Infrared now also listens

Two releases ago, infrared became a first-class citizen of Home Assistant, but as a one-way street: Home Assistant could send commands to your TV or air conditioner, but it had no way to hear what the device, or its original remote, was doing. The most asked-for follow-up was simple: “can Home Assistant also listen?” 📡

In this release, it does.

The Infrared platform gains a new receiver event entityAn event entity represents a momentary occurrence without a lasting state, for example, when you press a doorbell or a button on a remote control. Instead of a state such as on or off, the event entity keeps track of when the last event was detected and its event type, such as a single press or a long press. [Learn more]. Any transmitter integration that supports it can expose the IR commands it picks up as events in Home Assistant, ready to drive automations just like any other event trigger. ESPHome is the first transmitter integration on board, so any ESPHome device with an IR receiver wired up can now act as an IR listener for your whole house. On the device side, LG Infrared is the first device integration to use it, exposing the commands its receiver sees as events you can react to.

This means you can keep Home Assistant in sync with the original remote: use the remote that came with the device, and Home Assistant sees it happen instead of being left in the dark with stale state. It also opens the door for future integrations to do more with what they hear, like turning a spare IR remote into a Home Assistant controller.

This is the second half of the infrared story we started two releases ago, making infrared a true two-way platform in Home Assistant. It also closes out the Open Home Foundation roadmap opportunity that set out to make infrared a two-way platform in Home Assistant.

Polishing the automation editor

Ever since Home Assistant 2025.12 introduced purpose-specific triggers and conditions, every release has nudged the automation editor a little closer to how you actually think about your home. The work in Labs is ongoing, and feedback keeps pouring in. While we keep iterating there, the rest of the automation editor has been getting some love too. ✨

Purpose-specific triggers and conditions

The Labs preview keeps growing, both in capabilities and polish. This release picks up where last month left off: the cross-domain successors to the old Person and Device Tracker home triggers and conditions have landed, this time built around zones. 📍

Four new zone triggers and four new zone conditions cover the same ground the removed entered_home, left_home, is_home, and is_not_home building blocks did, but in a more flexible way:

  • Triggers to react when a person or device trackerDevice trackers are used to track the presence, or location, of a device. [Learn more] enters or leaves a zoneZones allow you to specify certain regions on a map. They enable zone presence-detection and can be used in automations. For example, to start the vacuum after you left home or start the heating at home when you leave the office. [Learn more], and when a zone becomes occupied or empty.
  • Conditions to check whether a person or device tracker is in or not in a zone, or whether a zone is currently occupied or not.

You’re no longer limited to your home zone: any zone you’ve defined works, so reacting to someone arriving at work, school, or the gym is just as straightforward. Both triggers and conditions support the for duration field added last release, so you can wait until someone has actually settled in (or out) before doing anything.

We’ve also been busy giving the existing triggers and conditions the documentation they deserve. About half of the purpose-specific triggers and conditions now have their own dedicated reference page over at triggers and conditions, with examples, options, and the small details that make a real difference when you are wiring things up. The rest are on their way.

Haven’t tried them yet? Now is a great time. Enable the feature at Settings > System > Labs, give it a spin, and let us know what you think. The more feedback we collect, the sooner we can graduate this out of Labs.

See exactly how many things an automation targets

When you build an automationAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] that acts on a floorA floor in Home Assistant is a logical grouping of areas that are meant to match the physical floors in your home. Devices & entities are not assigned to floors but to areas. Floors can be used in automations and scripts as a target for actions. For example, to turn off all the lights on the downstairs floor when you go to bed. [Learn more], an areaAn area in Home Assistant is a logical grouping of devices and entities that represents a room or space in your home, such as the living room, kitchen, or garage. [Learn more], a labelLabels in Home Assistant allow grouping elements irrespective of their physical location or type. Labels can be assigned to areas, devices, entities, automations, scenes, scripts, and helpers. Labels can be used in automations and scripts as a target for actions. Labels can also be used to filter data. [Learn more], or a device, the editor used to just show the name of that target. So “Bedrooms” could mean three lights, or thirty, with no way to tell at a glance.

Now every floor, area, device, and label pill in your automation rows shows the number of entities it expands to, right next to its name. If your target selector also filters by domain or device class, the count reflects that filter, so what you see is what the action will actually touch. Select the pill for a quick peek at exactly which entities are included.

It is the kind of small detail that turns “I hope this only hits the right lights” into “yep, twelve, that’s correct”, especially handy as your home grows or you start using labels across rooms.

Screenshot of an automation row showing the number of entities next to each device and area target.

See at a glance which conditions pass

Conditions are the gatekeepers of your automations. They decide whether something runs or not, and when an automation doesn’t fire the way you expected, the first question is usually: “which condition was actually blocking it?” Until now, finding out meant testing each condition one by one, or waiting for the next run and digging through the trace afterwards.

The automation editor now tells you right there, while you are editing. Every condition row shows a small live test indicator as a badge on its icon that updates in real time as your home changes:

  • A green check when the condition currently passes
  • A red circle when it doesn’t
  • A neutral state when the condition is incomplete or can’t be evaluated yet
  • A clear error indicator, with the full message in a tooltip, when the configuration is invalid

Hover the icon to see exactly what the condition is reporting. Edit the condition, and the badge updates immediately, so you can dial in thresholds, zones, or state matches and see the result without leaving the editor. The same indicators also show up on dashboard visibility conditions, so the cards you hide or show conditionally tell you the same story.

Screenshot of an automation condition row with a live test indicator badge on the condition icon.

This is part of a broader roadmap effort to bring home context into the automation editor: surfacing the information you need to build and debug automations right where you are working on them.

Add notes to any step in your automation

Aliases are great for renaming a trigger or action, but they have always been a single line, and they double as the label you see in the row. So if you wanted to explain why a step exists (“the porch sensor sometimes triggers on its own in winter, so this waits a few seconds to make sure”), you were out of luck without dropping into YAML.

Every triggerA trigger is the part of an automation that makes the automation run when a specific change happens, for example, when the sun sets or a door opens. [Learn more], conditionConditions check whether something is true at that moment, for example, whether a door is closed. You can use them in automations and scripts. If a condition is not met, the actions that come after it in the same sequence do not run. At the top level of an automation or script, this stops the automation or script. [Learn more], actionAn action makes Home Assistant do something, for example, turn on a light, send a notification, or activate a scene. Automations and scripts run a list of actions. [Learn more], option, and scriptA script is a saved list of steps that runs when you start it, for example, from a dashboard, with Assist, or from an automation. Unlike an automation, a script has no triggers, so it doesn’t start by itself. [Learn more] field now has a dedicated Notes field, separate from its name. Open the step’s sidebar, jot down whatever future-you needs to know, and it stays with that step forever. We deliberately called it notes and not comments to keep it clear from YAML comments, which are a different thing entirely.

Notes travel with the automation when you duplicate, export, or share it as a blueprintA blueprint is a script, automation, or template entity configuration with certain parts marked as configurable. This allows you to create multiple scripts, automations, or template entities based on the same blueprint, with each having its own configuration-specific settings. Blueprints are shared by the community on the blueprints exchange in the forum. [Learn more], so the reasoning behind a setup is no longer something only the original author remembers.

Screenshot of an automation trigger row with a small note icon, showing the note in a tooltip on hover.

Tile card features

The tile card keeps growing into one of the most capable building blocks in your dashboards. This release adds two brand-new card features for weather entities and a generous round of additions to the media player tile.

Your forecast, right where you check the weather

Most of us already have a weather tile sitting somewhere on a dashboard. Up until now, the moment you wanted to know what tomorrow looks like, you had to open the more info dialog, jump to a different card, or build a whole forecast section just for that. No more.

Two new tile card features put the forecast directly onto your existing weather tile:

  • Temperature forecast draws a bar chart of high and low temperatures for the days ahead, colored from cool cyan to deep red so you can read the week at a glance. In the hourly view, it renders as a smooth filled curve.
  • Precipitation forecast shows how much rain (or snow) is expected for each slot, or, when your weather service only provides it, the chance of precipitation.

Both features automatically pick the best forecast resolution your weather service offers (daily, twice-daily, or hourly), and you can pin a specific resolution or toggle the day and hour labels from the card editor. One small change, big difference: your dashboard now answers the next question before you ask it.

Screenshot of weather tile cards showing the temperature and precipitation forecast features.

Turning the media player tile into a real remote

Last release was a big step for the media player tile: a proper source picker, a sound mode picker, and playback buttons you could finally pick and reorder. Lots of you ran with it and built beautiful, focused media controls on your dashboards, and some of you immediately came back with: “this is great, but can it also…” 🎶

This release fills in those last gaps. Across the media player tile card features, you now have:

  • A Mute button on both the Volume slider and Volume buttons features, so you can silence the room straight from the tile.
  • Shuffle, Repeat, Volume up, Volume down, and Mute as extra controls you can mix into the Playback feature, alongside the existing transport buttons.
  • A filter for the Source and Sound mode dropdowns, so a receiver that reports two dozen inputs only shows the three you actually use.

The result: a single tile that looks like, and acts like, a remote built specifically for that device. No more “almost right” tiles, no more falling back to the more info dialog for that one button you really need. Your Music Assistant setup is going to feel right at home. Thanks, @pcan08 and @MindFreeze!

Screenshot of a media player tile card showing the new mute, shuffle, repeat, and volume controls together with a filtered source dropdown.

Z-Wave smart lock credential management

Two releases ago, we added credential management for MatterMatter is an open-source standard that defines how to control smart home devices on a Wi-Fi or Thread network. [Learn more] smart locks: a friendly dialog to add, edit, and remove the users (and the PIN codes that go with them) that your lock accepts, without ever opening the lock’s own app. This release, Z-Wave smart locks get the same treatment. 🔐

Open your lock from the device page and select Manage access from the menu to get an overview of every user the lock has, and the credentials assigned to them. From there, you can add a new user, give existing ones extra credentials, edit them, or remove them. If you try to reuse a PIN that is already in use on the lock, the dialog will warn you instead of silently overwriting it. Everything happens directly between Home Assistant and your lock over Z-Wave; no cloud account, no vendor app, no internet connection required.

Screenshot of a Z-Wave smart lock device page with the new Manage access option in the menu.

There is one small difference with the Matter version that plays to Z-Wave’s strengths: both PIN codes and passwords are supported, where the lock supports them. PIN codes are limited to digits (the familiar keypad experience), while passwords accept the full character set for locks with an alphanumeric keypad.

Screenshot of the Add user dialog for a Z-Wave smart lock, with fields for the user name, a PIN code / Password credential type selector, and a PIN code input.

Just like the Matter equivalent, every action behind the dialog is also available as a regular Home Assistant actionAn action makes Home Assistant do something, for example, turn on a light, send a notification, or activate a scene. Automations and scripts run a list of actions. [Learn more]. That means you can hand out a one-time PIN to a guest from an automation, rotate codes on a schedule, or wipe a lost user with a single button press on your dashboard.

A fresh look for the Apps page

Apps (previously known as add-ons) are how you extend the system that Home Assistant runs on with extra software, like a media server, an MQTT broker, a VPN, or a code editor, all running right next to Home Assistant on the same device.

This release gives the Apps page a friendlier, more modern look. Every installed app is shown as its own card with its icon, name, a short description, and a clear indicator of whether it is running, so you can spot the state of your apps at a glance.

Screenshot of the refreshed Apps page, showing installed apps as cards with their icon, name, description, and status.

Installed apps can now also carry small tags that highlight what they are, making it easier to scan your list and find what you are looking for. The app detail page got the same care, with a cleaner layout that also works well on a tablet.

Integrations

Thanks to our community for keeping pace with the new integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] and improvements to existing ones! You’re all awesome 🥰

New integrations

We welcome the following new integrations in this release:

  • AiDot, added by @s1eedz
    Control your AiDot Wi-Fi smart lights, including A19 and BR30 bulbs, directly from Home Assistant. Communication happens locally over your network, so no cloud connection is required.

  • CentriConnect/MyPropane, added by @gresrun
    Keep an eye on your propane tank from Home Assistant. The integration connects to the centriconnect.com cloud service to expose the level and status of tanks equipped with a MyPropane monitor, perfect for getting a notification before you run out.

  • Cielo Home, added by @ihsan-cielo
    Control your Cielo smart air conditioner and heat pump controllers from Home Assistant, contributed by Cielo themselves. Connects through the Cielo Connect cloud API and exposes each device as a climate entity, so you can adjust modes and temperatures alongside the rest of your home automations.

  • Data Grand Lyon, added by @Crocmagnon — launching at 🏆 platinum quality
    Bring open data from the city of Lyon, France, into Home Assistant. Track upcoming departure times at TCL public transit stops, and monitor real-time bike and dock availability at Vélo’v bike-sharing stations.

  • Guntamatic, added by @JensTimmerman — launching at 🥈 silver quality
    Monitor your Guntamatic wood or pellet heater locally from Home Assistant. The integration reads sensor data directly from the heater’s web interface over your local network, with no cloud account needed.

  • LG TV via Serial, added by @balloob — launching at 🥈 silver quality
    Control your LG TV locally from Home Assistant over its built-in RS-232 serial port. Works through a direct serial cable, a USB-to-serial adapter, or an ESPHome-based serial proxy, giving you a reliable connection that even works while the TV is in standby. Great for older sets without smart features and for commercial signage displays.

  • Marantz Infrared, added by @balloob — launching at 🥈 silver quality
    Control your Marantz amplifier with any infrared transmitter you already have set up in Home Assistant. Built on top of the Infrared entity platform, so you can pair it with an ESPHome device with an IR LED, or any other supported IR emitter, and operate your amplifier without depending on the network or cloud.

  • Mitsubishi Comfort, added by @nikolairahimi
    Bring Mitsubishi Electric ductless minisplit heat pump and air conditioning systems into Home Assistant. The integration talks directly to each indoor unit over your local network for low-latency control, and only uses the Kumo Cloud account for the initial device discovery and credential retrieval. Kumo Station outdoor units are supported for temperature monitoring.

  • Ouman EH-800, added by @Markus98
    Connect your Ouman EH-800 heating controller to Home Assistant. Monitor and control your heating system locally with climate, number, select, sensor, and valve entities, perfect for automating your home’s heat distribution.

  • OVHcloud AI Endpoints, added by @Crocmagnon Add a conversation agent powered by OVHcloud AI Endpoints to Home Assistant. Pick from a curated catalog of open-weight large language models hosted in Europe, and use them with Assist to control your home and answer questions.

  • PAJ GPS, added by @skipperro
    Track the location of your PAJ GPS devices on the map in Home Assistant. The integration creates a device tracker entity for each tracker in your PAJ account, so you can build automations around their location, like notifications when a tracker arrives home or leaves a zone.

  • PTDevices, added by @frogman85978
    Monitor your PTLevel water level sensors in Home Assistant. Get notifications when tanks run low or are being used unexpectedly, and build automations to turn off pumps when levels drop or run appliances once water has been delivered.

  • Samsung Infrared, added by @lmaertin
    Control your Samsung TV with any infrared transmitter you already have set up in Home Assistant. Like the Marantz Infrared integration, it builds on the Infrared entity platform, so you can use an ESPHome device with an IR LED, or any other supported IR emitter, to operate your TV.

  • Vistapool, added by @fdebrus Monitor and control your Hayward-branded pool controllers from Home Assistant, including AquaRite, Vistapool, Sugar Valley, Poolwatch, Kripsol, and Dagen devices. The integration uses the official Hayward cloud API with real-time push updates, so changes show up instantly without polling.

  • Xthings Cloud, added by @zhangluofeng
    Control your Xthings smart home devices, starting with the U-tec Bright A19 Color smart light bulb, through the Xthings Cloud service. Contributed by Xthings themselves, with real-time status updates delivered over WebSocket push, so the state in Home Assistant stays in sync with what’s happening on your devices.

  • Yoto, added by @piitaya
    Control your Yoto audio players from Home Assistant. Play and pause cards, change the volume, skip and seek tracks, and see what is currently playing. The integration connects to your Yoto account and receives live playback updates, so changes that happen on the player show up in Home Assistant almost immediately.

Noteworthy improvements to existing integrations

It is not just new integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] that have been added; existing ones are also being constantly improved. Here are some of the noteworthy changes to existing integrations:

  • MQTT picked up two improvements: a new message expiry interval option, and subentry support extended to the date, datetime, and time entity platforms. Thanks, @jbouwh!
  • Shelly now exposes an occupancy binary sensor. Thanks, @bieniu!
  • Sonos got search, so you can now find tracks, albums, and artists across your music services straight from Home Assistant. Thanks, @PeteRager!
  • Reolink battery cameras can now connect directly to Home Assistant, without needing a Reolink Home Hub or NVR as a bridge. Not all models and features are supported yet; using a Home Hub or NVR remains the preferred method. A battery camera cannot be connected both ways at the same time. Thanks, @starkillerOG!
  • Tuya received a wave of device-specific improvements: number entities and fault codes for the Pro Breeze OmniDr dehumidifier, water-timer data points and a countdown number for the sfkzq single-valve timers, additional entities for cameras, a number entity for the WG2 alarm panel (Duosmart C30), total production sensor support for SPM02 devices, and support for the InverGo inverter pool heat pump. Thanks, @peterlang-p, @mik-laj, @davidXire, @tbouron, @ChayoteJarocho, and @focabr!
  • SwitchBot had a great release with broad device support: the Permanent Outdoor Light, Weather Station, and Lock Vision (Pro) / Lock Pro Wifi are now supported, the Meter CO2 gained a display time offset number entity, and the Air Purifier now exposes its LED settings. Thanks, @elgris, @Onero-testdev, and @zerzhang!
  • SmartThings TVs now let you select the input source, and Copper water meters expose their sensors. Thanks, @felipecrs and @joostlek!
  • Alexa Devices got two big additions: a new media player platform that exposes your Echo devices as media players, with playback, volume, and mute controls, and a new event entity that surfaces the voice commands your Echo hears so you can react to them in automations. Thanks, @jamesonuk and @chemelli74!
  • Anthropic Claude conversations now support the web fetch tool, allowing the model to retrieve and reason about live web content. Thanks, @Shulyaka!
  • Google Nest added a nest.set_fan_timer action, so you can script your thermostat’s fan timer right from Home Assistant. Thanks, @tronikos!
  • HomeWizard updated charging strategies with support for their new smart charging feature, and two new battery group sensors: target power and group power. Thanks, @DCSBL!
  • UniFi Protect added an alarm profile select entity, letting you switch between alarm profiles directly from Home Assistant. Thanks, @RaHehl!
  • FRITZ!SmartHome now ships data descriptions for all configuration fields, making setup easier to understand. Thanks, @mib1185!
  • Viessmann ViCare RadiatorActuator devices now expose a target temperature sensor. Thanks, @lackas!
  • Cambridge Audio receivers now expose a volume limit, so you can prevent overly loud playback. Thanks, @noahhusby!
  • Nord Pool picked up a binary sensor for price-based automations. Thanks, @gjohansson-ST!
  • YouTube channels now expose a video count sensor. Thanks, @nathan-osman!
  • OneDrive added a delete action so you can clean up files from your automations. Thanks, @leodrivera!
  • WeatherFlow Cloud stations now expose dedicated station-level sensors. Thanks, @jeeftor!
  • Portainer continues to grow: new system health and disk space coordinators, and recreate-container service actions. Thanks, @erwindouna!
  • Ohme EV chargers got two new controls: a state of charge input number and a solar boost switch. Thanks, @dan-r!
  • Jewish Calendar now exposes a calendar entity, perfect for tracking Jewish holidays and Shabbat in your dashboards and automations. Thanks, @tsvi!
  • BleBox picked up several improvements: a new update platform that exposes installed and latest firmware versions and lets you trigger firmware updates straight from Home Assistant, plus tilt-only mode and 180-degree tilt support for cover and shutter entities. Thanks, @bkobus-bbx!
  • PrusaLink 3D printers gained more sensors: X/Y axis position, location, minimum extrusion temperature, plus SD ready, farm mode, and connection status binary sensors. Thanks, @heikkih!
  • System Bridge gained a notify entity, so you can send desktop notifications from your automations. Thanks, @tr4nt0r!
  • Indevolt battery support expanded significantly with new battery temperature, MOS temperature, main MOS temperature, cycle count, transformer temperature, and real-time control sensors. Thanks, @Xirt and @karlbeecken!
  • Qube heat pump added a water heater entity for domestic hot water control (with a boost mode for using surplus energy), plus switches for summer mode, anti-legionella cycle, heating curve, and heating demand. Thanks, @MattieGit!
  • Eurotronic Comet Blue thermostats added a number platform exposing the eco and comfort setpoints and the temperature offset, so you can fine-tune your schedule without leaving the dashboard. Thanks, @rikroe!
  • Elk-M1 Control picked up dedicated number entities for the Elk’s configurable settings (such as timers), previously buried inside a single sensor. Thanks, @gwww!
  • Control4 now supports motorized window treatments through a new cover platform. Thanks, @nayfield!
  • IMGW-PIB added river vegetation cover sensors for emergent, floating, and submerged vegetation. Disabled by default, so you can enable just the ones you need. Thanks, @bieniu!
  • Watts Vision + received HVAC action and preset mode support, plus a new timer mode service. Thanks, @theobld-ww!
  • Kiosker gained a switch to disable the screensaver, plus a set of buttons for common kiosk actions: navigate forward, backward, and home; clear cache and cookies; print; ping; and interact with the screensaver. Thanks, @Claeysson!
  • V2C EV chargers now expose their LED lights. Thanks, @dgomes!
  • Lunatone DALI lighting controllers now expose their device status as sensors. Thanks, @MoonDevLT!
  • Satel Integra alarm zones now expose temperature sensors. Thanks, @Tommatheussen!
  • Template entities now support the device tracker platform, giving you a modern replacement for the device_tracker.see action that was deprecated last release. Thanks, @Petro31!

Integration quality scale achievements

One thing we are incredibly proud of in Home Assistant is our integration quality scale. This scale helps us and our contributors to ensure integrations are of high quality, maintainable, and provide the best possible user experience.

This release, we celebrate several integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] that have improved their quality scale:

This is a huge achievement for these integrations and their maintainers. The effort and dedication required to reach these quality levels is significant, as it involves extensive testing, documentation, error handling, and often complete rewrites of parts of the integration.

A big thank you to all the contributors involved! 👏

Now available to set up from the UI

While most integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] can be set up directly from the Home Assistant user interface, some were only available using YAML configuration. We keep moving more integrations to the UI, making them more accessible for everyone to set up and use.

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

Farewell to the following

The following integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] is also no longer available as of this release:

  • Konnected has been removed. The legacy Konnected.io integration was deprecated in Home Assistant 2025.10 and is now removed. To keep using your Konnected hardware, follow the migration guide from Konnected to flash your device with ESPHome firmware.

Other noteworthy changes

There are many more improvements in this release; here are some of the other noteworthy changes:

  • A friendlier setup for MatterMatter is an open-source standard that defines how to control smart home devices on a Wi-Fi or Thread network. [Learn more] devices. When you add any Matter device, Home Assistant now asks you to name it and assign it to an area right away, so it is ready to use the way you intend from the first moment. For contact sensors and covers, you can also pick what the device is attached to (a door, window, garage door, or something else). On iOS, the pre-filled name and device class selection require an upcoming iOS app update; until then, the previous behavior is used.
  • OpenThread Border Router 1.4 is out of beta. The OpenThread Border Router app now ships ThreadThread is a low-power mesh networking standard that is specifically designed for smart home applications. It is a protocol that defines how devices communicate. [Learn more] 1.4 by default, no beta toggle required. For now, this is mostly about bug fixes and stability, including the new built-in mDNS implementation from OpenThread, which should help resolve a class of stubborn Thread connectivity issues that previously traced back to mDNS quirks in some home routers. It also lays the groundwork for bringing the new Thread 1.4 features to Home Assistant in the near future.
  • Sirens join the Matter integration. Matter sirens (like Heiman-style smoke detectors that double as a loud alarm) are now exposed as proper siren entitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] you can switch on and off from automations and dashboards. Thanks, @lboue! 🚨
  • Bluetooth proxies are now much friendlier to battery-powered devices. Until now, every Bluetooth scanner ran in active mode, constantly polling devices and waking up your battery-powered Bluetooth sensors and trackers more often than they need to. Starting this release, the default for both the Bluetooth integration and ESPHome Bluetooth proxies is the new Auto mode, which switches to active scanning only when an integration actually needs it, and only on one scanner at a time. The result: around 95–96% less battery used for Bluetooth scanning, while everything keeps working the way it did. The Bluetooth UI catches up too, labeling each adapter as Auto (active) or Auto (passive), and the device info dialog gained a Raw advertisement field for debugging. More on the default change in the backward-incompatible changes section.
  • Firmware version in the devices table. The Devices page gets a hidden-by-default Firmware column you can switch on from the table options, making it easy to check whether a firmware update actually landed without changing the default layout. Thanks, @markvp!
  • A friendlier ZHA group page. The ZHA group create and edit screens have been rebuilt around a compact, card-based layout that keeps your devices and group settings visible together, instead of one long table you had to scroll through. Thanks, @jpbede!
  • Search by label in more places. The data tables for helpersA helper is a virtual entity you create inside Home Assistant. It is not backed by a physical device. Helpers store values, track state, or do calculations that your automations and dashboards need. [Learn more], automations, scenes, and scripts now let you filter by labelLabels in Home Assistant allow grouping elements irrespective of their physical location or type. Labels can be assigned to areas, devices, entities, automations, scenes, scripts, and helpers. Labels can be used in automations and scripts as a target for actions. Labels can also be used to filter data. [Learn more], matching the search bar that devices and entities already had. Thanks, @ildar170975!
  • The backup encryption key is harder to miss. Home Assistant already creates a backupHome Assistant has built-in functionality to create files containing a copy of your configuration. This can be used to restore your Home Assistant as well as migrate to a new system. The backup feature is available for all installation types. [Learn more] automatically before every update, but that backup is only useful if you can still decrypt it. The Backup settings page has been reorganized to put your encryption key front and center, with a clear reminder to save it somewhere safe. Losing that key is one of the most painful ways to lose access to a backup, so we want to make sure you don’t.
  • Color customization for graph cards. The statistics graph card and history graph card now let you pick a custom color per entity, both from the visual editor and in YAML. Thanks, @ildar170975!
  • Advanced mode is gone. The Advanced mode toggle on your user profile, and every feature that used to hide behind it, is now retired. We have been peeling away its gates release by release; this release finishes the job. A single toggle was never a great fit: it bundled unrelated features together and quietly suggested some parts of Home Assistant were only for “advanced” users. Neither is true. Everything that used to live behind it is now simply available to everyone by default. More background in the Open Home Foundation roadmap.

A clearer view of your home’s energy

Two quality-of-life upgrades land in the energy dashboard this release. ⚡

If you have a home battery, you can now hook up its state-of-charge sensor (the percentage one) right from Settings > Dashboards > Energy. Once it is set, the Battery node on the energy distribution card shows the current charge level alongside the energy flowing in and out, and a matching battery badge appears at the top of the energy panel so you can see at a glance how full your battery is, without leaving the dashboard. Thanks, @MindFreeze!

Screenshot of the energy distribution card showing the battery node with a 100% state-of-charge value.

The other addition is small but long-requested: you can now give your grid, solar, battery, gas, and water sources a custom name in the energy configuration. So instead of “Grid consumption” and “Grid return”, you can call them “Main meter” and “Solar export”, or whatever makes sense for your home. The names flow through to the cards, charts, and statistics, making multi-source setups (like a separate EV meter or a second water tap) far easier to tell apart. Thanks, @karwosts!

Quick links between everything you care about

Home Assistant is full of things that are related to each other: a device has entities, those entities show up in automations and scripts, automations live in areas, areas have labels, and so on. Getting from one to the next used to mean a lot of back-and-forth between settings pages.

This release threads a generous set of quick links through those views so you can jump straight to the related thing, or create a new one without losing your place:

  • Device pages now bundle related automations, scriptsA script is a saved list of steps that runs when you start it, for example, from a dashboard, with Assist, or from an automation. Unlike an automation, a script has no triggers, so it doesn’t start by itself. [Learn more], and scenesScenes capture the states you want certain entities to be. For example, a scene can specify that light A should be turned on and light B should be bright red. [Learn more] into a single Related card (instead of three separate ones), and the existing quick links section gains shortcuts to all the other places that reference the device.
  • Area pages got the same treatment, with quick links into the tables and dashboards that already filter by that area in a single step.
  • From an entity, device, or area, you can now create a new automation or script with that target already wired into a trigger, condition, or action, no copy-pasting entity IDs required. (This piece rides on top of the purpose-specific triggers and conditions Labs preview, so enable it at Settings > System > Labs to see the option.)
  • Label navigation actions now include scenes and scripts alongside automations, so a label like “morning routine” surfaces everything tagged with it, not just a subset.

Individually these are small. Together they make Home Assistant feel even more connected than it already was, with fewer detours between the pages. Thanks, @timmo001!

Screenshot of the new Add to dialog on a device page, offering shortcuts to create an automation as a trigger, condition, or action, a script, or a scene.

YAML linting inside the UI editors

A small quality-of-life improvement that should not go unnoticed. You don’t need to know or use YAML to use Home Assistant, but if you like it, or want to dive into more specific use cases, we give you the power to do so.

The YAML code editors throughout the UI now show inline linting: missing colons, unmatched quotes, and yes, that one space too many or too few in your indentation (we know, we know 😅), are all highlighted as you type, right next to the line that causes them. No more saving, hitting an obscure error, and scrolling back to find the cause.

Screenshot of the YAML editor showing inline linting with an error highlighted on the offending line.

Patch releases

We also release patch releases for Home Assistant Core. These patch releases are released on a weekly basis (on Fridays) and contain bug fixes and small improvements.

2026.6.1 - June 5

2026.6.2 - June 9

2026.6.3 - June 12

2026.6.4 - June 19

Need help? Join the community

Home Assistant has a great community of users who are all more than willing to help each other out. So, join us!

Our very active Discord chat server is an excellent place to be, and don’t forget to join our amazing forums.

Found a bug or issue? Please report it in our issue tracker to get it fixed! Or check our help page for guidance on more places you can go.

Are you more into email? Sign up for the Open Home Foundation Newsletter to get the latest news about features, things happening in our community, and other projects that support the Open Home straight into your inbox.

Backward-incompatible changes

We do our best to avoid making changes to existing functionality that might unexpectedly impact your Home Assistant installation. Unfortunately, sometimes it is inevitable.

We always make sure to document these changes to make the transition as easy as possible for you. This release has the following backward-incompatible changes:

Purpose-specific triggers (Labs)

The behavior options for the Labs purpose-specific triggers have been renamed to better match what they do: any is now each, and last is now all. The default is now each.

If you have automations that use these triggers from the Labs preview at Settings > System > Labs, open them in the automation editor and re-pick the behavior option. Any YAML you wrote against the old keys needs to be updated to the new names.

(@emontnemery - #172348)

Bluetooth

The default Bluetooth scanning mode has changed to Auto, which dynamically switches between active and passive scanning depending on what is happening. This saves around 95-96% of the battery used for Bluetooth scanning while keeping the same functionality for most setups.

If you run into issues after the upgrade, you can switch your Bluetooth adapter back to Active scanning. Go to Settings > Devices & services, open the Bluetooth integration, and select Configure on your adapter to change the scanning mode.

(@bdraco - #171985) (Bluetooth documentation)

Certificate Expiry

The error attribute on the certificate expiry sensor now returns a proper None value instead of the string "None" when there is no error.

If you use this attribute in templates, update your comparisons from == "None" to is none.

(@TomFilsell - #170878) (Certificate Expiry documentation)

ESPHome

The default Bluetooth proxy scanning mode for ESPHome devices is now Auto. Devices that were previously set to Active are automatically migrated to Auto, while devices set to Passive keep their setting.

If you need Active scanning for a specific device, change it back in the device options under Settings > Devices & services.

(@bdraco - #171996) (ESPHome documentation)

HDMI-CEC

Calling the turn_off action on HDMI-CEC switch or media player entities now sends the standard CEC standby command instead of a vendor-specific power-off command. This works more reliably across devices from different manufacturers.

If you relied on the previous behavior, you can send the original command using the hdmi_cec.send_command action with keypress 0x44 followed by 0x6c.

(@pattyland - #170206) (HDMI-CEC documentation)

IronOS

The uptime sensor for IronOS soldering irons has changed from a duration sensor (reporting seconds) to a timestamp sensor that reports when the device was started.

Update any automations or dashboards that read this sensor to work with the new timestamp format.

(@tr4nt0r - #169699) (IronOS documentation)

ONVIF

When you call the onvif.ptz action with continuous_duration: 0, the integration no longer sends a Stop command after the ContinuousMove. This lets you start a continuous movement and stop it later with a separate call.

If your automations rely on the camera stopping automatically, set continuous_duration to the desired duration in seconds.

(@yoxcu - #163173) (ONVIF documentation)

Shelly

Shelly devices used as Bluetooth scanners now support the new Auto scanning mode. Existing devices set to Active are automatically migrated to Auto for better battery and performance.

You can change the scanning mode back in the device options under Settings > Devices & services.

(@bdraco - #172008) (Shelly documentation)

SmartThings

The source attribute on SmartThings media players is now normalized to standard Home Assistant values. For example, D.IN is now reported as digital_input and BT as bluetooth.

If you use the source attribute in automations, dashboards, or templates, update them to match the new values.

(@felipecrs - #160034) (SmartThings documentation)

Template entities

The legacy template platform syntax under the individual platform keys has been removed. This syntax was deprecated in Home Assistant 2025.12 and has now reached the end of its 6-month deprecation period.

This affects the following platforms:

  • alarm_control_panel
  • binary_sensor
  • cover
  • fan
  • light
  • lock
  • sensor
  • switch
  • vacuum
  • weather

Move your template entities to the modern template: syntax. A step-by-step migration guide is available in the Removal of legacy template entities forum thread.

(@Petro31 - #169608, #169610, #169611, #169613, #169615, #169725, #169728, #169730, #169732, #169734) (Template documentation)

Tuya

The unit of measurement provided by the Tuya API now takes precedence over the default unit assigned by Home Assistant. This makes the reported value match what the Tuya app shows.

If your device reports an invalid or unexpected unit, please submit a bug report with the device details and the unit it reports and adjust it accordingly.

(@epenet - #170338) (Tuya documentation)

Velux

The deprecated velux.reboot_gateway action has been removed. Use the reboot button entity on your Velux gateway instead.

(@wollew - #169796) (Velux documentation)

If you are a custom integration developer and want to learn about changes and new features available for your integration: Be sure to follow our developer blog. The following changes are the most notable for this release:

All changes

Of course, there is a lot more in this release. You can find a list of all changes made here: Full changelog for Home Assistant Core 2026.6.

Sensereo joins Works with Home Assistant

Sensereo joins Works with Home Assistant

We’re sensing a change in the air this month as we welcome Sensereo to the Works with Home Assistant program 🎉. Specialists in environmental sensing, Sensereo brings Matter smoke and carbon monoxide (CO) alarms into the Home Assistant ecosystem – meaning more ways to keep your home open, safe, and sound.

Built from a burning question…

What happens if your smoke alarm goes off, but you’re not there to hear it? It’s an unsettling question, and one that led Roy Chen to found Sensereo in 2024. Driven to create safety devices that were equal parts reliable and resilient, Sensereo built the Matter-based MS-1 Smoke Alarm and MSC-1 Smoke and Carbon Monoxide Alarm, because as they put it: “every home deserves a system that will not fall silent when it matters most.”

It’s just good sense

For anyone unfamiliar, Matter is an open standard that lets smart home devices from different brands work together, regardless of who made them – no lock-in, no closed ecosystems. It’s exactly the kind of open, interoperable technology the Open Home Foundation exists to champion. Thread operates on the same principle: it’s an energy-efficient, wireless mesh network that connects devices directly to one another and can automatically reroute around disruptions. And for battery-powered alarms like Sensereo’s, Thread’s low-power design means fewer battery changes for devices that are always on duty.

While we’re talking about safety, it’s important to note that if your Thread network did for any reason drop out, Sensereo’s smoke and CO alarms will keep working as a “regular” alarm would – no smart home required.

That peace of mind is central to how Sensereo thinks about their products, and having caught up with the team at CES 2026 earlier this year, we can tell you it’s just the beginning. Air quality sensors and more are on the horizon, all building toward the same vision: to build an environmental intelligence system for the home that helps users understand and respond to their surroundings.

"Joining the Home Assistant ecosystem is a natural step for us, as it enables an open and user-driven platform where these capabilities can truly come together. We're excited to contribute not only our current fire safety products, but also future sensing devices that expand how people interact with and manage their living spaces."

- Roy Chen, Sensereo Founder

Devices

Most of us want our smoke alarms to be “reasonably annoying,” and Sensereo clearly agrees, because they printed this very description on the MS-1’s packaging. Which, as we love to see, has been designed sustainably – signaling the company’s commitment to one of the Open Home Foundation’s three core principles before you’ve even opened the box.

Sensereo MSC-1 smoke and carbon monoxide detector with a digital display, mounted on a wall in a modern living room. Sensereo MSC-1 smoke and carbon monoxide detector

The MSC-1 goes a step further with a nifty, built-in digital display showing real-time carbon monoxide levels. Since CO is odorless and invisible, being able to accurately check levels at a glance lets you know if there is a rise and act before it becomes an emergency – not just after an alarm sounds.

And with local integration, that kind of proactive awareness extends further still – allowing you to build around the people in your home, not just the devices. A smoke detection event could flash smart bulbs for a family member who’s hard of hearing, or send a separate alert to a caregiver. Your alarm does its job – and so does everything else around it. It’s this kind of thoughtful design that shows us Sensereo are here for all the right reasons.

Like all partners of the Works with Home Assistant program, Sensereo commits to providing long-term support and firmware updates, as well as staying connected to the community they’re helping protect 💪. As always, the MS-1 and MSC-1 have been rigorously tested and certified by our in-house team to meet our core requirements of local control, privacy, and long-term sustainability. The program’s operated by the Open Home Foundation, which is funded with the support of Home Assistant Cloud subscribers. With each new partner like Sensereo that expands the program, we’re able to give more choice, support, and peace of mind to Home Assistant users.

Breathe easy

No smoke and mirrors – just reliable home safety devices and a team that clearly gets what this community is about. Sensereo’s commitment to building open, locally controlled tech is fundamental to the Works with Home Assistant program, and why we’re so thrilled to have them on board. Check out our certified device list to see what else is there!

FAQs

Q: If I have a device that is not listed under “Works with Home Assistant” does this mean it’s not supported?

A: No! It just means that it hasn’t gone through a testing schedule with our team or doesn’t fit the requirements of the program. It might function perfectly well but be added to the testing schedule later down the road, or it might work under a different connectivity type that we don’t currently test under the program.

Q: OK, so what’s the point of the Works with program?

A: It highlights the devices we know work well with Home Assistant and the brands that make a long-term commitment to keeping support for these devices going. The certification agreement specifies that the devices must have the functionality you would expect within Home Assistant, operate locally without the need for cloud and that they will continue to do so long-term.

Q: How were these devices tested?

A: All devices in this list were tested using a standard Home Assistant Green Hub with the Home Assistant Connect ZBT-2 as the Thread Border Router and with our certified Matter integration. If you have another hub / border router set-up / integration that’s not a problem but we test against these as they are the most effective way for our team to certify within our ecosystem.

Q: Will you be adding more Sensereo devices to the program?

A: Why not! We’re thrilled to foster a close relationship with the team at Sensereo to work together on any upcoming releases or add in further products that are not yet listed here.

zunzunbee joins Works with Home Assistant

zunzunbee joins Works with Home Assistant

We are often asked if we prioritize “Big Tech” firms in the Works with program, but we’ve always been clear that newer companies are just as important to our certification as household names. Start-ups are innovators, and have their fingers on the pulse of community needs much more than brands that are only at the mercy of their investors.

That’s just one reason we’re thrilled to welcome zunzunbee to the program! They really stood out from the crowd at CES 2026 this January with their new product, the Slate Switch. This battery-powered smart scene controller simply snaps over existing switches – ideal if you rent your home, or don’t fancy working with wiring. We’re always on the lookout for devices that make setting up your smart home easier, so we’re delighted to have zunzunbee on board!

A clean slate for switches

While zunzunbee are newcomers to the market, founder Harish Raman has more than 18 years’ experience in lighting and connected systems – including senior engineering roles at Leviton and Philips. Harish designed the Slate Switch to cut the complexity sometimes found in smart homes, by bringing back simple, tactile control without any installation headaches. And because it builds on top of your existing switches rather than replacing them, it means less waste and more value from the things you already own.

"At zunzunbee, we believe smart home control should feel natural, reliable, and stay under the user's control. The Home Assistant community shares that same philosophy, with a focus on local control, flexibility, and deep customization.

Slate Switch was designed to solve everyday friction in smart homes, and we are excited to bring it to a community that values thoughtful automation and truly understands how homes should work."

- Harish Raman, Founder

Not just for newbies

The Slate Switch isn’t just a low-barrier entry point for beginners. It also tackles an issue that can crop up in more complex smart home setups: someone flipping a wall switch that controls your smart bulbs so all your carefully configured automations stop working 😩. Slate Switch keeps those bulbs permanently powered, while giving everyone in the household a familiar, physical button right where they expect it. If you prefer, you can also make use of the snap-on snap-off magnetic function to pick up the switch and take it with you. You can use it as a remote, and each of the zones can support both a tap or long-press action, making it a perfect partner to have in a pocket.

A cost-effective device is also a low-risk way to experiment, with plenty of possibilities to explore without a big outlay. And once you’re hooked, multipacks of two or four are available so you can roll them out across your home.

The right buzz

Two bs and a lot of zs: it’s no coincidence that zunzunbee uses Zigbee for the Slate Switch. If you’ve not heard of Zigbee before, it’s an open wireless standard built for low-power smart home devices – which describes the Slate Switch to a tee, since it runs on a single CR2450 coin cell with up to two years of battery life.

Zigbee works entirely locally with no dependency on the cloud, so your smart home stays in your hands and the Slate Switch keeps working even if you lose internet connection. If you want that same security and control when you’re away, Home Assistant Cloud offers fully encrypted remote access – and as an added bonus 😉 subscribing directly funds the Open Home Foundation’s fight for privacy, choice and sustainability for smart homes (and this very program too!).

By choosing Zigbee, zunzunbee support that fight… and they’ve been proactive contributors to our community as well. They’ve published official Home Assistant blueprints to make setup as smooth as possible, and contributed code to Zigbee2MQTT (another popular community-maintained open source project) on GitHub. It’s exactly what we love to see from our partners!

The Slate Switch simply snaps over your existing wall switches. The Slate Switch simply snaps over your existing wall switches.

Devices

As with every device in the Works with Home Assistant program, the Slate Switch has been through our full certification process: tested for performance, reliability, and compatibility with our principles. By joining the program, zunzunbee also commits to providing long-term support and firmware updates, so you can purchase with confidence.

It may be just one small device, but it gives you mighty choice! 💪The Slate Switch arrives as a blank canvas, with two sheets of stickers so you can label and arrange up to eight tappable zones exactly how you want them, and reconfigure just as easily if your needs change. And it’s not only about switching scenes or triggers: there’s a built-in ambient temperature sensor in the switch too, opening up even more automation possibilities straight out of the box.

Jimmy over at the Automated House YouTube channel has a great hands-on walkthrough if you want to see it all in action.

Ready to make the switch?

We love it when a fresh idea from a new face lands in our orbit (and passes muster!) – and we have a feeling the Home Assistant community is going to have a lot of fun with this one. Whether you’re just dipping your toe into smart home control, or looking for new ways to push your existing setup further, the Slate Switch has you covered. Check out our certified device list to see what else is out there!

FAQs

Q: If I have a device that is not listed under “Works with Home Assistant” does this mean it’s not supported?

A: No! It just means that it hasn’t gone through a testing schedule with our team or doesn’t fit the requirements of the program. It might function perfectly well but be added to the testing schedule later down the road, or it might work under a different connectivity type that we don’t currently test under the program.

Q: OK, so what’s the point of the Works with program?

A: It highlights the devices we know work well with Home Assistant and the brands that make a long-term commitment to keeping support for these devices going. The certification agreement specifies that the devices must have the functionality you would expect within Home Assistant, operate locally without the need for cloud, and that they will continue to do so long-term.

Q: How were these devices tested?

A: All devices in this list were tested using a standard Home Assistant Green as a hub with the Home Assistant Connect ZBT-2, and with ZHA, our Zigbee integration. If you have another hub/adapter set-up/integration that’s not a problem, but we test against these as they are the most effective way for our team to certify within our ecosystem.

Q: Will you be adding more zunzunbee devices to the program?

A: Why not! We’re thrilled to foster a close relationship with the team at zunzunbee and we’re excited to see how they grow their product line in the future. We’re looking forward to working together on any upcoming releases or adding in further products that are not yet listed here.

2026.5: We're on the same frequency now 📡

Home Assistant 2026.5! 🎉

What a few weeks it has been! Earlier this month, we hosted State of the Open Home 2026 live in Utrecht, the Netherlands. A big chunk of that day was dedicated to something we deeply care about: building in the open, and how we’re going to take that even further from here on out. 💙

Building in the open isn’t just about source code on GitHub. It’s about doing the planning, the decision-making, and the prioritizing out where everyone can see it, follow along, and join in. And “joining in” doesn’t mean you have to write a single line of code or even consider yourself technical. Sharing how you use Home Assistant, telling us what frustrates you, what you wish existed, voting on ideas, helping a fellow user on the forums or Discord, translating, writing documentation, or simply leaving a thoughtful comment on a roadmap item: it all counts, and it all shapes where this project goes next. 🤝

A great first step in that direction also went live this month: our roadmap is now public. You can go browse it, see what we’re working on, what’s next, and (most importantly) comment on it, share your thoughts, and help shape it. We talked about all of this, and a lot more, on stage. So if you weren’t able to join us live, please go watch the recording. It is genuinely worth your time, and it’s the best invitation I can give you to come build the Open Home with us. 🗺️

Now, on to this release. My personal favorite this month is maybe a bit unexpected, considering it sits all the way at the end of this post: the completely reworked templating documentation. I know, I know, “documentation” doesn’t exactly scream headline feature. But hear me out: making Home Assistant more approachable is one of our biggest missions this year, and darn good documentation is a big part of that. We’ve expanded our documentation team and are investing heavily in this, and the new templating docs are the very first taste of what’s to come. I’m really proud of where this is heading. 📚

That said, I’d be lying if I said I wasn’t also super stoked about radio frequency (RF) support landing this release. Just like last month’s infrared (IR) release, this brings a massive category of devices into Home Assistant natively: blinds, garage doors, ceiling fans, RF outlets, doorbells… you name it. Sure, there have always been clever workarounds and custom integrations to bridge some of these, but having it built right into the platform changes the game completely. There is so much cool stuff going on around this, and we’re only getting started. 📡

And there’s plenty more: a new Maintenance dashboard for your batteries, serial ports proxied over the network with ESPHome, new tile card features for media players, durations for purpose-specific automation triggers and conditions, redesigned more-info dialogs for vacuums and lawn mowers, autocomplete in the code editors, and 12 new integrations! 🚀

Enjoy the release!

../Frenck

A huge thank you to all the contributors who made this release possible! And a special shout-out to @piitaya who helped write the release notes this release. Also, @RaHehl, @balloob, @Tommatheussen, and @mib1185 for putting effort into improving its contents. Thanks to them, these release notes are in great shape. ❤️

Radio frequency joins infrared as a first-class citizen

Last release, we welcomed infrared as a first-class citizen of Home Assistant, opening the door to all those TVs, air conditioners, and other appliances still controlled by their little IR remote. This release continues that story with another old-school protocol: radio frequency (RF). 📡

Think about all the RF-controlled devices already living in your home: motorized blinds and curtains, garage door openers, ceiling fans, wireless wall switches, RF outlets, doorbells, and yes, those holiday string lights. Most of them haven’t had a great way into your smart home, because they don’t speak Wi-Fi, Bluetooth, Zigbee, Z-Wave, or Matter. They speak RF, and only RF. There have always been workarounds and custom integrations to bridge some of them, but with this release, Home Assistant speaks RF natively.

Meet the Radio frequency platform

The new Radio frequency integration follows the exact same pattern as last release’s infrared platform. It’s an entity type that represents an RF transmitter, like an ESPHome-powered device with a sub-GHz transmitter attached. You don’t set it up directly. Instead, other integrations use it to send RF commands on your behalf, and you simply pick which transmitter they should use.

Screenshot of an RF device setup dialog, with a Radio frequency transmitter dropdown.

Two transmitter integrations support this from day one:

  • ESPHome, so any ESPHome device with a compatible sub-GHz transmitter can act as your home’s RF bridge. Most modules cover all common sub-GHz bands (315, 433, 868, and 915 MHz), so a single transmitter can talk to a wide range of devices. For DIY, we recommend the inexpensive CC1101 module (around $10), which you wire up to an ESP32 yourself. There’s a step-by-step guide on how to build one in the ESPHome documentation.
  • Broadlink, so any Broadlink RM4 Pro you may already own can be reused as an RF transmitter for the new integrations. The RM4 Pro is the only model in the RM4 line with RF support, and it’s limited to the 433 MHz band.

On the other side, device-specific integrations use the platform to actually do something useful. Two are shipping in this release:

  • Honeywell String Lights, to turn your RF remote-controlled Honeywell string lights on and off from Home Assistant, with all the automation magic that brings. 🎄
  • Novy Cooker Hood, to control the light and the extractor fan on your Novy cooker hood. These are typically ceiling-mounted, so an RF remote (and now Home Assistant) is the only practical way to reach them. 💨
Screenshot of an RF-controlled device page in Home Assistant, showing controls and recent activity.

Why this is a big deal

Like infrared, this is about more than a single new feature. A large chunk of perfectly good RF-controlled hardware out there has no smart home story at all. By giving Home Assistant a standard way to talk to RF devices, every new consumer integration built on top instantly works with every transmitter integration. Add a new ESPHome RF proxy somewhere in the house, and your blinds, your fan, and your string lights all just work. ✨

This is a great fit with the values of the Open Home Foundation, and especially sustainability. 🌱 Instead of throwing out a working motorized blind because it’s “dumb”, you can integrate it. Instead of replacing your RF outlets with new Wi-Fi ones, you can keep using them. It’s another way to extend the life of devices you already own, and to reduce electronic waste. ♻️

A sneak peek at what’s coming

You may have caught a glimpse of where this is heading at the State of the Open Home 2026. Nabu Casa is a commercial partner of the Open Home Foundation, running Home Assistant Cloud and producing devices like the Home Assistant Green and the Home Assistant Voice Preview Edition. They’ve been working on a new device, currently going by the codename Project Blast, that brings infrared and radio frequency capabilities together in a single, polished package. The new Radio frequency platform in this release is part of the foundation that makes products like that possible. Stay tuned. 👀

If this tickles your interest, watch Carl from Nabu Casa explain what’s coming in this segment of the State of the Open Home 2026. 📺

We’re excited to see where the community takes this. The Radio frequency platform is designed to grow: more transmitter integrations, more device integrations, and more protocols over time.

This work is part of an Open Home Foundation roadmap opportunity to make radio frequency a first-class citizen of Home Assistant. Mission accomplished. 🎉

Serial ports over the network with ESPHome

We have a bit of a theme going on. Last release, infrared became a first-class citizen of Home Assistant. This release, radio frequency joined the party. And now, there’s another way you can put an ESPHome device somewhere in your home and let Home Assistant talk to things through it: serial ports. 🔌

If you’ve ever set up a Bluetooth proxy, the idea will feel familiar. Plenty of smart home gear talks over a serial connection, like energy meters with a P1 port, or that classic Denon receiver with the new Denon RS-232 integration shipping in this release. Until now, the device producing those serial signals had to be physically plugged into the same machine running Home Assistant, or wired up over a long, unwieldy cable. Not anymore. ✨

With the new serial proxy support in ESPHome, any serial port plugged into (or built into) an ESPHome device can now be exposed over your network and used by Home Assistant as if it were sitting right next to it. Drop an ESP somewhere convenient, plug your serial device into it, and Home Assistant takes care of the rest. 🪄

Screenshot of the new serial port selector in the UI, showing local USB serial ports and remote ESPHome serial proxies side by side.

Where this comes in handy

This is great news if you’ve ever struggled to put a serial-connected device exactly where you wanted it. A few practical examples:

  • Connect to receivers, projectors, or other AV gear over RS-232 from anywhere on your network.
  • Read your smart meter’s P1 port from the meter cabinet, even if your Home Assistant server lives upstairs in a closet. ⚡

Like our existing Bluetooth, infrared, and radio frequency proxies, this is also a sustainability win. ♻️ Instead of replacing perfectly good serial-only equipment with newer Wi-Fi versions, you can keep using what you already have. That energy meter, that older AV receiver, that industrial sensor: they all just work, over the network. 🌱

Under the hood

Behind the scenes, this release rewires Home Assistant’s serial-port handling top to bottom to make serial proxies a natural part of the system. Some highlights for the curious:

  • All of Home Assistant has been migrated to a modern, async-first serial driver called serialx, replacing the older pyserial library that Home Assistant has used for years. It’s designed for the way Home Assistant works today and adds support for new connection types, including ESPHome serial proxies, transparently.
  • Integrations that need a serial port now get a new, polished serial port selector in the UI. It lists local USB serial ports and remote ESPHome serial proxies side by side, with friendly names. The list even updates live, so a USB device you plug in while the dropdown is open shows up right away.
  • Common integrations that talk over serial pick up serial proxies for free. The new Denon RS-232 integration uses it from day one, and the existing Russound RIO integration has been migrated to serialx as well, so it can now talk to your multi-room audio gear over an ESPHome serial proxy too.

If you’re an integration developer (or maintain a custom component) talking over serial, head over to the migrating from pyserial to serialx developer blog post to read all about how to take advantage of this. 🛠️

A first step, not the finish line

Let’s be upfront about one thing: getting a serial proxy up and running today is not a one-tap experience yet. To use this in your home, you’ll need to build your own ESPHome device with the serial_proxy component configured for the UART your serial device is wired to. That means writing an ESPHome YAML configuration, flashing the firmware, and connecting the hardware. It’s very doable, but it is on the technical side. 🤓

We think that’s okay, because this release is the foundational milestone that makes everything else possible. The plumbing is now in place across Home Assistant, ESPHome, and the integrations that need it. From here, we (and the broader community) can build on top of this with friendlier setup flows, ready-made hardware, and pre-built ESPHome configurations. Just like Bluetooth and infrared proxies before it, the experience will get more approachable release after release. 🚀

This work is part of an Open Home Foundation roadmap opportunity to make serial proxying a first-class citizen of Home Assistant. Another roadmap milestone, checked off the list. ✅

More from your built-in dashboards

Over the past few releases, Home Assistant has been quietly growing a family of built-in dashboards that you don’t have to build yourself. It started with the Home dashboard back in 2025.9, and grew with dedicated Lights, Climate, and Security dashboards in 2025.11. This release adds a new one and upgrades an existing one. 🏠

Stay on top of your batteries with the new Maintenance dashboard

Keeping your smart home running smoothly is a side of home automation that doesn’t always get the spotlight. We’ve all been there: that motion sensor in the hallway that suddenly stops triggering the lights one evening, only to discover days later that its battery had died. 🪫 Wouldn’t it be nice to spot that before it becomes a problem? The new built-in Maintenance dashboard gives questions like that a home of their own. 🧰

Screenshot of the new Maintenance dashboard showing battery entities grouped by area.

The dashboard focuses on what is probably the most-requested view of all: your batteries. It automatically discovers every battery entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] in your home and lays them out grouped by area, with low ones highlighted so you can spot the ones that need swapping at a glance. No more digging through entity lists or building your own dashboard for it. 🔋

This is a community contribution from @Brookke, who built it from the ground up. Big thanks for adding such a useful new dashboard to Home Assistant! 👏

Tip

Are you a developer? Each one of these built-in dashboards is powered by a dashboard strategy: a piece of code that generates a complete dashboard on the fly, tailored to your home. Starting with this release, you can register your own custom dashboard strategies from a custom integration or frontend module, and share them with the community.

Imagine a strategy that builds the perfect dashboard for your plants, your 3D printers, your home lab, or your aquarium, automatically, for anyone who installs it. We can’t wait to see what you create. 🌱

Activity log on the Security dashboard

The built-in Security dashboard also gets a nice upgrade this release: a new Activity sidebar that shows you a live, 24-hour log of everything happening with your security-related entities. Cameras, locks, alarm panels, motorized covers, door and window sensors, and the comings and goings of the people in your home, all in one place. 🔓

It’s a quiet upgrade you’ll feel every day: at a glance, you can see if a door was opened, if someone arrived home, or if the front camera spotted motion, without having to dig through the logbook or build a dashboard for it yourself. The sidebar appears automatically on wider screens whenever the Logbook integration is enabled (it is, by default).

Screenshot of the Security dashboard with the new Activity sidebar showing recent events.

More for the dashboards you build yourself

Building your own dashboard is one of the most rewarding parts of Home Assistant. The best part: you can build the entire thing right in the UI, by dragging and dropping cards into place. You don’t need to be technical, you don’t need to know YAML, and you don’t need to touch a single line of code to make something that looks great and works exactly the way you want.

Of course, the dashboards you craft yourself get plenty of love this release too. A new card for one-tap shortcuts and fresh tile card features for your media players. 🎨

Introducing the shortcut card

Dashboards are the front door to your smart home, and sometimes the most useful thing you can put on them isn’t an entity, but a quick way to get somewhere. Jump to your energy dashboard. Open the camera view. Launch Assist. Open the manual in a new tab. The new shortcut card makes building those one-tap launchers a breeze. ⚡

Screenshot of a dashboard with several shortcut cards.

It looks and feels like a tile card, but instead of representing an entity, it triggers an action when you select it. You can pick from:

  • Navigate to another dashboard, view, area, or device page.
  • Open a URL in a new tab, perfect for linking out to your router, NAS, or documentation.
  • Launch Assist, so your voice assistant is always one tap away.
  • Perform an action, like turning off all the lights when you head out the door. 🌙

The card is smart about defaults: pick a navigation target and it picks up the title, icon, and color of that destination automatically. Pick Launch Assist and it suggests a microphone icon. You can override any of it, of course; set your own label, description, icon, and color, and pick between a horizontal or vertical layout.

Screenshot of the shortcut card configuration dialog.

The shortcut also comes as a badge, so you can drop the same one-tap actions into the badge row at the top of any view. Same options, same smart defaults, just in a more compact form.

New tile card features for media players

The tile card is one of the most flexible building blocks in Home Assistant dashboards, and this release expands what it can do for media players. Two new card features and a more flexible playback feature give you a lot more choice in how your media player tiles look and behave. 🎶

Screenshot of two media player tile cards showing the new playback and source features.

The first new feature is select source: a dropdown right on the tile that lets you switch the input or source on your media player. HDMI 1, the Spotify input on your receiver, that one obscure radio station you actually like; it’s all one tap away. The second is select sound mode, with the same dropdown experience for picking modes like Movie, Music, or Night on receivers and AV gear that support it.

And the existing playback card feature got a long-requested upgrade: you can now pick exactly which buttons appear and in what order. Mix and match from on/off, play, pause, play/pause, stop, previous track, and next track to build a remote that fits your media player perfectly. No more turn-on button on a TV that doesn’t need one, no more missing the next-track button on your speaker. 🎚️

Screenshot of the tile card playback feature editor with reorderable control chips and a media player preview.

Purpose-specific automation triggers & conditions

The journey to make automationAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more] building feel natural continues. Ever since Home Assistant 2025.12 introduced purpose-specific triggers and conditions, every release has chipped away at the gap between how you describe your home in your head (“when a light turns on”, “if the climate is heating”) and what you actually had to type into an automation. Last release added a whole batch of cross-domain triggers and conditions. This release adds something the entire community has been asking for: time. ⏱️

Automations that finally understand “for a while”

Reading back the feedback we’ve received in the months this has been in Home Assistant Labs, one request stood out above all others: durations. Almost every “when motion is detected” automation in the wild secretly wishes it could say “when motion has not been detected for the last 5 minutes”. And almost every “if a door is open” condition really wants to be “if a door has been open for at least 10 minutes”. 🚪

Now they can. On the trigger side, a new for field has landed across a wide range of state-based purpose-specific triggers, from motion and occupancy to doors, windows, lights, switches, climate, covers, and many more. Pick a trigger, set how long the situation has to hold, and you’re done. No more wrestling with template helpers or YAML for: keys hidden in code views to express something this fundamental.

Screenshot of a purpose-specific trigger in the automation editor with the new for duration field.

On the condition side, duration is now available across the entire family of entity conditions in Labs. Whether you’re checking on motion, a door, a light, a switch, a climate, a media player, or anything else, you can now ask for the state to have held for a given amount of time before the condition is considered true. Same story: no template helpers, no YAML detour.

Screenshot of a purpose-specific condition in the automation editor with the new duration field.

A few examples of what this unlocks:

  • “When the front door has been open for more than 2 minutes” → close-the-door reminder. 🔔
  • “When motion has not been detected in the office for 15 minutes” → turn off the lights. 💡
  • “If the bedroom window has been closed for at least an hour” → only then start the air purifier. 🌬️
  • “When a garage door has been open for more than 30 minutes after sunset” → send a notification. 🌙

It’s a small-looking addition with an outsized impact: a whole category of “almost possible” automations just became easy to put together.

A few more triggers and conditions to play with

Beyond the new sense of time, this release sprinkles a few more handy purpose-specific building blocks across your house.

If you keep an eye on updates waiting to be installed, two new conditionsConditions check whether something is true at that moment, for example, whether a door is closed. You can use them in automations and scripts. If a condition is not met, the actions that come after it in the same sequence do not run. At the top level of an automation or script, this stops the automation or script. [Learn more], is available and is not available, let an automation branch on whether something is pending, without templating the answer yourself.

Your media players got chatty: triggers fire when something starts playing, pauses, turns on, or turns off, and now also when a player is muted or unmuted, when its volume changes, or when the volume crosses a threshold you set. Conditions follow the same beat with is muted, is unmuted, and a numeric volume check. Perfect fuel for “dim the lights when the movie starts”, “pause the music when the doorbell rings”, or “only send the loud TTSTTS (text-to-speech) allows Home Assistant to talk to you. [Learn more] announcement if the speaker is below 30%”. 🎬🔇

Your remotes picked up matching is on and is off conditions, finishing what last release’s triggers started. And your to-do lists can now answer two questions an automation might have: are all items completed, or are there still incomplete items on the list? Great for end-of-day check-ins or those “did I forget to feed the cat” moments. 🐱

Your timers got a whole lifecycle of new triggersA trigger is the part of an automation that makes the automation run when a specific change happens, for example, when the sun sets or a door opens. [Learn more]: started, paused, restarted, cancelled, and finished. So that 20-minute “tea is ready” timer can now actually tell your kitchen lights to flash, and your “kids screen time” timer can announce when it’s running, paused, or up. There’s also a new time remaining trigger that fires when a running timer reaches a remaining duration you pick: think a gentle “five minutes left” warning before the screen time timer runs out. ⏲️

And finally, a new doorbell rang trigger. Doorbell event entities now speak a shared language, so a single trigger lights up regardless of which brand sits at your front door. 🔔

Changes to existing triggers and conditions

As some of the very first, we’ve added purpose-specific triggers and conditions for Person entities and Device Tracker entities separately. More recently, we’ve decided we want to go for a more ergonomic cross-domain approach. Thus, the triggers entered_home and left_home and also the conditions is_home and is_not_home got removed from the Person and Device Tracker. They will get successors in one of the upcoming releases.

Try it out!

Purpose-specific triggers and conditions are still a preview feature in Home Assistant Labs, but with each release the rough edges get smoother, and we’re closing in on having it feature complete. If you haven’t given it a spin yet, head over to Settings > System > Labs, switch it on, and let us know what you think. Your feedback is genuinely shaping where this lands; building in the open at work. 💚

Integrations

Thanks to our community for keeping pace with the new integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] and improvements to existing ones! You’re all awesome 🥰

New integrations

We welcome the following new integrations in this release:

  • Denon RS-232, added by @balloob
    Control your Denon receiver locally over its RS-232 serial port. Connect your receiver using a serial cable or a USB-to-serial adapter for push-based state updates, without depending on the network or the cloud.

  • Duco, added by @ronaldvdmeer — launching at 🏆 platinum quality
    Monitor and control your Duco demand-controlled ventilation system locally from Home Assistant. Track CO₂, humidity, and other sensor data, and adjust ventilation, all over your local network.

  • EARN-E P1 Meter, added by @Miggets7
    Connect your EARN-E energy monitor to Home Assistant for real-time insights into your smart meter’s energy and gas data. The device pushes its readings over your local network, so no cloud or polling is involved.

  • Eurotronic Comet Blue, added by @rikroe
    Integrate your Eurotronic Comet Blue (and similar) Bluetooth radiator thermostats with Home Assistant. Read thermostat status and adjust temperatures locally, without a hub or cloud connection. Compatible thermostats include Sygonix HT100 BT, Xavax Hama, and Lidl Silvercrest RT2000BT.

  • Fumis, added by @frenck — launching at 🏆 platinum quality
    Bring your Fumis-based pellet stove into Home Assistant through the Fumis online service. Monitor your room temperature, set a comfortable target temperature, and turn your stove on or off. Pellet stoves, pellet boilers, and hybrid wood and pellet stoves equipped with a Fumis WiRCU Wi-Fi module are sold under many different brands, including Austroflamm, EcoSpar, HAAS+SOHN, and Heta.

  • Honeywell String Lights, added by @balloob
    Control your Honeywell radio frequency (RF) remote-controlled string lights from Home Assistant. Uses the new Radio frequency entity platform, so you’ll need a compatible sub-GHz RF transmitter (for example, an ESPHome device) to send commands.

  • Kiosker, added by @Claeysson
    Monitor your Kiosker web kiosks running on iPad or iPhone from Home Assistant. Kiosker turns your iOS device into a powerful, easy-to-use web kiosk, perfect for dashboards on the wall.

  • Novy Cooker Hood, added by @piitaya
    Control the light and the extractor fan on your Novy cooker hood from Home Assistant. Novy hoods are typically ceiling-mounted, with no buttons within reach, so an RF remote (and now Home Assistant) is the only practical way to control them. Uses the new Radio frequency entity platform, so you’ll need a compatible sub-GHz RF transmitter (for example, a Broadlink RM4 Pro or an ESPHome device) to send commands.

  • OMIE, added by @luuuis — launching at 🥈 silver quality
    Bring Iberian Peninsula day-ahead electricity spot prices from OMIE into Home Assistant. Sensors expose the current and next-hour prices for both Spain and Portugal, perfect for smarter automations around when to run your dishwasher, charge your EV, or heat your water.

  • Radio frequency, added by @balloob
    A new entity type that represents a sub-GHz radio frequency (RF) transmitter, like an ESPHome device with a CC1101 module attached. You don’t set this integration up directly; instead, other integrations use it to send RF commands to devices such as remote outlets, garage doors, and string lights. The new Honeywell String Lights and Novy Cooker Hood integrations are the first to make use of it. Read more about it in the Radio frequency joins infrared as a first-class citizen section above.

  • Teleinfo, added by @esciara — launching at 🥈 silver quality
    Read electricity consumption data from French Linky smart meters and older electronic meters using the Télé-Information Client (TIC) protocol. Connect a Teleinfo USB adapter to your meter’s TIC output to monitor real-time energy indexes, apparent power, instantaneous current, and tariff information, all locally.

  • Victron GX, added by @tomer-w — launching at 🏆 platinum quality
    Connect your Victron Energy GX devices, like the Cerbo GX, Venus GX, and Color Control GX, to Home Assistant over MQTT. Get real-time monitoring and control of your Victron system, including inverters, solar chargers, battery systems, grid meters, and EV chargers.

Noteworthy improvements to existing integrations

It is not just new integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] that have been added; existing ones are also being constantly improved. Here are some of the noteworthy changes to existing integrations:

  • MQTT picked up three new platforms this release: time, datetime, and date entities, giving you even more building blocks for your MQTT-based devices and automations. Thanks, @jbouwh!
  • Matter added support for Matter radon sensors, so radon-monitoring devices that speak Matter now show up natively in Home Assistant. Thanks, @dnicoara!
  • ESPHome water heater entities now support away mode, matching what physical and smart water heaters in your home offer. Thanks, @tronikos!
  • Shelly added tilt and rotation binary sensors for the Shelly Cury, and the Shelly Wall Display now exposes a media player entity for built-in audio playback. Thanks, @bieniu!
  • Sonos got two new switches for TV Autoplay and Ungroup on Autoplay, giving you fine-grained control over how home theater speakers behave when the TV turns on. Thanks, @arsenicks!
  • Apple TV now supports keyboard text input services, so you can send text to your Apple TV right from Home Assistant. No more hunting for letters on the on-screen keyboard. Thanks, @kroehre!
  • Music Assistant received a big batch of player options: number, text, switch, and select entities are now exposed for everything Music Assistant players make configurable. On top of that, sound mode support has landed too. Thanks, @fmunkes!
  • Roborock owners with a Q10 S5+ now get dedicated sensor and select entities for their vacuum, and Q7 vacuums gained cleaning route control. Thanks, @lboue and @Lash-L!
  • WLED now supports per-segment freezing, letting you pause effects on individual LED segments. Thanks, @tgechev!
  • Broadlink can now act as an infrared emitter on the new infrared platform that landed last release, so your Broadlink RM-series devices can be reused as native IR transmitters for other integrations. Thanks, @YuvalWS!
  • Home Connect added microwaves to the related appliance types for several sensors, expanding coverage of supported devices. Thanks, @Diegorro98!
  • OpenAI Conversation added support for OpenAI’s new GPT-5.5 conversation model and the gpt-image-2 image generation model, which is now the recommended default for image generation. Thanks, @Shulyaka!
  • SMLIGHT SLZB devices now expose an infrared platform, so they can be used as IR transmitters with the new infrared entity platform. Thanks, @tl-sl!
  • SwitchBot Air Purifier devices gained fan speed percentage control and a button to toggle the built-in light sensor. Thanks, @zerzhang!
  • Tado now uses a dynamic update interval, automatically adjusting how often it polls based on activity to give you fresher data when something is happening. Thanks, @erwindouna!
  • SolarEdge got a whole set of new battery storage sensors. There are aggregate sensors for the total daily charge and discharge energy across your batteries, and per-battery sensors for daily charge and discharge energy, state of charge, and current power. All new sensors are disabled by default, so you can enable just the ones you need. Thanks, @it-rec!
  • HTML5 Push Notifications got a major upgrade: a new event platform, a new html5.send_message entity action, and the integration is now correctly classified as a notification service. Thanks, @tr4nt0r!
  • Anthropic added support for Anthropic’s new Claude Opus 4.7 model. Thanks, @Shulyaka!
  • Immich media source now exposes your favorite collection, making it easy to pull starred photos straight into your dashboards. Thanks, @mib1185!
  • Transmission gained an event entity for torrent events, perfect for triggering automations when downloads finish. Thanks, @andrew-codechimp!
  • Portainer continues its rapid expansion: new buttons for pruning volumes, killing containers, recreating containers, and full volume management. Thanks, @erwindouna!
  • LG Netcast got a new action to send remote control commands, letting you script TV navigation and input. Thanks, @mithomas!
  • Subaru vehicles that support remote start now have a dedicated start/stop button entity. Thanks, @masterkoppa!
  • London Underground expanded beyond the tube: it now reports status for the Trams and the IFS Cloud Cable Car as well. Thanks, @prpr19xx!
  • UniFi Access picked up several improvements: a select entity for temporary door lock rules, UA-HUB-Door support, entry/exit direction on access events, automatic console discovery via UniFi Discovery, and a warning when a UniFi Protect API key is used during setup. Thanks, @imhotep and @RaHehl!
  • UniFi Protect is turning into your alarm hub: it gains an alarm control panel, UniFi PoE Siren / UniFi SuperLink Siren sirens, and switches for the new UniFi SuperLink Relay — a device that reaches up to 2 km over LoRa. All of these new features require UniFi Protect 7.1 or later. Thanks to Ubiquiti for the public API improvements, and to @RaHehl for bringing it all to Home Assistant!
  • WaterFurnace geothermal systems now expose a climate entity, alongside new energy statistics so you can track your system’s energy use over time. Thanks, @masterkoppa!
  • OpenDisplay Flex e-paper devices now expose new diagnostic sensors driven by passive Bluetooth Low Energy advertisements: a battery percentage and battery voltage sensor for battery- and solar-powered devices, and a chip temperature sensor. Thanks, @g4bri3lDev!
  • Satel Integra now supports encrypted connections, keeping your alarm panel communications secure over the network. Thanks, @Tommatheussen!

Integration quality scale achievements

One thing we are incredibly proud of in Home Assistant is our integration quality scale. This scale helps us and our contributors to ensure integrations are of high quality, maintainable, and provide the best possible user experience.

This release, we celebrate several integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] that have improved their quality scale:

This is a huge achievement for these integrations and their maintainers. The effort and dedication required to reach these quality levels is significant, as it involves extensive testing, documentation, error handling, and often complete rewrites of parts of the integration.

A big thank you to all the contributors involved! 👏

Now available to set up from the UI

While most integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] can be set up directly from the Home Assistant user interface, some were only available using YAML configuration. We keep moving more integrations to the UI, making them more accessible for everyone to set up and use.

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

Farewell to the following

The following integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] is also no longer available as of this release:

  • LANnouncer has been removed. The companion Android app is no longer available, which made the integration impossible to install or use. It was deprecated in Home Assistant 2025.10 and is now removed. If you were still using it, you’ll need to look for an alternative notification integration.

Other noteworthy changes

There are many more improvements in this release; here are some of the other noteworthy changes:

  • Mobile app notifications are now entities. The Mobile app integration now exposes a notificationYou can use notifications to send messages, pictures, and more, to devices. [Learn more] entity for each of your devices, on top of the existing notify actions. That means you can group your phones and tablets together using the regular group helper right from the user interface, and send a single notification to all of them at once. No YAML, no scripting, no scrolling through a list of targets. Thanks, @tr4nt0r! 📱
  • A search bar on the integration detail page. Integrations with a lot of devices and entries (think Z-Wave, Zigbee, or your sprawling pile of ESPHome devices) now have a search bar at the top, matching across entry titles, device names, manufacturers, models, and areas. 🔍
  • Dashboard visibility conditions can now refer to the card’s own entity. State and numeric state visibility conditions get a new Current entity option that automatically follows whichever entity the card is bound to. No more re-typing entity IDs, and your card stays reusable.
  • Dashboard visibility conditions now support attributes. State and numeric state visibility conditions on cards can now check an entity attribute instead of just the state, catching up with their automation counterparts.
  • Reload your shell commands without restarting. A new reload action lets you re-read your Shell command YAML configuration on the fly. One less reason to restart Home Assistant. Thanks, @potelux!
  • Template vacuums learned about rooms. Vacuums you build with the Template integration can now expose their segments (rooms) and a clean_segment action, plugging straight into the new Clean by area view. 🧹 Thanks, @gustavakerstrom!
  • More unit love for sensors. Frequency sensors now support millihertz (mHz) through gigahertz (GHz) with automatic conversion between them, and electric current sensors gained microamperes (µA). Thanks, @32u-nd, @Lamarqe, and @Phunkafizer!

A modern more-info dialog for vacuums and lawn mowers

When you tap on an entity in your dashboard, the more-info dialog that pops up is one of the most-used surfaces in Home Assistant. This release, two of them get a fresh new look: vacuums and lawn mowers. 🧹🌱

Screenshot of the redesigned vacuum more-info dialog with the new illustration and action buttons.

The redesigned vacuum dialog leads with a friendly new illustration of your vacuum that comes to life with state-driven animations: it spins while cleaning, glides home while returning, sits quietly when docked, and shakes when something’s wrong. Battery moved up into the header where you can spot it at a glance, and the action buttons (start, pause, return to dock) are now lined up in a single, consistent row.

The biggest functional addition is a brand new Clean by area view. Many modern robot vacuums let you ask them to clean a specific room, but until now, there was no built-in way to do that from the dialog. You can now map your Home Assistant areasAn area in Home Assistant is a logical grouping of devices and entities that represents a room or space in your home, such as the living room, kitchen, or garage. [Learn more] to the rooms your vacuum knows about, and start a cleaning job for one or more areas right from the dialog. If you haven’t set up a mapping yet, the dialog walks you through it with a friendly empty state.

Screenshot of the new Clean by area view in the vacuum more-info dialog.

Lawn mowers got the same love. The redesigned lawn mower dialog brings the same fresh illustration with state-driven animations (mowing, returning, docked, error), the same battery-in-the-header layout, and the same unified action button row. Whether your robot is busy on the carpet or busy on the lawn, the experience now feels the same.

Screenshot of the redesigned lawn mower more-info dialog with the new illustration and action buttons.

This work delivers on two Open Home Foundation roadmap opportunities: refined more info screen for vacuum cleaners and refining the more info screen for lawn mowers. Two roadmap items, one redesign. ✅

New styling for toggles

Toggles across Home Assistant got a small but lovely makeover this release. Every toggle in the app has been updated with a fresh new design. 🎨

Screenshot of an entities card showing the refreshed toggle styling. The refreshed toggles on an entities card.

It’s not just a fresh coat of paint either: the new toggle is fully keyboard-friendly. Tab to it, then use the arrow keys to flip it on or off without ever touching the mouse. Small change, big quality-of-life upgrade. ⌨️

The templating documentation you’ve always wanted

First, the most important thing to say up front: you do not need to write code or touch a single template to use Home Assistant. Everything from setting up your devices, to building automations and crafting beautiful dashboards, can be done entirely through the user interface, and it gets better every release. If the interface does what you need, you’re done. 💚

That said, templating is one of the most powerful corners of Home Assistant for the people who do want to go a step further: dynamic notifications that read the actual temperature, automations that decide based on a calculation across several entities, template entities whose value is computed from other entities. And it has long been one of the most intimidating corners too. So we shipped a top-to-bottom rework of the templating documentation, with one goal: if you have ever felt that templates were “not for you”, we want to change that. 📚✨

Screenshot of the new templating documentation landing page with the learning guide.

If you decide to learn templating, we are now confident we have everything in place to take you all the way:

There’s a quality-of-life upgrade across the entire website too: templates in code blocks are now interactive. Hover over a function name to see its description, select it to jump to the reference page, hover over a parameter for a quick reminder of what it does. Examples render with the input on top and the actual output right below, so you never have to guess what a template will produce.

Screenshot of the new templating documentation showing an interactive function tooltip and an input/output example block.

Skip it, skim it, or master it. Either way, we’ve got your back. And this is just the beginning: we’ve expanded our documentation team and are investing heavily in making all of our documentation more approachable. So expect more reworks, more tutorials, and more friendly-but-thorough guides in releases to come. 💪

Smarter code editors with autocomplete

The rework didn’t stop at the documentation. While building it, it became painfully clear that even with great docs, writing a template still meant flipping back and forth between tabs. So the code editors you find throughout Home Assistant, the ones you use to write a template or fine-tune an automation, got a serious upgrade this release too. They now offer rich, context-aware autocomplete for both YAML and Jinja2 templates. ✨

Screenshot of the template editor showing autocomplete for template functions.

Start typing inside a {{ ... }} or {% ... %} block, and the editor now suggests Home Assistant’s template functions, filters, tests, and globals. Each suggestion comes with a short signature, a description, and tab-stops for the arguments, so you can fly through writing a template without keeping the template documentation open in another tab.

It gets even better inside the string arguments of those functions. The editor knows what kind of ID a function expects and offers matching suggestions:

Screenshot of the template editor showing autocomplete for area IDs.

No more copy-pasting entity IDs from the developer tools, and no more typos sneaking into your templates. Less friction, fewer mistakes. 🎯

And it’s not just autocomplete. Hover over anything in your template and the editor has something useful to say. Functions, filters, and tests get a small tooltip with their signature, what they do, and a direct link to the full documentation page. Entity IDs and attributes show their current value right where you’re typing, so you instantly see whether your template is reading what you think it is. 🔍

Screenshot of the template editor showing a hover tooltip on a template function.

Need help? Join the community

Home Assistant has a great community of users who are all more than willing to help each other out. So, join us!

Our very active Discord chat server is an excellent place to be, and don’t forget to join our amazing forums.

Found a bug or issue? Please report it in our issue tracker to get it fixed! Or check our help page for guidance on more places you can go.

Are you more into email? Sign up for the Open Home Foundation Newsletter to get the latest news about features, things happening in our community, and other projects that support the Open Home straight into your inbox.

Backward-incompatible changes

We do our best to avoid making changes to existing functionality that might unexpectedly impact your Home Assistant installation. Unfortunately, sometimes it is inevitable.

We always make sure to document these changes to make the transition as easy as possible for you. This release has the following backward-incompatible changes:

Purpose-specific triggers and conditions

When we first introduced purpose-specific triggers and conditions, we added separate ones for Person entities and Device Tracker entities. Since then, we’ve decided to take a more ergonomic, cross-domain approach instead.

As a result, the entered home and left home triggers, and the is home and is not home conditions, have been removed from Person and Device Tracker. Replacements that work across both will land in an upcoming release.

If you have automations that use these triggers or conditions on a person or device tracker, switch them back to a regular state trigger or state condition (for example, state changed to home) until the cross-domain replacements arrive.

(@emontnemery - #168406)

Gardena Bluetooth

The “finish watering” value in the Gardena Bluetooth integration has been moved from a binary sensor to a regular sensor that exposes the timestamp of when watering is expected to finish. This makes the value far more useful in dashboards and automations.

If you have automations, scripts, or dashboards that reference the previous binary sensor entity, update them to use the new sensor entity instead.

(@elupus - #169476) (Gardena Bluetooth documentation)

pilight

The pilight integration has been disabled because the underlying pilight library relies on setuptools.pkg_resources, which is no longer available in setuptools 82.0.0 and later.

If the library is updated to remove the setuptools.pkg_resources dependency, or replaced with a maintained alternative that does so, the integration can be activated again. Community contributions to make this happen are very welcome.

(@epenet - #167760) (pilight documentation)

Ring

The Ring doorbell event entity now emits the standardized ring event type instead of the legacy ding. This change aligns Ring with the new doorbell event standard, so the entity can be used seamlessly with the new purpose-specific automation triggers and conditions.

If you have automations that listen for the ding event type from your Ring doorbell, update them to use ring instead.

(@abmantis - #167728) (Ring documentation)

Supervisor

Previously, all actions registered by the Supervisor integration (such as hassio.addon_start, hassio.backup_partial, and hassio.host_reboot) only logged an error on failure, and your script or automation would continue running regardless of whether the action succeeded.

These actions now properly raise on failure, which means your automation or script will stop unless continue_on_error is set to true. If you rely on the previous behavior, add continue_on_error: true to those action steps.

(@mdegat01 - #166558) (Supervisor documentation)

Webhook

The local_only option on webhooks must now be a proper boolean (true or false). Previously, other truthy values like 1 or "yes" were silently accepted. This brings the option in line with the rest of Home Assistant.

If you have webhooks configured in YAML with non-boolean local_only values, update them to use true or false.

(@edenhaus - #169296) (Webhook documentation)

If you are a custom integration developer and want to learn about changes and new features available for your integration: Be sure to follow our developer blog. The following changes are the most notable for this release:

Patch releases

We will also release patch releases for Home Assistant 2026.5 in May. These patch releases only contain bug fixes. Our goal is to release a patch release once a week, aiming for Friday.

2026.5.1 - May 8

2026.5.2 - May 15

2026.5.3 - May 19

  • Bump qbittorrent-api to 2026.5.1 (@lumatijev - #170181)
  • Improve iaqualink 429 handling (@flz - #170231)
  • Fix Apple TV keyboard focus binary_sensor missing on cold start (@kroehre - #170360)
  • Add tilt controls for UpDownSheerScreen in Overkiz (@dankarization - #170563)
  • Fix blebox light temperature scaling (@bkobus-bbx - #170573)
  • Fix ValueError when turning on blebox light with brightness set to 0 (@bkobus-bbx - #170769)
  • Bump aiodns to 4.0.3 (@bdraco - #170865)
  • Populate uid and recurrence_id in CalDAV calendar events (@frenck - #170910)
  • Fix is_closed state for SlidingDiscreteGateWithPedestrianPosition covers in Overkiz (@iMicknl - #170913)
  • Disable USB discovery for teleinfo (@puddly - #170933)
  • Fix utility meter next_reset shifting forward on entity rename (@frenck - #170957)
  • Use correct state_class for utility meters with device classes that don’t support total_increasing (@frenck - #170962)
  • Reduce GoodWe connect retries to avoid blocking startup (@frenck - #170964)
  • Fix is_closed state for DiscretePositionableGarageDoor in Overkiz (@iMicknl - #170981)
  • Fix controls for OpenCloseGate4T (rts:GateOpenerRTS4TComponent) in Overkiz (@iMicknl - #170987)
  • Prevent Google Assistant entity sync from blocking startup (@frenck - #170991)
  • Load template extensions by class to prevent import deadlock (@frenck - #170995)
  • Use asyncio.get_running_loop() in emulated_hue UPnP responder (@frenck - #171000)
  • Fix Netatmo valve KeyError when hvac_action state is unavailable in Overkiz (@frenck - #171004)
  • Fix time trigger crash when using entity_id dict format without offset (@frenck - #171006)
  • Fix threshold preview crash when hysteresis is not provided (@frenck - #171009)
  • Fix Growatt mix device IndexError when chart data is empty (@frenck - #171012)
  • Fix SleepIQ timer units: seconds should be minutes for core climate and foot warmer (@frenck - #171013)
  • Fix Control4 climate crash when humidity is ‘Undefined’ (@frenck - #171015)
  • Fix manual alarm panel crash on restore with invalid state (@frenck - #171016)
  • Handle Daikin connection errors gracefully in coordinator (@frenck - #171017)
  • Fix shorthand template conditions in choose blocks crashing all automations (@frenck - #171018)
  • Add additional overrides to cover entity in Overkiz (@iMicknl - #171019)
  • Fix Verisure alarm crash when cloud rejects arm/disarm command (@frenck - #171024)
  • Add stop command to Overkiz pergola horizontal awning covers (@frenck - #171034)
  • Fix WeatherFlow websocket crash when data payload is None (@frenck - #171037)
  • Bump pyIntesishome to 1.8.8 (@jnimmo - #171041)
  • Return media_content_id as string in forked_daapd (@frenck - #171059)
  • Bump aioimmich to 0.14.1 (@mib1185 - #171138)
  • Fix controls for UpDownGarageDoor4T and additional 4T covers in Overkiz (@iMicknl - #171144)
  • Fix ZHA config entries using a URI without a port (@puddly - #171164)
  • Fix is_closed state and position for DynamicPergola covers in Overkiz (@iMicknl - #170983)
  • Fix tilt and position support for VenetianBlind covers in Overkiz (@iMicknl - #170974)

2026.5.4 - May 22

All changes

Of course, there is a lot more in this release. You can find a list of all changes made here: Full changelog for Home Assistant Core 2026.5.

❌