[RELEASE] Set Ecobee Heat/Cool/Auto Mode Based on Outside Temperature

SmartApp for setting your Ecobee Heat/Cool/Auto Mode based on outside temperature. This allows you to target a more exact indoor temperature in Heat or Cool mode when possible, while automatically resorting to Auto mode (with an Ecobee-mandated differential of 2 degrees between heating and cooling targets) when needed. And it prevents you from having to remember to turn on auto mode for the one 80 degree day in January and the one 30 degree day in June. As an example, you can set the mode to heat when the temperature is below 60, set the mode to auto when the temperature is between 65 and 80, and set the mode to cool when the temperature is above 85. Having some distance between thresholds like this should prevent mode ping-pong.

Use in conjunction with Barry’s Ecobee Suit version 1.4.0:


1 Like

@JustinL -

Very nice!

May I merge this into my Suite as another Helper App? You clearly built it such that it is an easy merge.

And one recommendation: although you utilize the weatherTemperature as provided by the thermostat, this is notoriously a poor data source - it often provides a weather view from miles away. Some find that using Weather Underground data is more accurate, others choose to install a SmartThings sensor outside their home for more accurate temperature reporting. If I were to merge this in, I would make the selection of the outside temperature source utilize one of 4 sources (listed in order of relevance to your location):

  1. weatherTemperature as provided by the thermostat
  2. WeatherUnderground for the location’s Zip Code
  3. WeatherUnderground for a specific PWS
  4. A specific SmartThings temperature sensor (which could be the SmartThings “Weather Station”)

Let me know what you think…

1 Like

Sure. Didn’t know that about the quality of the ecobee-provided temperature. Sounds like a good idea to provide some flexibility in temperature source.

Yeah, if you do a little digging in the Ecobee API, you can find out which location is being used for the weatherData. For me, it’s a small airport about 13 miles away, in a valley behind a large hilly range from my home, where the temperature and the weather can be drastically different than at my home.

If you’re OK with it, I’ll start working on integrating your Helper App tonight…

1 Like

Looking good so far, Barry. Do you think ping-pong between modes will be a problem though? I don’t know what sort of filtering different temperature sources use to smooth the temperature reporting. One way to avoid ping-pong, i think, would be to allow there to be a gap in the thresholds.