[DEPRECATED] Universal Ecobee Suite, Version 1.8.01

The site I listed above, beestat.io, is using the "new" authentication I believe as it takes you to a different site to sign in. His web app was exhibiting the same behaviors redirecting to https://www.ecobee.com/home/oauth/login.jsp... You can see this gif on this issue that shoes that behavior. Authorization failures · Issue #269 · beestat/app · GitHub

Now his app redirects to https://auth.ecobee.com...

I wish I had more info than that to help, and I'm not saying your app is at fault, as there is definitely an issue once enabling 2FA with your ecobee account, which migrates you to the "new" authentication.

I assume this is all related. Anyway to get around this?

Unfortunately the method he is using in ecobee suite is the one ecobee has documented as the correct way...

One caveat, this app doesn’t support switch+. The built in one does. So I use this for the thermostats and the built in for my switches.

@storageanarchy. I got another message from ecobee support that said the following:

So it looks like the developer needs to contact us via the developer API support forum. The APIKey isn’t listed in our whitelist for use with the new authentication.

@storageanarchy Any thoughts on this? They thought it wouldn’t require any code changes on your end either. Just would require ecobee to add your apikey to their whitelist for new authentication.

Again, really appreciate all of your work on this app!

I am working with Ecobee Developer Support...hopefully I can resolve shortly.

3 Likes

What’s the best way to create a switch or switches to change the thermostat modes (home/away/night)?

  • Create 3 virtual switch devices, named Home, Away, Night
  • Create 3 Ecobee Suite Mode/Switches/Programs Helper instances, one for each switch
  • Configure each Helper to turn on the appropriate Program when the appropriate Switch is turned on

Just be careful flipping switches - it can take a minute or two for the program change to be effected (due to the round trip timing to the Ecobee Cloud).

Thank you @storageanarchy. I tried this and it seemed overly complex and figured there was a better way.

I have four modes:

  • Home / Day
  • Night / Sleep mode when kids are home
  • Night / Sleep mode when kids are not home
  • Away mode

This is in sync with the alarm with presence so if everyone leaves the house, the alarm turns on and the thermostat changes to away mode. Likewise with the other options.

If the kids are home, I used the ‘work from home’ option to set it to cool the upstairs at night if they are there (we/parents are downstairs).

I also want to manually set the modes if we deviate from the normal hour programmed routine.

Here is what I did:

  • Setup four ecobee suite programs to turn on the appropriate mode depending on the house mode (and kid presence)
  • Setup four virtual switches to manually control the modes
  • Setup four ecobee suite programs to respond to the switch commands
  • Setup four rule machines to turn off all the other switches if one was turned on

This seems a bit unwieldy since I will have to the same for the downstairs thermostat as well.

Am I missing something?

Edit: also of note - when the house mode changes on presence or timing, ecobee suite programs will respond accordingly and flip the responding switch ‘On’ (day/sleep/etc). What’s interesting is thankfully the ecobee suite flipping the switch to on doesn’t also trigger the ecobee suite to run into a loop....but I’m not exactly sure why. I had assumed it would.

You can simplify by having the switches change the Location Mode instead of the Thermostat Program - just create two different Night Modes. The thermostat will change when the location mode changes.

Also, you could use momentary virtual switches, set to turn off by themselves after a few seconds, to avoid the "turn off all other" rules.

Turning on the switches (as described in your Edit) probably DOES cause the ES Helper to run again, but it checks if the condition is already true and exits silently if it is.

True. I set it up that way because I can look at the switches and see what mode each thermostat is.

You can also see the actual thermostat program by looking at the attribute "schedule" for each thermostat.

How would you expose the attribute as a separate device?

I don't know about ActionTiles, but in Hubitat Dashboard, you can create a tile that displays ANY attribute for ANY device.

Sorry....should have shared that I'm pushing everything to the homekit via makerapi and homebridge. You are right....in a dashboard you just specify the attribute you want. That doesn't quite work for homekit - but i'm looking into how that can be done....

Any luck? Appreciate you looking into this!

Ecobee Suite Updated on 5 August 2020 at 8:45am EDT

Fixes & enhancements:

  • BIG NEWS!!! Ecobee Suite now works with the new Ecobee Authentication Services!

    • This is a transparent change, so you should not have to do anything to get this to work
      • It is not even necessary to update your code (but you should, anyway)
    • Worst-case, you MAY have to re-authenticate to the Ecobee servers once
    • Works with both the Ecobee standard and the new 2-factor authentication schemas
  • Ecobee Suite Manager, version 1.8.47
    • Now handles the new Eco+ demandResponsePreheat and demandResponsePrecool events
      (Cooling setpoint is reduced by Ecobee and your utility provider for a period of time before the setpoint is increased to reduce power demand)
    • Now recognizes Comfort Setting name change in the case when the new Comfort Setting is using the same setpoints as the current Comfort Setting.
      • Due to the way Ecobee is handling this situation, the new name will be recognized about 3 minutes after the scheduled change (longer if your polling cycle is greater than 1 minute)
      • The use case isn't all that strange: e.g., two nearly-identical climates named "Home" and "Home-Working", where the only difference is which Remote Sensors are included.
  • Ecobee Suite Thermostat, version 1.8.17
    • Remove extraneous debug log entry

These updates are recommended for all users

7 Likes

Thank you, Barry! I was able to enable it just now. As I mentioned a few weeks back in the SmartThings thread, I was just forced to enable ecobee 2FA to use their SmartCamera.

1 Like

YES!!! So excited for the new Authentication! It works great! Thank you for doing that!

1 Like