Ecobee 3 Remote Sensors into ST

I cleared the app uninstalled and tried to reinstall. It will no longer install.

11:27:25 AM: error java.lang.IllegalArgumentException: Name cannot be null. @ line 298
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: trace ecobeeRemoteSensorsInit>scheduling takeAction every 30 minutes
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: trace takeAction>end
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateMotionSensors>couldn't find Motion Dectector device JODY for dni dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Motion Detector.2, probably not selected originally
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateMotionSensors>looking for dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Motion Detector.2
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateMotionSensors>couldn't find Motion Dectector device Kids' Room for dni dc627ea1-6f27-482d-a819-d8e234ace0d6.Kids' Room.Motion Detector.2, probably not selected originally
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateMotionSensors>looking for dc627ea1-6f27-482d-a819-d8e234ace0d6.Kids' Room.Motion Detector.2
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateMotionSensors>couldn't find Motion Dectector device Bedroom for dni dc627ea1-6f27-482d-a819-d8e234ace0d6.Bedroom.Motion Detector.2, probably not selected originally
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateMotionSensors>looking for dc627ea1-6f27-482d-a819-d8e234ace0d6.Bedroom.Motion Detector.2
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateTempSensors>ecobeeRemoteSensorOccData= [2,Bedroom,occupancy,false, 2,Kids' Room,occupancy,false, 2,JODY,occupancy,false]
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateTempSensors>couldn't find Temperature Sensor device JODY for dni dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Temperature Sensor.1, probably not selected originally
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateTempSensors>looking for dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Temperature Sensor.1
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateTempSensors>couldn't find Temperature Sensor device Kids' Room for dni dc627ea1-6f27-482d-a819-d8e234ace0d6.Kids' Room.Temperature Sensor.1, probably not selected originally
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateTempSensors>looking for dc627ea1-6f27-482d-a819-d8e234ace0d6.Kids' Room.Temperature Sensor.1
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateTempSensors>couldn't find Temperature Sensor device Bedroom for dni dc627ea1-6f27-482d-a819-d8e234ace0d6.Bedroom.Temperature Sensor.1, probably not selected originally
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateTempSensors>looking for dc627ea1-6f27-482d-a819-d8e234ace0d6.Bedroom.Temperature Sensor.1
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: debug updateTempSensors>ecobeeRemoteSensorTmpData= [1,Bedroom,temperature,74, 1,Kids' Room,temperature,76, 1,JODY,temperature,78]
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:25 AM: trace takeAction>about to call generateRemoteSensorEvents()
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:24 AM: trace takeAction>begin
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:24 AM: trace ecobeeRemoteSensorsInit>created 1 MyEcobee's Temp Sensors
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:24 AM: debug created My ecobee3 Temperature Sensor JODY with id dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Temperature Sensor.rs:101
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:24 AM: debug About to create child device with id dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Temperature Sensor.rs:101, sensorId = rs:101, labelName= My ecobee3 Temperature Sensor JODY
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:24 AM: debug initialize>Looping thru temp Sensors, found id dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Temperature Sensor.rs:101
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: trace ecobeeRemoteSensorsInit>created 1 MyEcobee's Motion Sensors
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: debug created My ecobee3 Motion Detector JODY with id dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Motion Detector.rs:101
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: debug About to create child device with id dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Motion Detector.rs:101, sensorId = rs:101, labelName= My ecobee3 Motion Detector JODY
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: debug initialize>Looping thru motion Sensors, found id dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Motion Detector.rs:101
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: trace ecobeeRemoteSensorsInit>deleting 0 MyEcobee's Temp Sensors
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: debug getChildDevices(false), children=0
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: trace ecobeeRemoteSensorsInit>deleting 0 MyEcobee's Motion Sensors
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: debug getChildDevices(false), children=0
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: trace remoteSensorTmpData from Thermostat was provided with null...creating subscription
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: trace remoteSensorOccData from Thermostat was provided with null...creating subscription
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: debug initialize>begin
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:23 AM: debug Installed with settings: [ecobee:Thermostat, motionSensors:[dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Motion Detector.rs:101], tempSensors:[dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Temperature Sensor.rs:101]]
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:11 AM: debug selectTempSensors> sensors: [dc627ea1-6f27-482d-a819-d8e234ace0d6.Bedroom.Temperature Sensor.rs:102:Bedroom, dc627ea1-6f27-482d-a819-d8e234ace0d6.Kids' Room.Temperature Sensor.rs:100:Kids' Room, dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Temperature Sensor.rs:101:JODY]
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:11 AM: debug selectTempSensors>ecobeeSensors data = [[id:rs:102, inUse:false, name:Bedroom, code:C3J2, type:ecobee3_remote_sensor, capability:[[id:1, value:745, type:temperature], [id:2, value:false, type:occupancy]]], [id:rs:100, inUse:false, name:Kids' Room, code:BWD3, type:ecobee3_remote_sensor, capability:[[id:1, value:761, type:temperature], [id:2, value:false, type:occupancy]]], [id:rs:101, inUse:false, name:JODY, code:C3JM, type:ecobee3_remote_sensor, capability:[[id:1, value:787, type:temperature], [id:2, value:false, type:occupancy]]]]
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:06 AM: debug selectMotionSensors> sensors= [dc627ea1-6f27-482d-a819-d8e234ace0d6.Bedroom.Motion Detector.rs:102:Bedroom, dc627ea1-6f27-482d-a819-d8e234ace0d6.Kids' Room.Motion Detector.rs:100:Kids' Room, dc627ea1-6f27-482d-a819-d8e234ace0d6.JODY.Motion Detector.rs:101:JODY]
dc627ea1-6f27-482d-a819-d8e234ace0d6 11:27:06 AM: debug selectMotionSensors>ecobeeSensors data = [[id:rs:102, inUse:false, name:Bedroom, code:C3J2, type:ecobee3_remote_sensor, capability:[[id:1, value:745, type:temperature], [id:2, value:false, type:occupancy]]], [id:rs:100, inUse:false, name:Kids' Room, code:BWD3, type:ecobee3_remote_sensor, capability:[[id:1, value:761, type:temperature], [id:2, value:false, type:occupancy]]], [id:rs:101, inUse:false, name:JODY, code:C3JM, type:ecobee3_remote_sensor, capability:[[id:1, value:787, type:temperature], [id:2, value:false, type:occupancy]]]]

Hi @jodyalbritton, I got itā€¦ The name of the device (its dni) is different between the creation and the update of the sensor data.

Thnx for your input. I will try to figure out how to make the changes to the code (probably tonight).

Iā€™ll let you know. We are really close.

@jodyalbritton, I fixed the bug in the My Ecobee device code.

Please grab it, save and publish.

The updates should then work fine.

Let me know.

Still will not install. I cleared app data removed the device types and smart apps. Re-installed everything. Still getting Unexpected Error Occurred. During the install phase the temp device shows up in the logs and reports this

12:50:32 PM: debug Parse returned null

Still getting this error as wellā€¦

12:57:34 PM: error java.lang.IllegalArgumentException: Name cannot be null. @ line 292
1 Like

I removed this section of code beginning at line 291 and the smartapp was able to install. I can see the motion detectors and the temps as well. Great Work! @yvesracine

        if (delay >= 5 && delay <10) {
		runEvery5Minutes(setZoneSettings)
	} else if (delay >= 10 && delay <15) {
		runEvery10Minutes(setZoneSettings)
	} else if (delay >= 15 && delay <30) {
		runEvery15Minutes(setZoneSettings)
	} else if (delay >= 30 && delay <60) {
		runEvery30Minutes(setZoneSettings)
	} else {        
		runEvery1Hour(setZoneSettings)
	}

Sorry, bad copy and paste!!

I will correct everything tonight and document the processā€¦

Hello,

@jodyalbritton, I was virtually debugging at work, sorry about the scheduling issue!! Thnx for your input again.


For those of you who want to expose their ecobee3 remote sensors as objects in SmartThings,
I was able to document the initialization process in the readme file below.

It should be much easier for the next ST users.


Regards.

Iā€™ll give it a shot now.

@yvesracine I have three of the remote sensors and none of them are reporting any motion. The temperatures are reporting. What is the secondary tile on the temperature sensor?

@yvesracine My results are the the Ecobee3 remote sensors are not visible within the remoteinit app.

@yvesracine the thermostat is reporting that all rooms are occupied and have been for over 30 minutes.

OK, @Drewbert34 could you redo the steps with live logging on?

Go to

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

Prior to launch the ecobee3RemoteSensorInit app.

Please send me any errors in the log.

@jodyalbritton, I believe that there are some similar issues that are discussed at

http://www.smarthomehub.net/forums/discussion/213/resetting-ecobee3-sensor

You may want to register at this site, and check it out.

As I donā€™t own an ecobee3, I donā€™t know whatā€™s normal behavior or not.

Sorry.

Sent. I will be watching the board if you need anything else.

@Drewbert34, itā€™s a cache issue. I PM/replied to youā€¦ I also updated the readme file about it.

Yes I cleared it several times. I think my original copy/paste for the updated device type may not have worked. Once I tried that again all went as planned.

Now that they are visible in ST it doesnā€™t appear they are responsive enough for much other integration. Iā€™ve got ST set to push notifyā€¦weā€™ll how they respond.

Hey Yves - I am getting an error when trying to run ecobee3RemoteSensor on the iphone.

Page 1 works ok, I chose the thermostat and set the interval to 5 minutes. Press next and I get a blank page. Press done and it said ā€œFailed to save page:ā€ and then another error right away ā€œError: There was an error, please try again.ā€

The only way to exit is to back out.

Hello @creed205, did you follow the instructions in the readme file:

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

Please activate live logging in the IDE, before calling ecobee3RemoteSensorInit so that I can better support you.

To get all the tracing I need to correct the issue, please do the following

  1. Grab the latest code for My Ecobee device, save and publish
  2. Go to https://graph.api.smartthings.com/device/list,
  3. Click on My Ecobee device,
  4. Edit the preferences (middle of the page)
  5. Set verboseTrace to true (as long as there is a value)
  6. Click Save at the bottom of the page
  7. https://graph.api.smartthings.com/ide/logs
    PM me the logs of any errors related to My Ecobee Device and ecobee3RemoteSensorInit
    Regards.

After installation last night none of the remote sensors show any traffic aside from when paired.

I sat in front of one of them for several hours while watching TV. As previously reported the temperature function is working.