I understand what you’re seeing - I’ll post an updated thermostat device as soon as I can (I’ve spent much of today trying to get my FiOS upload speed over 2Mbps…still not fixed, so I’ll post it no matter how long it takes, as soon as I can).
PS: the setHeatingSetpoint and setCoolingSetpoints are apparently called in that order, and when the coolingSetpoint is changed, it picks up the wrong heatingSetpoint. This is what I am fixing.
NB: Both setCooling… and setHeating… will enforce the delta configured on the thermostat (minimum between heat and cool). In setHeatingSetpoint, it will raise the cooling setpoint if the delta isn’t large enough, while setCoolingSetpoint will lower the heating setpoint to accommodate the configured delta. Depending upon your settings at the thermostat, this could be why you are seeing weird numbers. Or not…
My thresholds on all thermostats are 3 degrees and 68-74 falls well within this range. Also the setpoints seem to mostly work, it’s just sometimes that they don’t get set correctly. It’s not an issue that happens 100% of the time
Strange indeed. Sounds like something’s wrong with the Android app, although I haven’t heard about this from anyone else. SmartThings support probably won’t help either, they don’t generally help out on 3rd party device handlers.
Can the smart mode helper also take into account if the ecobee is currently cooling for the if temperature is at or lower x temp; vice versa for if the ecobee is currently heating for the if temperature is at or greater temp x condition.
Maybe branch this helper to Smart Seasonal Mode…two cents.
Oh, sorry - I may have sent you on a wild goose chase (an American colloquialism ).
To Publish apps:
If you are using the github integration approach, there should be a “Publish” checkbox on the page that lists the repository files, but you may have missed it, so on to the manual approach:
Go to My SmartApps in the IDE, and click on the file name of each of the SmartApps (each starts with “Ecobee Suite”). This will open them in the editor. Top Right you will see a button “Publish” - click that, then select “For Me”. Repeat for each of the SmartApps. Then go do the same thing for the two Devices under My Device Handlers.
Then, go to your mobile device, SmartThings App, MarketPlace, SmartApps, My Apps, and click on Ecobee Suite Manager - this app will guide you through the rest of the installation.
As of 3:45pm EDT on March 20, 2018, Ecobee Suite Thermostat has been updated to version 1.4.05, and Ecobee Suite Manager has been updated to version 1.4.13
Changes in this release:
Fixed a race condition where consecutive calls to setHeatingSetpoint() immediately followed by setCoolingSetpoint() would result in the wrong heatingSetpoint being set. This situation can occur when using SmartThings Routines to set specific temperatures (instead of using the Helper SmartApps to change the thermostat Program). Thanks to @tscan for finding this one.
Optimized so that a call to setThermostatProgram() requesting Program change to Hold: XXX while the thermostat is already in Hold: XXX does not execute a redundant resumeProgram() followed by setting the Program to Hold: XXX again. Thanks to @ssilence for this suggestion.
Accelerated the display of updates to heating and cooling setpoints
Fixed an innocuous bug in a specific call to sendJson()
This update is recommended for all users, and both files should be updated together for the optimal result.
So unfortunately my automation that ran this morning did not set the house correctly again. The automation is set to 70/75, the coolingHoldTemp set correctly but the heatHoldTemp did not for some reason. I took some screenshots of the what the thermostat was sending when the automation ran this morning. I also took some screenshots of when the automation ran last night (11:30PM), and you can see that the wrong coolHoldTemp value is sent (760), but then right after the correct value is sent (800). When I ran the automation manually this morning, the correct heatHoldTemp and coolHoldTemp values were sent. Screenshots attached.
What are you using to set the temperature? Are you using a routine or one of the Helper Apps? I would greatly recommend not using the routine natively and set it with one of the helper apps. Plus, why are you setting the temp manually? Why not use the comfort setting programs? If you just want to set the temp manually you could buy a much cheaper and easier to implement “dumb” z-wave thermostat with no programming.
I am using a routine, just personal preference and WAF. I have different automations for different things. Sure these ones are just on a timer, but I have others for when we leave/arrive/etc. I had modes on the thermostat and people would mess with it and muck up the modes. I may just end up reverting back to the modes and putting an access control on the thermostat but I’d really like this to just work.
I have two thermostats and have smartthings set to put them in away when we leave house, and resume schedule when we return. But for some reason when we return it doesn’t always put them both back on schedule, for some reason one of them is often still stuck in away mode. Not always, but enough to be annoying.
Any ideas? Or is this smart app not meant to handle two?
The problem here is that the Routine is calling into the thermostat twice, once to change the heating setpoint, and once to change the cooling setpoint. THe ecobee API requires both to be provided, and one call or the other is using the wrong temperature setting - the first call can have wrong cooling if the thermostat(s) where in a Hold condition already (because the “resume” didn’t make the round-trip to the thermostat and back again in time), and the second because the heatingSetpoint didn’t complete the round trip).
The solution is pretty straight forward - I hope to have it fixed today…
Thanks for providing this. I’m trying to setup your ecobee suite but I keep running into errors during setup saying “device is currently in use”. I previously had My Ecobee Device but I just uninstalled that because it runs into race conditions and is huge (it misses changes often for me). I have uninstalled the device and all the accompany smartapps associated with My Ecobee Device and I still get the error. Pls any idea what’s going on and how to fix this?