With Home Assistant becoming more and more accessible for less techy users, something I thought was lacking for a while is the need to manually trigger updates to core, supervisor and OS.
Most of all I find it a bit annoying that I need to manually pick a suitable moment for an update sometime throughout the day that doesn’t inconvenience my partner. “The bathroom lights aren’t working!” “It’s updating, give it a minute!” is a conversation that we had too many times.
It’d be so nice if HA would by default analyze your history and set an initial window for updates during a time period with typically low activity, which the user could of course override. The scheduler could have automation hooks too and allow setting a minimum amount of time that an update has to be scheduled for before being allowed to execute… Then, advanced users (who might be more concerned about breaking changes) could build automation workflows that notify them about scheduled updates, and allow to defer or cancel if necessary. “Optimistic updates” by default, with opportunities to step in for those who care.
Since release notes track breaking changes on integrations already, maybe the system could even be smart enough to ask for explicit approval only if a breaking change affects an activated integration.
At the very least, an “update tonight” button would be great — letting you still explicitly approve an update, but have it install at a time when everyone’s asleep and all the lights are off.
Imagine opening up HA to a little “Release x installed, here’s what’s new ” notice every now and then. Wouldn’t that be nice?
The supervisor, AFAIK, update automatically.
The core and OS is required manual updates.
The core can have many breaking changes, so the manual update is a way to make sure people can not just excuse themself with the system did it automatically and it was not their fault that the system is failing now.
The OS I have seen breaking changes on and that could maybe be automatically installed. OS updates are just not that often and I feel the also always seem to come with a core update, so a manual update is needed anyway.
The situation with the bathroom light suggest another problem and that is your setup can’t work independently from HA.
Looking into ways of making the light work without HA might be a good investment.
Zigbee have groups that can be used to pair devices, so switches can turn on lights in a group and thermometers can update TRVs with room temperature and so on.
I guess Z-Wave have the same and Matter too.
“what?”
“why not?”
“let me open up HA to see why it’s not working”
“Oh it was a failed update in the middle of the night!”
“I don’t have time to fix it right now since I have to leave for work”
“I’ll try to find time to fix it after johnny’s recital tonight before I go to bed. if not then I’ll see if I can figure out what went wrong as soon as I can find the time”
“until then we won’t be able to control the lights or garage doors”
“stupid automatic updates!!”
I have a calendar entity, input select, automation and script just to schedule updates at 3am.
When an update becomes available, the automation adds it to the input select. When the script is executed, it creates a 30-minute calendar event at 3am (or the next available slot) with the selected update’s entity_id, and marks the update as skipped (to hide it).
On a calendar event trigger, the automation applies the update and sends a notification.
Would LOVE if we could simply choose to apply updates at a delayed time (with a configurable default of 3am or similar).
Personally, I use this blueprint to handle it for my multiple HA instances. I just set a schedule to do auto-updates between 03:00 and 05:00 Monday - Friday and then have my instances send notifications when they are shutting down and after they’ve finished starting up. That way when I get up in the morning I know that an update requiring a restart happened and I can verify things came back sanely. 100% SAF on this because my spouse never encounters the system not working when they’re asleep
Automatic updates seems to be nice at first but they so terribely bad from a system administrator view (which you are)
Do you always and I mean always check the update logs after a update happened automatically? Nope, the system seems to respond as it should. A couple updates further things go really bad with something that doesn’t trigger often. Didn’t see the obsolete warning earlier for example. Which update was the case? This or did it went wrong earlier already. So which backup should I restore.
I fully agree, but at the same time, I bet 99% of users updates their system without looking for the release notes or logs, so they are doing automated updates in a manual way. For this people, an automated update saves time and effort.
That’s exactly what I’m thinking. I consider my HA config relatively advanced, with a bunch of custom integrations, components etc. and yet the last time a core or OS update has broken anything for me in a serious way was ages ago. And if that were to happen again I would honestly rather restore a full backup at this point than to manually approve every single update. I would never have wanted something like this 6 years ago when I first started using HA, but at least in my experience it’s matured enough that it’s viable for what I would guess to be a sizeable chunk of installations.
Also sure, I and many people active on this forum are essentially “system administrators” that want to control updates very deliberately, but HA as I mentioned already is becoming increasingly accessible for less techy people. I have a few friends just running a HA Green that does nothing more than control a few lights on a completely vanilla instance. The likelihood of updates breaking here is low, while the likelihood of them never updating and in the worst case even ending up with some kind of serious vulnerability is high.
All I’m proposing is an option, as we already have for add-ons — of course auto updating functionality like this should be entirely customizable in user space, as pretty much everything is in HA. And again, maybe a simple way to schedule an update for later is a valid compromise? The entire system I propose, with an update window, could even still rely on manual interactions by default — but they could be scheduled to install during off-hours rather than right now, in the middle of the day.
I would love to have automatic updates! I actually don’t even update HA anymore because it was too annoying dealing with the system being down while updating, and then I just eventually forget to do it. But I guess it’s unsafe? I’d prefer to be safe. Also I prefer to not use the app if I can help it. I’m not trying to be in there managing my smart home constantly. I’m just trying to live.
Just because this is a possibility doesn’t mean it shouldn’t be an option to turn on automatic updates. The user should be able to decide to take on that risk for themselves.
Nabu Casa doesn’t employ a large enough support staff to deal with the resulting automatically bricked systems. Even Linux distros are smart enough to not do automatic updates.
If you want automatic updates, then you are in the wrong universe. Google Home, Alexa, HomeKit or SmartThings all do automatic updates, but none even approach the versatility of Home Assistant.
Besides being closed systems, Google Home, Alexa, HomeKit and SmartThings generally cost more than Home Assistant, so maybe they can afford a large support staff to deal with update issues.
Roku is rolling out an automatic update as we speak to all units. The update turns off local API. So everyone using HA + Roku will hit this issue over the next few months, all because they have automatic updates on.
I am a strong advocate against automatic updates myself. Every system I’ve owned that has automatic updates has caused problems at some point.
I actually think I just got hit with this a few days ago.
One of my Roku’s would no longer connect to HA. The error was “roku can’t connect in ‘limited’ access mode” (or some such). I thought “what the heck is “limited” mode?”
searching thru the settings on the Roku I found the setting and changed it to enabled and it came right back.
If that was an HA update that took my whole system down I would have been pretty frustrated. luckily it was just one media player that wouldn’t connect that I rarely use the integration for anyway.