My Ecobee Init (Service Manager) for easier installation

@Jim_Salyer, after some testing, I realized that I needed to revert to the previous version (V2.0.1)
as the change described below is not working for the ecobee integration:

It should work now. Please update your code with my github.

Regards.

thanks, working great now trying to get remote sensors working after I select the thermostat in the app and select next the next page is blank

Hello @Jim_Salyer, please refer to this thead for any issue with Ecobee3’s remote sensors.

BTW, you may want to check your ecobee3 firmware version prior to use the ecobee3RemoteSensorInit smartapp as firmware v3.6 is recommended.

You may also want to check if your remote sensors are well connected at the physical thermostat or at the web portal first (and that they report occupancy and temperature data)

Also, be aware that ecobee has recently warned its user base that they are experiencing some data reporting issues with their servers that may affect the smartapp execution.

You’ll see some recent posts from other ecobee3 users at the end of the thread about this issue.

P.S. If you have any exceptions in your live logging, please PM me the trace and I will look into it.

Regards.

Hello,

I set up this Ecobee 3 integration a few weeks ago and recently I have been getting a lot of these errors:

MyEcobeeInit> too many exceptions/errors or unauthorized exception, doRequest>exception groovyx.net.http.HttpResponseException: Internal Server Error for null (6 errors), press on ‘ecobee’ and re-login…

Some days none, some once an hour. Has there been any more progress on the cause of this?

Hello,

ST is investigating on their end.

See this thread (at the bottom) for more details:

Regards.

@bgoddard79,

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 main branch:

(4) Re-execute MyEcobeeInit and ecobee3RemoteSensorInit

Regards.

Thank you for the update. I just implemented these changes. I will follow up with results after some time to determine their effectivness

Hi @yvesracine,

It looks like this is better than yesterday but I have still had to re-login to MyEcoBeeInt a couple times today after it failed a several successive attempt to poll for data. One thing I noticed different today than yesterday is when I go into MyEcoBeeInit to re-login the second page says I’m still connected but if I hit Next and go to the third page it has a long hex string of characters instead of the thermostat name. If I tap on the string it send me to a blank page that says No Available Options. If I back up and re-login it returns to normal. Hope this helps a little.

Hi @yvesracine,

I’m also experiencing the connection issues from above. I’m in process of reinstalling to correct. As part of that process I was hoping to also use the GitHub IDE integration to be able to keep my device types/smartapps more up to date with your code instead of having to cut and paste every time. Unfortunately, it doesn’t let me pull in from your repository and the error messages in the IDE are not helpful.

For another devicetype I’m playing around with, I found that the IDE requires very specific paths and naming to work, so perhaps that is causing the problem here.

Do you use the integration on your end? Any willingness to support it? I’d be willing to help track down what might be preventing it if needed.

Thanks

OK, I haven’t experienced any connection issues so far on my end…

(1)Which versions of MyEcobeeInit, My Ecobee Device and ecobee3RemoteSensorInit are you using (just to make sure that you have the latest version) ?

(2) Did you uninstall MyEcobeeInit before updating the code?

Sorry, I’m asking those questions as I haven’t experienced any issues so far… Your input may require some further tuning to the throttling that I put in place in My ecobee Device.

Thnx

In my case;

(1) I’m using MyEcobeeInit v2.4.2 and ecobee3RemoteDensorInit v2.0.

(2) I uninstalled everything and started from a clean slate, even the sensor types.

I’m not yet using any of the ecobee3 sensors in apps so it’s easy to rebuild right now.

I am 8 hours into the new files without having to reconnect. This is better than I have seen in quite some time.

Hi @StrykerSKS, sorry I’m not planning to integrate to the SmartThings public github at the moment. I do not want people to consider my code as “open source”…

Regards.

ok, thnx for your feedback.

I created another version for you to test, you’d need to use my beta branch;

You’d need to just copy and paste my Ecobee device, MyEcobeeInit & ecobee3RemoteSensorInit, save & publish.

You do not need to reinstall everything…

Regards.

Thanks for your help @yvesracine. I have the beta versions running now. I’ll keep watch and let you know if I see any issues.

I’m new to using this IDE so just to be clear, I uninstalled the old init apps from my iPhone and then deleted the device and apps from the IDE prior to copying the beta versions and publishing them. Is this the proper way to rebuild?

@rda2w, you do not need to uninstall and reinstall this time (as you have reinstalled it once before)

Just go to

https://graph.api.smartthings.com/ide/devices

Copy and paste the My Ecobee Device code into My ecobee device type (click on it before), save & publish (upper right corner in the code window).

And, go to https://graph.api.smartthings.com/ide/apps for the smartapps.

Copy and paste the code, & Save and publish.

Regards.

P.S. Please resync again as I’m testing a new way of doing error handling.

Ah, OK. I thought I had to create a new device type each time. I didn’t realize I could copy into the existing device type and republish it. I have the latest version running now.

There is actually no need to make it part of the SmartThings public github, you can actually reference any github root. I am doing this with a few devices that I have forked in order to meet my configuration. So there should be no confusion and someone would have to explicitly add it to their setup.

I was hoping to avoid having to fork your project in order to get the integration. Perhaps I’ll get some time to play with it this weekend and I can provide more concrete feedback of what would be needed to make it pull in easily. And then you can decide if it is worth the effort on your side or not. So far, I’ve found it super valuable for the devices I’m experimenting with to make it much quicker to make changes and sync them back and forth between SmartThings and my GitHub account. I can even edit them in the SmartThings IDE, run them and then simply sync them back up when my edits are completed. Saves a lot of cut&paste actions!

Yes, I’d be interested then to know how to integrate properly to github for my device type (to avoid forks).

Let me know.

Just an update, @yvesracine. I still have beta v3.2.8 running for going on 16 hours and see just one exception in the history at 2:40AM. However, I did not have to re-login and everything still seems to be running normally. Much better than previous days. As an aside, I have seen some drop outs in my ecobee data over the past couple days so their servers were having some issues or they were doing maintenance.

MyEcobeeInit> api>refresh_tokens>exception groovyx.net.http.HttpResponseException: Unauthorized at https://api.ecobee.com/token?grant_type=refresh_token&code=u7M1oELURPAa5wv0TsgmiXNFxJ6V0lOa&client_id=qqwy6qo0c2lhTZGytelkQ5o8vlHgRsrO, not able to renew the refresh token, need to re-login to ecobee, run MyEcobeeInit… (1 errors), press on ‘ecobee’ and re-login…