Overall floors and areas work well for my house, however I’m not sure what the best way to organize items that are right by an entrance is.
For example, I have a smart switch just inside the main entrance that controls outdoor sconces. There is also a smart doorbell outside, and a smart speaker just inside the entryway. I also have a covered patio with some lights, and some other random stuff outside like an automower.
I want to have a concept of outside, especially with regard to exterior lights, to make it easy to do automations like “turn on all the outside lights”. I could do an Outdoors label. Make a Main Entrance room on the first floor with the speaker, light switch, and doorbell, and label the latter with “Outdoors”. But then what do I do about the mower? It makes sense to have an Outdoors floor, with both a Frontyard and a Backyard area. Are those also Outdoors, as a label? Or do I not have that label, and instead make a Front Door area also on the Outside floor and move the lights/doorbell into that?
That way definitely puts everything in a specific area, but it’s not really clear that the difference between “main entrance” and “front door” are very clear. Do the lights/doorbell instead go into the “Front Yard” room? They are technically there but it loses a lot of granularity.
An “outside” label makes everything really clear what is outside specifically, but it also does feel like things that are actually outside should be on an outside floor. Maybe labels on the areas is the best?
I don’t know. What are the best practices other people are following here?
1 Like
I think that Home Assistant lacks the necessary flexibility here for your use case. Maybe you can hack around it, but it will not be ideal.
Probably not what you wanted to hear.
Anyway, I had similar problems and made my own custom component to solve it. It is quite complex though, so not sure if it will be useful for you.
Hmm, thank you. That does look like an interesting component, but I think you are right that it’s too complex for what I want.
I definitely want to use the floor / areas concept as much as I can, the UI for that is pretty nice. I think there are a number of possible solutions here, I’m just not sure which is best. All the ones I can think of have some trade offs, but maybe I am missing something to cut through all that, or maybe of some are much worse for reasons I haven’t thought of. But I think there is a setup that is at least OK.
This inside/outside/entrance thing DOES seem like it should be a pretty common usecase that it would be nice if it was well supported. I honestly don’t even know what I would actually WANT it to look like though.
The problem is that there is no “one size fits all” solution here. Everyone’s home is different and people would want to structure it differently because of that.
Honestly the floors were a mistake. We should have just gotten the ability to arbitrarily nest areas, and then people would make it work for themselves however they like. Floors, outside, inside, smaller areas inside a room, grouping many rooms together, etc. All would be possible, but instead we have this extremely rigid structure with floors.
Anyway, rant over. I don’t care at this point anyway, 'cause my component does it all for me with complete flexibility.
Whichever solution you choose in the end, please remember to share it here with your reasoning, so people in the future can use it as a reference.
Thank you for your advice.
So far I have the front light and doorbell on the indoor Main Entrance, and the upper deck light in an Upper Deck room on the second floor. I also made an Outside floor, with a front and back yard, and I’ve tagged everything that is physically outside with the “outside” label. I have an automation that turns on all the outside lights. But I’ve also created a single merged outside light switch which is honestly probably more what I want. Whether the doorbell is in the entrance inside or in some outside floor is probably not super relevant?
I still have bunch of other stuff to set up outside and around the house. We’ll see how far this gets me.