What do you have set up for occupancy modes, and how do you inform your system of your occupancy? Our normal schedule for my wife and I is that we both work during the day, and we're home more or less all day on weekends. In my previous incarnations of automation, I had things like setback thermostats running on a fixed schedule, and individual lamp timers and such. This was pretty good back in 1992. However, now that I'm moving seriously into HA with a real controller, I expect a more intelligent system.
Our occupancy is subject to the following variations:
1. I sometimes work from home. On these days, I want the main floor thermostat to not be set back in the morning. But the basement rec room can be set back since I shouldn't be messing around down there when I'm supposed to be working.
The top floor can also be set back. Certain lights I won't want messed with while I'm at home, but certain other lights can be automated.
2. We are sometimes at home for holidays or days off. On these days, we want all thermostat setbacks cancelled during the day. However, we don't want the master bath heat turned on early in the morning, since we won't be waking up early.
3. We may be away from the house for a day or more. On these days, we want the thermostats to remain set back until some point shortly before our expected return. We also want lights and things automated to make the house look occupied.
4. We may have a guest staying upstairs. On these days, we want the system to maintain thermostat settings upstairs for the comfort of the guest. Also, if we do an "all lights off", we want it to leave the upstairs lights alone, so the guest isn't unexpectedly cast into the dark.
It seems that most people use their security system occupancy mode to inform their system of their status. I see several problems with this. For occupancy during the day, we are unlikely to ever use day mode; we are constantly going in and out when we're home, and it would be a pain to have to disarm the system ever time we want to step outside. And it seems silly to define a day mode with no zones armed, just to tell the system we're home. Another consideration is that for thermostat setbacks, our house is heated with heat pumps, and these usually need some lead time to get the house warm (without using the second stage heat excessively). If the system doesn't start until someone gets home and disarms the alarm, they're going to be in a cold house for the next hour or so.
What I'm experimenting with is using some flags inside the controller. I have four defined -- "at home during work hours", "house is unoccupied", "guest upstairs", and "sleeping in". Various light and t-stat rules check the status of these flags to decide what to do; if the flag has any nonzero value, then the condition it names is in effect. I have a rule that runs at noon each day that decrements each of these flags, so I can set a flag to the number of days it is to remain in effect. I can set the values of these flags from the computer, at the keypad, or if I'm away, over the phone. We'll see how this works out.
Our occupancy is subject to the following variations:
1. I sometimes work from home. On these days, I want the main floor thermostat to not be set back in the morning. But the basement rec room can be set back since I shouldn't be messing around down there when I'm supposed to be working.

2. We are sometimes at home for holidays or days off. On these days, we want all thermostat setbacks cancelled during the day. However, we don't want the master bath heat turned on early in the morning, since we won't be waking up early.
3. We may be away from the house for a day or more. On these days, we want the thermostats to remain set back until some point shortly before our expected return. We also want lights and things automated to make the house look occupied.
4. We may have a guest staying upstairs. On these days, we want the system to maintain thermostat settings upstairs for the comfort of the guest. Also, if we do an "all lights off", we want it to leave the upstairs lights alone, so the guest isn't unexpectedly cast into the dark.
It seems that most people use their security system occupancy mode to inform their system of their status. I see several problems with this. For occupancy during the day, we are unlikely to ever use day mode; we are constantly going in and out when we're home, and it would be a pain to have to disarm the system ever time we want to step outside. And it seems silly to define a day mode with no zones armed, just to tell the system we're home. Another consideration is that for thermostat setbacks, our house is heated with heat pumps, and these usually need some lead time to get the house warm (without using the second stage heat excessively). If the system doesn't start until someone gets home and disarms the alarm, they're going to be in a cold house for the next hour or so.
What I'm experimenting with is using some flags inside the controller. I have four defined -- "at home during work hours", "house is unoccupied", "guest upstairs", and "sleeping in". Various light and t-stat rules check the status of these flags to decide what to do; if the flag has any nonzero value, then the condition it names is in effect. I have a rule that runs at noon each day that decrements each of these flags, so I can set a flag to the number of days it is to remain in effect. I can set the values of these flags from the computer, at the keypad, or if I'm away, over the phone. We'll see how this works out.