Presence group / boolean broken due to recent changes... how to fix?

Recently there was a change in HA that caused my previous method of accounting for presence to break… I have no clue which version did it as I obviously missed mention of it in the version notes.

Previously I had a configuration like this:
A group called group.presence_all containing 2 person entities and an input_boolean for “guest_mode”. This group worked perfectly in my automations which needed to tell if anyone was “home” or everyone was “not_home”.

Now for some reason, looking at the group.presence_all states shows “on” and “off” instead of “home” and “not_home”… I only started digging into this because all my presence based automations stopped working with a recent update… so there was obviously a change to the way groups work when used in this way.

I tried changing my guest input_boolean to a template binary_sensor of type presence that triggers off of the original input_boolean. In the UI this shows as “Home” and “Away” but the states still read as “on” or “off”… so this didn’t fix my group issue…

My question then is this: is there a way to return to the previous functionality without having to convert all my automations to read “on” and “off” instead of “home” and “not_home” as they have always done? More concretely, is there a way to have a presence group that will show “home” and “not_home” as the states? It definitely used to work this way behind the scenes… so why was it changed?

I can’t answer about the change, but a template sensor could be used for that.

However if you’re going to have to go around and change all your automations anyway, what I’d suggest is that you pull that logic out. Have an automation (or two) that turns an input_boolean on and off to show if the house is occupied or not. Use the state of that boolean in the other automations.

It’s just unfortunate that the group functionality for presence was changed. It worked great before.

But you’re definitely right, if I want to avoid something like this breaking again when another change is inevitably made… it makes the most sense to control everything with an input_boolean or a binary_sensor where I can expect the state to always be on or off

I think the problem is that you have an input_boolean in the group. If you only have device trackers then a group is home/not_home (although I haven’t updated to 118 yet so maybe something changed, but I didn’t see anything in the release notes for it).

Try using the device_tracker.see service to generate the presence of ‘guest mode’ instead of an input_boolean.

1 Like

Yeah, to be honest, after thinking more about it, it makes sense that the group would show on/off instead of home/not_home… Just odd that it used to work fine until one of these recent updates.

I’ll have to play around with the device_tracker service as you suggest.