Native ST ecobee 3 intergration?

@Yustos,

As specified in the readme file (step 8a), for the ecobee3’s remote sensors, you’d need to execute the ecobee3RemoteSensorInit smartapp in order to expose them to ST.

My ecobee Device is a generic ecobee thermostat handler for all ecobee thermostat models (Smart-02, Smart-Si, EMS, ecobee3); the previous versions of the ecobee thermostats don’t have any remote sensors.

For the ecobee3’s remote sensors, please refer to the following instructions:

https://github.com/yracine/device-type.myecobee/blob/master/smartapps/readme.ecobee3RemoteSensor

Regards.

Thanks @yvesracine, I appreciate your clarification:)

I posted in another forum topic, but thought I would post here as well, as this seems to have been updated more recently:

First off, thank you so much for taking the time to create the coding for both the Ecobee3 Thermostat and remote sensors. I have a quick question, the remote sensors are still showing “motion” in the app, even though there has been no motion for almost an hour. Is there a way to modify this, so they display a more accurate motion reading (my other motion sensors revert to “no motion” after a couple minutes & I’m hoping that the same can be done with my three remote Ecobee sensors)?

Thanks,
-Matt

Hello @dignifiedb,

You may want to look into this thread first:

As specified earlier in the above thread: ecobee motion sensors don’t allow real-time events.

Also, on the ST side,there are some rate limiting and max execution time constraints to take into account which is why the polling interval cannot be lower than 10 minutes.

You can refer to ecobee API documentation:

https://www.ecobee.com/home/developer/api/documentation/v1/objects/RemoteSensor.shtml

Which states (about motion occupancy):

The remote sensor data will only show computed occupancy, as does the thermostat. Definition - For a given sensor, computed occupancy means a sensor is occupied if any motion was detected in the past 30 minutes.

So, I’m sorry but there are limitations in the way the remote sensors were designed, and they will never be like any ST motion sensors (unless ecobee makes some serious changes on their side).

But, you may want to contact ecobee support if your remote sensors are still reporting occupancy after an hour…Please check at your physical thermostat first.

Regards.

Is anyone having problems with losing Authentication all the time? I have installed the Ecobee init & remote sensor init in the hopes that I can use my new Keen smart vents to create zones BUT my Ecobee3 & the sensors will not stay connected to Smartthings! I will GLADLY send a donation to @yvesracine for any assistance but I wondered if anyone else is having these problems? The Ecobee3 thermostat will stay connected cloud-to-cloud for a few hours sometimes but always looses authentication. The remote sensors only connect once, right after authentication and that’s the last time they report. Thanks guys!

Hello @corvetteii,

As specified under the known issues at the ST community wiki, you’d need to contact ST support if
you have any recurring connection issues…

My code reports them, but does not have any control over them.

http://thingsthataresmart.wiki/index.php?title=My_Ecobee_Device

And, My ecobee device is not alone in this situation, refer to

Stock Ecobee device

TCP Hub

EDIT: Make also sure to have the latest version at the github for MyEcobeeDevice, ecobee3RemoteSensorInit and MyEcobeeInit.

Regards.

Ok, I’ll contact ST. Thanks.

I just setup yvesracine’s MyEcobeeDevice, ecobee3RemoteSensorInit and MyEcobeeInit a few days ago and I’m having the exact same problem now. I’ve received 92 disconnect notifications in the last 4 hours. Yvesracine, I know you say this is a Smarthings/Ecobee problem, but is there anything else you can do? This seems extreme and I can’t imagine ST/Ecobee moving fast enough to prevent us all from uninstalling (this can’t just be me receiving this many notifications, can it?). Please let me know if you have any other suggestions, and thank you so much for all of your app development thus far.

Thanks,
Jake

@jacisme,

The best way to deal with those connection issues is to report them to ST, and hopefully, they will address them
when they realize that there are a lot of ST users out there who are experiencing them.

I did report some connection issues myself quite a long time ago (linked to the security certificate amongs others), and here what ST support responded at that time:

Chris Porter (SmartThings)
Jun 30, 6:02 PM

Hi Yves,

Thanks for letting us know what you are seeing. My developers have been aware of this happening for a little while now also, and have worked on it. I will let them know your thoughts about it being the security timestamp being outdated.

I don’t have an ETA around implementing a revision to the code, but developers do currently know it is not working consistently for users, and are addressing it.

Thanks for the heads up, and the suggestions.

-Chris P.
SmartThings Support

In the meantime, I’ve observed that these issues come and go. In a specific week, they will be a peak of connection issues, and then few days after, the connection issues will disappear, and they will be no issues for more than a month.

I suspect the ST platform (and sometimes also the ecobee servers) to be the root cause of those connection issues. This could be some connection pool management issues at ST or others.

In brief, as I said in the community wiki and many times in other threads, I don’t have any control on those connection issues in my code.

However, I’ve implemented some defensive coding to notify the ST users of any connection issues. That’s the best I can do on my end.

And, if you read carefully other threads (like the one I posted in my previous post), ST has connection issues with other devices as well (ex. TCP hub).

P.S. What make ecobee more susceptible to losing its connection is the fact the ecobee is the only cloud provider (that I know) that asks to refresh its authorization token every hour. My code has the required algorithm to do it, but if there are connection issues at the same time, you’ll then need to manually reauthorize ST to reestablish the connection with ecobee.

Bye for now.

Thanks yvesracine. Your thinking that it goes in waves and might go away entirely by itself is very helpful. I had already read through the other threads mentioned (I know I’m not the first one to bring this up!) and didn’t really see a clear path other than message ST. I did message ST already, and their automated response said they’re dealing with a “sizeable backlog of requests.” I guess I’ll wait a little bit longer and just stop using the ST platform altogether in a bit if it doesn’t resolve. I’m only getting started in the home automation game so I can easily switch to something else if I have to.

Thanks!
Jake

I really home the cloud to cloud connection issues are resolved. Would be really unfortunate to see 1500 hours of coding go to waste. I’m considering just getting some motion/temp sensors to control my keen smartvent.

Hi @jacisme

I made some changes today to MyEcobee device and ecobee3RemoteSensorInit that would hopefully reduce the number of connection & timeout exceptions

You may want to try the new beta versions at my github:

Let me know how it goes.

P.S. You’d need to copy and paste the code for both the device and the smartapp, save & publish.
Regards.

EDIT. I still think that the ultimate resolution of those connection issues is still on the ST side, but this may alleviate some of the issues till then.

Hi @yvesracine, I have been using your ecobee tstat handler without any issues for a few months, but recently I started getting errors when executing Routines against my tstats (one ecobee3 and two smartSi). Do you have any suggestions?

Here is what I see in the log:
doRequest>exception groovyx.net.http.HttpResponseException: Internal Server Error for %7B%22functions%22%3A%5B%7B%22type%22%3A%22setHold%22%2C%22params%22%3A%7B%22coolHoldTemp%22%3A880%2C%22heatHoldTemp%22%3A680%7D%7D%5D%2C%22selection%22%3A%7B%22selectionType%22%3A%22thermostats%22%2C%22selectionMatch%22%3A%22252616515940%22%7D%7D
viewed false

Hi @vitaly,

Here is my post about it in the following thread:

Hi @slagle, @jotto, @jarettp, @dvanzuiden,@stvdano,@benmctee

FYI, after some testing on my end, I have observed the following facts:

(1) Before the peak of connection issues that we’re all experiencing with my custom Ecobee Device now, I had been able to correct any connection issues by re-authenticating with ecobee, and this action would “reset” the connection and any connection issues would disappear after.

(2) Now, even if I try to “reset” the connection by re-authenticating with ecobee, the connection issues stick. The only way is to uninstall the Service Manager and delete the device to create another one.

Also, since yesterday, somebody has pointed out to me that the ecobee’s access token expiration time is now expressed in seconds (not in minutes like before)…

This is a recent change that was implemented just yesterday:

https://www.ecobee.com/home/developer/api/documentation/v1/change-log.shtml

The change does not explain all the connection issues in the last week, but it explains the fact that I can no longer ‘reset’ the connection with ecobee since yesterday.

There may be also more rate limiting done either on the ST or the ecobee side that I’m not aware of.

I implemented more defensive coding into My Ecobee Device, MyEcobeeInit and ecobee3RemoteSensorInit to avoid connection issues in the future.

MyEcobee device at home has been now stable for a while, and hopefully it will work also for anybody
who uses it.

Please let me know of any issues, especially with ecobee3RemoteSensorInit as I cannot test
it at home (I do not have any ecobee3’s remote sensors).

So, in order to correct their current connection issues, ST users need to

(1) Remove My Ecobee device and any ecobee3’s remote sensors from all smartapps

(2) Uninstall MyEcobeeInit, ecobee3RemoteSensorInit

(3) Get the latest MyEcobeeDevice, MyEcobeeInit and ecobee3RemoteSensorInit code at my beta branch

(4) Re-execute MyEcobeeInit and ecobee3RemoteSensorInit

Regards.
[/quote]

1 Like

Thank you, @yvesracine. I am ready to go through the steps above, but need a bit more guidance. What do I do to Remove MyEcobee device?

Hi @dalec,

There is a troubleshooting section at the ST community wiki (see item 6)::

http://thingsthataresmart.wiki/index.php?title=My_Ecobee_Device

P.S. I can also help you further if you need it, but I will have to charge you a support fee as
support can take a lot of my time and I have a full time job (and a family):grinning:

Regards.

I got further along this time. Can I make a suggestion on the wording of your instructions for us newbies? On the line that says:


d) Copy and paste the code from ecobee.devicetype.groovy under


It would have saved me some time if it had said something like:

d) Copy and paste the code from ecobee.devicetype.groovy by first clicking on the Raw button to provide a cleaned code under

I didn’t realize all my creation errors were stemming from me attempting to copy/paste from within the window not even knowing what the Raw button was for.

1 Like

@dalec,

If you carefully read the instructions provided in the configuration and
troubleshooting sections, you’d see detailed instructions for newbies :grinning:

See troubleshooting section (item 1) for example about how to create custom devices and smartapps.

Regards.

First of all know that I think you have done an outstanding job in creating this code to connect to the ecobee3 and I got it successfully working :slight_smile: That being said I was attempting to give you feedback as a newbie to ST and my first time experience in attempting to adding your non-standard device through the IDE interface.

So your response is exactly my point. I DID read the troubleshooting section which is how I finally went back to click the RAW. This made for an annoying experience which could have easily been avoided by stating it in the original instructions. The way it is written now forces a newbie to make reading the troubleshooting section a mandatory part of the installation. The troubleshooting section is a great help and tends to point people back to something already stated in the instructions they didn’t do. In my case the instructions never said it in the first place.

Of course now that I have actually published code for the first time successfully I hopefully won’t be making that mistake again. :wink:

PS - There are so many posts about your ecobee3 integration. Where would you prefer posts on feedback on it? I started here but is there a better place?

Hi @dalec, that’s fine you can post it here or PM me.

Bye.