I went all in with HE and Ecobee.
First, I worried about a 'who's on first' control (what is controlling the ecobee at any given time), so rather than having options, I elected to control everything from HE. I then flex the setpoints against 4 or 5 variables. Worth noting I have 2 zones, 1 with just heat and 1 with heat/AC.
- Alarm state (which implies presence), differences for HOME/AWAY/STAY(sleep)
- Outside Temp, my 100 yr old house just needs more heat supplied during the coldest darkest days in winter, so I have:
d) 65->80 and
- Contact Sensors = Off (included a 1 minute delay for the off, did not want to switch off the HVAC if just opening the door to let the dog in/out)
- Finally an override virtual switch (just in case the old father in-law is cold and wants to bump up the heat, gave him a button to enable override, then local control @ the actual thermo is allowed. Virtual auto turns off when Alarm is set to either AWAY or STAY resetting everything.
Cost me 24 rules to set all that up(!), but it's rock solid, yet highly flexible once built. (was 1 piston in webcore, but oh well )
Additionally I run the air circulator 100% of the time (even if door/windows are open) as I have an on system passive air filter that of course only works if air is moving (more rules).
No programming in Ecobee at all, disabled all eco settings, etc (as I have programmed for it with the rules).