WTH - Why can't we apply a scene to an area?

If we’re already updating scenes… I don’t want to duplicate my scenes and delete devices for every room in my house for every scene I have.

Let me know if this is dumb or if there is an obvious solution.

Edit: Since I was so unclear in this first attempt:

What I would like to have is an option to “activate” a scene but where I can target an area. So I can just have one scene made and be able to apply the settings I defined in my scene to the devices in specific areas.

If you don’t quite see the use cases here, I have about 30 smart bulbs, and in many of my scenes, they are vastly different brightnesses and colors, so a light group won’t work. I just want to be able to define a scene once for all my lights/switches in the house and be able to set a room to that scene.

Can you expand on what you’re asking here? I’m having trouble understanding your request.

2 Likes

I think he wants to be able to apply a scene to a whole area at once. Which isn’t a bad idea imo.

Edit: I meant area and not zone. Which I assume he does as well.

1 Like

Yes, I get that but at the same time, I don’t.

You apply scenes to lights, and scenes have a specific number of lights.

Is he requesting to Create a scene from an area?

Applying doesn’t make sense because the scene only applies to the lights that it was made to use.

EDIT: Ok, I now see your picture. He means “Create a scene from an area”, not “apply”.

2 Likes

I don’t use scenes, but to my understanding it’s not just lights.

Theoretically with the ‘area’ functionality, I’d be able to select ‘living room’ and very easily make it so that applying a ‘Watch TV’ scene would replicate an existing automation I have:
-Tell my harmony remote to apply ‘watch tv’ mode
-Turn off my WLED window light
-Ensure my sub is turned on (smart switch turns it off since it’s a massive vampire load)
-Turn off the area lights
-Turn off the fan

Honestly, for my use cases, it’s only a couple of extra devices, but I can imagine scenarios where you’ve got a ton of smart bulbs that aren’t grouped or you just in general have a bunch of devices and would want to quickly catch them all (an ‘on-alert’ security scene for example).

Scenes already aren’t used very much, but I could see something like this making it a more appealing use-case vs standard automations … for me, I’ve always felt that if I had to go through all of the same effort to create a scene as an automation, I might as well just make the automation instead ¯\_(ツ)_/¯

ETA: I don’t know how I didn’t see your edit before I wrote out my long answer :smiley:

1 Like

Gah! Sorry, I was unavailable.

I’m not sure if I fully understand the discussion here, but regardless of my problem, I’m on the same page with @tjhart85 and @saltf1sk in general. If it’s just a lapse in my understanding, or there’s a far easier way to do this, I would love to know.

For example, I have a scene called Mood Lighting. It has the settings I want for every smart bulb and smart switch (usually for lights) in my house. If I want to be able to apply the settings of that scene to only the devices in a specific room/area, I have to make a new scene with only those devices.

I have pages on my dashboard that are for specific rooms, and I have buttons to activate scenes there, but I had to make a new scene for each of the rooms/areas I have. This is kind of cumbersome whenever I want to make changes to a scene or add new devices. I have to edit every single version of that scene: Mood Lighting(Living Room), Mood Lighting(Office), etc.

What I would like to have is an option to “activate” a scene but where I can target an area. So I can just have one scene made and be able to apply the settings I defined in my scene to the devices in specific areas.

If you don’t quite see the use cases here, I have about 30 smart bulbs, and in many of my scenes, they are vastly different brightnesses and colors, so a light group won’t work. I don’t mind the way we make scenes. I just want to be able to define a scene once for all my lights/switches in the house and be able to set a room for that scene.

So when you say “He means “Create a scene from an area”, not “apply”.” More accurately, I want to set (the devices in) an area to (their settings in) a scene.

Please tell me if that makes sense. I will be more detailed in the future.

I feel like I might be on a different page from both of you, but even the options @tjhart85 and @saltf1sk outlined seem similarly useful.

Edit: I think I just got what @saltf1sk and @tjhart85 meant, and yeah, that could be cool, too.

1 Like

Maybe something like a sub-scene would also work, where you could compose scenes inside scenes.

This would help me avoid having overlapping scenes high/low/off scenes for both an entire room, and different parts of it. In your case, your rooms would be subscenes and you would have a master scene for the whole house.

Also, remember to vote for your post.

1 Like

Ooo, I like this option too!

I didn’t know it was normal to vote for your own post, thank you for the heads up :wink:

Thanks, that explanation helps, sounds like a good wth.

2 Likes

Phew! Thank you!

I had never thought of that. It’s a pretty good concept.

Maybe a better wording would be something like, “Limit a scene by area so that only part of it runs”.

We could call it something like “Scene Masking” where you mask/hide the portion of the home you don’t want the scene to affect, or unmask the parts where you do want it to take effect.


Another example. You have a night scene that turns off all of the main lights and turns on some pathway lights. You want to run it everywhere but the room you are currently in, so you dynamically mask the scene and run it everywhere else.

2 Likes

Haha, I wish I had phrased it like that. I wasn’t sure how this would work but I like the idea of “Scene Masking.”

I do think it would bring a lot of functionality to Scenes.

None of this makes any sense for the way scenes work in HA. Each scene is just a collection of entities, where each entity has their own settings that are applied. There are no settings that apply on a “scene” level.

It sounds like what you want is how scenes work in Philips Hue, where scenes always operate on a full room/zone/group level and are applied equally to all lights within. Personally I hate that paradigm as I cannot imagine any scenario ever where I’d want all lights in a room to have the exact same settings.

Scenes definitely could be massively improved though. I haven’t tried the newly updated scene editor in HA, but it always used to behave very weirdly for me with regards to devices and entities. Very often when adding lights as a device, the next time I opened the editor it turns out they were instead saved as entities, or the other way around.

Also so weird that you cannot (when editing scenes in YAML) use any of the alternative parameters in scenes, you always have to use whatever parameter is native to the light. For example if a light’s native parameter for color is xy_color, then that is the only color you can use when specyfing color for that light in a scene, you cannot use say rgb_color.

Let me clarify. As you said, a scene is a collection of entities. Each entity has an area. The WTH is suggesting that we dynamically exclude some of those entities from the collection by selecting areas to include or exclude.

For example: you have a scene that controls 10 lights in the kitchen and living room. Perhaps it turns them red and plays some romantic music in both rooms. Tonight, you want to use the scene, but you know you will only be in the kitchen, wo you call the scene and “exclude” the living room. As the scene is called, all entities have their settings applied UNLESS they are entities assigned to the Living Room.

Another example:

You have a party mode that turns on all the lights in the house and plays music in every room. However, today’s party is happening while your new born is sleeping. So you, you call the party scene and “exclude” the nursery. Any light or speaker that was a part of the scene that was assigned to the nursery will be skipped.

1 Like

Let me break it down…

So basically, what @potelux said. Every Scene is a list of entities/devices and their settings. If you set up areas, Hass knows where the devices are. So why can’t those two things be combined to activate scenes with area targets.

@Mayhem_SWE Would you elaborate on what you mean by a “scene level?” I believe this is a reference to when @gutifarra was talking about sub-scenes, which would work for levels that you predefined in these “sub-scenes.” But again, I just want to be able to activate scenes with area targets so that only the devices in those areas have their scene settings applied.

A note on @potelux's idea

I like the way they described what I want, but for simplicity’s sake, I’m going to stick to my original idea of targeting areas instead of excluding areas (Scene Masking). In the back end, It might work by excluding entities/devices (included in a scene) from being activated if those devices are not in the specified area. But I’d rather describe it as activating in specific areas for clarity.

If we only got this functionality, a lot of what @potelux said would be replicable with automation, making area groups without specific areas (cumbersome), or just targeting all areas except one. However, If it were built-in it would be cool.

Definitely not this… If I wanted to do this, I would just use the turn-on light service with an area target. I have multiple scenes with unique settings for all my lights. I want to be able to activate a scene, with all the individual settings defined in that scene, to only the devices/entities in a specific area.

1 Like

I’m not using scenes currently except dynamically, as I found them a bit too inflexible for my use in the past, but there is one thing that would make this a bit problematic.

The scenes themselves (may) also belong to areas. And when you call the service to turn on a scene, it has the standard target selector, including area.

So this would have to be solved somehow. Calling all scenes that belong to kitchen is completely different to calling a specific scene, but only the components of it that are in the kitchen.

But I do like the general idea.

1 Like

To me, it seems like backwards logic and significantly more complicated (both in terms of UI design and programming) to have a single mega-scene and then try to filter out which parts of it to apply, rather than simply having separate scenes and then choosing whether to activate just the one or several of them. I am sure you are familiar with the acronym KISS.

1 Like

I believe the KISS principle is exactly what the OP is trying to apply here.

Scenes would quickly become bloated if you chose to include scenes for every edge case. The general intent here is to handle the one-off edge-cases. When you want a scene to apply 99.9% of the time, but have a niche exception 0.1% of the time, it is in line with KISS to create one scene for the 99.9% case and carve out an exception for the 0.1% case.


This is actually a fairly simple concept both in the UI and the programming side. A list of inclusions is already a commonly applied concept across HA. Filtering a scene based on these inclusions is also quite straight forward. If entitiy is not in the selected area, skip

2 Likes

Yes, to everything @potelux said ^ I’m not sure about the one-off edge-case thing.

If I have five different full house/floor scenes that I regularly activate. Additionally, I have duplicates of those scenes for each area. This means that if I had just five different rooms, I would have 30 scenes in total. If I wanted to change one color, I would have to do it for six different scenes. And that’s just for lights; many scenes include a number of different entity types.

Just like @potelux said, I don’t think it’s more complicated; I think it reduces complications.

I think this would add a ton of functionality to scenes and make them more distinct from automations.

Also, I don’t know enough about how Hass works to know if it’s more complicated to program than it seems, but @potelux makes a very compelling argument for its simplicity with his one sentence if statement loop. :joy: