[BETA RELEASE] Updated Open Source Ecobee Device Type and SmartApps

@storageanarchy line 269 or 267? Line 269 results in a compiler error and I can’t save it. I can modify 267, which is the one that looks like should be modified.

I’ll run with that and we’ll see what happens.

Modifying 267 didn’t work.

IDE error:

9:30:21 PM: error groovy.lang.MissingMethodException: No signature of method: physicalgraph.app.LocationWrapper.mode() is applicable for argument types: (java.lang.String) values: [Vacation]
Possible solutions: setMode(java.lang.String), getMode(), use([Ljava.lang.Object;), wait(), dump(), any() @ line 269

If I revert back to the version above and change line 269, this is the error in the IDE editor:

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
script1489628149864298585240.groovy: 340: expecting '}', found '' @ line 340, column 2.
}
^

Adding an extra } beneath the new line fixing the compilation error.

Trying like this.

You should have:

def changeMode() {
	if (settings.runMode != location.mode) { 	// only if we aren't already in the specified Mode
		if (state.ecobeeThatChanged) sendNotificationEvent("Changing Mode to ${settings.runMode} because ${state.ecobeeThatChanged} changed to ${state.ecobeeNewProgram}")
    	location.mode(settings.runMode)
    }
    state.ecobeeThatChanged = null
}

def runRoutine() {
	if (state.ecobeeThatChanged) sendNotificationEvent("Executing Routine ${settings.runAction} because ${state.ecobeeThatChanged} changed to ${state.ecobeeNewProgram}")
    state.ecobeeThatChanged = null
	location.helloHome?.execute(settings.runAction)
}

I definitely had some fubar’d stuff!

Your new set of code works! I’m able to set the ST mode and run a routine based on the ecobee program. Thank you very much!

That’s great news - I’m just about to release my latest, and I was hoping this problem was solved…

Please see the General Release thread here: https://community.smartthings.com/t/release-the-best-free-ecobee-dth-and-helper-smartapps/81616

@storageanarchy So this new code will not conflict with ST being the “master” control of pushing the mode down to ecobee right? I just don’t want to see a race condition loop

@dalec - it is up to you not to create conflicting Routines. If you have the thermostat’s Vacation program turn on ST Away, which then turns on the Ecobee Away program, you will of course wind up in Away instead of Vacation on the thermostat.

That said, the new code doesn’t change the thermostat to a program if it is already running that program, and the Helper Smart Apps are driven only by program changes, so you should be fine…

1 Like

Hello,

I just installed the smart apps and device handlers. I added my Ecobee temperature sensors to Ecobee Connect and the sensors were created but they won’t display a temperature. All three are just showing two dash lines.

Did I miss something?

Here’s the errors I’m receiving on one of the sensors

c37bb33f-163f-463c-846a-9c212008f3c7 4:41:58 PM: error java.lang.NullPointerException: Cannot set property ‘onlineState’ on null object @ line 217
c37bb33f-163f-463c-846a-9c212008f3c7 4:41:58 PM: trace generateEvent(): parsing data [temperature:75.4]

Did you enable OAuth for Ecobee Connect?

Did you delete any old devices and SmartApps before installing the new ones?

These are probably the two most common mistakes people tend to make.

Thanks!
Barry

Yes, I did enable OAuth in Ecobee Connect and yes, I deleted my former copy of Ecobee Connect.

@johnahesch

OK - sorry for the delayed response, I was flying home last night.

If you could, please do this:

  1. Go into IDE and turn on Live Logging

  2. Go into Ecobee(Connect) on your Mobile, and in the Preferences section, set the Debug Level to 5

  3. Also, set the Polling Interval to 1 minute

  4. Before you exit out of Ecobee (Connect), select that app in the IDE Live Log (by clicking on its name in the header of Live Logging).

  5. Exit out of Ecobee (Connect) on your mobile

  6. look for the log entry that says "requesting updates for thermostats XXXXXXXXXX, XXXXXX (forced)

  7. capture and send me a PM with the log entries from there until any error that you see, or at least the next 60 seconds worth of data.

Thanks…
Barry

Problem should be fixed in ecobee-sensor.groovy v1.0.2

I just set up a couple Ecobee routines using the smart app. After I created them and got them named I can’t find them anywhere.

I went to Marketplace->SmartApps->MyApps->Ecobee Routines and filled in my settings. After selecting done I got the message at the top that the app was created successfully.

I expected to see the apps I created in Automation->Smartapps but they are not there.

Any ideas?

John

Disregard. I found them in Ecobee Connect under Helper Smart Apps.

Yes, you should ONLY create and edit them from within Ecobee (Connect)

Note that I have FINALLY made my version available via SmartThings/GitHub integration.

See here for more information…

Also note that the old version is being deprecated.

when i try to download open contacts smartapp through the integration i get this:
Updated 0 and created 0 SmartApps (1 skipped due to errors)
All else works great

@greenzkool -

Which is your mobile platform (iOS or Android)?

Which version are you running?

When you. say “download”, did you first download and save all the SmartApps in the IDE first? Ecobee (Control) doesn’t actually download the apps, just create the instances…

BE sure to use the latest release version and follow the instructions there…

I’m having the same problem as @greenzkool. In my IDE if I try to install or update the open contacts SmartApp through GitHub, I receive an error. I can install it manually, only GitHub integration for that one SmartApp fails. The rest of the GitHub integration works.