Ecobee Climate Hold

I’m trying to set the climate hold for ecobee to “home” (or ‘sleep’ or ‘away’ for other uses) but when selecting the ecobee’s thermostat mode device (home/away/sleep/vacation), there is no way to select the input. In other words, I can select the device, the type of request (setclimatehold) but no ‘variable’ if will. See screenshot:

That would likely be an error in their service file, then. I may be able to train Reactor to work around it (no code, just a mod to a device info file). Can you go to the Tools page and use the Submit Device tool, selecting this device? Let me know after.

Submitted for both “Thermostat Mode” and “Thermostat” which are devices created by the Ecobee plugin, running a ecobee3 if that helps. Thanks RP!

1 Like

OK. Sit tight. I’m away from my desk this morning but I’ll look at the data ASAP.

No big rush, just tweaking some things. :grinning: I’m currently triggering the action in a vera scene (which I cannot select the action via advanced editor there either, fwiw). I have to select the method where I can click the ‘home’ button on the device.

I vaguely remembered fixing that when I ported the plugin to UI7/openluup. @ruster34, what version of the plugin are you running?

I’m on 1.9 and have auto-update checked.

I just looked. The latest version is 2.11 and was never released to the App Store. It was on the AltAppStore

Sorry both watou and I have stopped maintaining the plugin.

Thanks for the link - I downloaded the zip and uploaded to my luup files (I don’t yet use altUI) but don’t see anything different. Is there anything else I need to do in order to get the new files to update?

The UI7 version of the plugin should have created a new device which has the climate hold modes. It is no longer the thermostat. For reactor, you should run your actions on that new device. I am not sure that’s what you are doing. The new device should enable you to make mode changes from the UI7 scene wizard but I am not sure how Reactor displays it.

oh yeah, i’ve had the ‘modes’ device for a while - and that’s what I was using in Reactor and advanced scene editor section in Vera that wasn’t giving me the option for the variable for the hold type. If executed without the variable it just permanently holds the current set points. With the modes device in the UI, i’m able to select home/away/night/vacation which is what I’m trying to do via Reactor or the advanced scene editor in Vera.

For reference, I have the following devices that were all automatically created through the plugin long before today’s file upload:

  1. thermostat controls (set points, operating modes, fan modes)
  2. modes
  3. humidity
  4. remote sensor temp
  5. remote sensor hum
  6. main ecobee device (get pin)
  7. main thermostat motion
  8. thermostat set point
  9. I think other humidity/temp devices I assume are averages between the sensors or something.

The only device which has humidity is the thermostat itself and the extra temperature sensor is also from the thermostat itself. It isn’t an average. The extra sensor was created because the API published the temperature in two variables and watou, the original plugin author, took the conservative approach to display both of them (in thermostat and an extra sensor). They are not averages. If there is an average, it is more likely the one in the thermostat. You are following all the right processes it seems. Note that my version has you create a dev account with ecobee and use your own API key as opposed to the one watou provided and embedded in the plugin. Now back to the hold in reactor, will need to look to @rigpapa. I am not sure what is missing. If I remember correctly, I was able to use the scene editor to change hold modes though I almost did all of it through lua codes.

The problem is that the <relatedStateVariable> tag is required (in UPnP) for all arguments in actions defined by the service file, and they are missing, at least from the version in use here (and just confirmed, also in @rafale77 's github repo). The fact that the Vera scene editor and device control panel can do the action with a button is a function of declarations in the static JSON file defining the UI, but that has nothing to do with the service definition (unfortunately, but that’s an old complaint of mine and I won’t go down that rabbit hole now–suffice to say that this is exactly why that duplication of effort is a problem). This also explains why the Vera Advanced Editor for scenes also cannot edit these actions–it uses service definitions, not static JSON.

I can teach Reactor that these actions have parameters not declared in the service file; I was ready for that contingency when I designed Activities, but the service files themselves really need to be fixed.

Dumb question, but how do I manually update my v1.9 ecobee app to the new v2.11 version? I’ve dowloaded the .zip file from GitHub, but I don’t recall ever manually installing an app. Thanks in advance for pointing me in the right direction!

unzip the files and drag them into the apps/Develop Apps/Luup files screen to upload them on the vera.

1 Like

OK, go into your ReactorSensor, and click on the Activities tab. Then click the Tools tab. The “Update Device Information Database” section should now be showing you that there is an update available. Hit the update button. This works immediately, and for all ReactorSensors. You should then be able to return to the Tools tab and complete your SetClimateHold action.

1 Like

Thanks @rigpapa and @rafale77 - you guys are both amazing!!

I’m now able to successfully set the thermostat mode via activities! Also, I didn’t unzip the files earlier, that’s 99% my issue, right?! lol… what I get for trying to do something on my chromebook.

Definitely have to unzip the files, but as I mentioned, the problem in the service files is still in @rafale77 's GitHub repo, a carry over from the prior code/author, so even if you had successfully updated, it would not have changed. Better to have his updates for all of the other things it contains, though.

1 Like

The icons folder error’ed out on upload, so i tried the individual files, which all uploaded successfully. But now the thermostat icon (little black ecobee) isn’t showing (and nothing else is either…) just curious if something easy for me to do on my end. Not asking for anything on the plugin side if that’s the answer. I know you mentioned that you’re no longer updating that…

And once again @rigpapa comes through with the solution! :+1: :+1: :+1:

Sorry I couldn’t be of further help with the plugin. I liked the ecobee but the ultra reliance on their cloud made me sell mine so it is hard for me to test things.

@ruster34 on the icon problem, give me a minute. I will look into it. It is possible that you have downloaded the openluup version which uses a slightly different install with the the altappstore so the icon location differs.

edit: ok I figured it out. The old watou version had you get the icon from the web… watou’s hosted website. Since he was not maintaining it, I decided to localize the icon so you now have to upload the icon on the vera’s default icon location… which now varies depending on what firmware version you run. If you can SCP into your vera and upload the files to /www/cmh/skins/default/img/devices/device_states. If you can’t (which would mean you are running 7.30) I will have to modify the plugin and have you drop it elsewhere.