Ecobee Remote Sensor Values

Here are some samples from my ecobee.items file. The Thermostat returns the temperature and humidity, but not the occupancy.

Number Thermostat_Temp        "Thermostat [%.1f °F]" (Ecobee, Temperature) { ecobee="<[123456789012#runtime.actualTemperature]" }
Number Thermostat_Humidity    "Thermostat Humidity [%d %%]" (Ecobee, Humidity) { ecobee="<[123456789012#runtime.actualHumidity]" }
Switch Thermostat_Occupancy   "Occupancy [%s]" (Ecobee) { ecobee="<[123456789012#runtime.Occupancy]" }

The remote sensor only returns temperature, but not the remote humidity and occupancy.

Number Thermostat_TempBedroom      "Bedroom [%.1f °F]" (Ecobee, Temperature) { ecobee="<[123456789012#remoteSensors(Bedroom).capability(temperature).value]" }
Number Thermostat_HumidityBedroom  "Bedroom [%d %%]" (Ecobee, Humidity) { ecobee="<[123456789012#remoteSensors(Bedroom).capability(humidity).value]" }
Switch Thermostat_OccupancyBedroom "Bedroom Occupancy [%s]" (Ecobee) { ecobee="<[123456789012#remoteSensors(Bedroom).capability(occupancy).value" }

How do I troubleshoot this?

The Ecobee API does not have an entry runtime.Occupancy, but you can address the ecobee3 thermostat itself as a remote sensor for the purpose of retrieving the temperature, humidity and occupancy at the thermostat. If your thermostat is named Dining Room:

Number Thermostat_TempDiningRoom      "Dining Room [%.1f °F]" (Ecobee, Temperature) { ecobee="<[123456789012#remoteSensors(Dining Room).capability(temperature).value]" }
Number Thermostat_HumidityDiningRoom  "Dining Room [%d %%]" (Ecobee, Humidity) { ecobee="<[123456789012#remoteSensors(Dining Room).capability(humidity).value]" }
Switch Thermostat_OccupancyDiningRoom "Dining Room Occupancy [%s]" (Ecobee) { ecobee="<[123456789012#remoteSensors(Dining Room).capability(occupancy).value" }

The value returned from remoteSensors(Dining Room).capability(humidity).value should be the same as runtime.actualHumidity, but the value returned from remoteSensors(Dining Room).capability(temperature).value might differ from runtime.actualTemperature because the latter is an average of the temperatures across active sensors.

True ecobee3 remote sensors only return temperature and occupancy, but they may return UNDEF if the remote sensor is not recently reachable wirelessly from the thermostat. I’ve seen occupancy not report when there is trouble connecting with the thermostat.

Does this help?

OK. So I can’t see the humidity from the remote sensors… that’s no big deal. However, the occupancy is having issues.

The following code stops on the first switch. If I remark out the first switch, it stops on the second one. See the screenshot below to demonstrate this. I’m assuming there is an error somewhere.

Switch Thermostat_Occupancy         <present> (Ecobee) "Downstars Occupancy [%s]" { ecobee="<[123456789012#remoteSensors(Downstairs).capability(occupancy).value]" }
Switch Thermostat_OccupancyBedroom  <present> (Ecobee) "Bedroom Occupancy [%s]" { ecobee="<[123456789012#remoteSensors(Bedroom).capability(occupancy).value" }
Switch Thermostat_OccupancyBedroom2 <present> (Ecobee) "Bedroom Occupancy [MAP(]" { ecobee="<[123456789012#remoteSensors(Bedroom2).capability(occupancy).value]" }
Switch Thermostat_OccupancyOther    <present> (Ecobee) "Other Occupancy [MAP(]" { ecobee="<[123456789012#remoteSensors(Other).capability(occupancy).value]" }

DateTime Thermostat_Modified "Last Updated [%1$tm/%1$td/%1$tY %1$tl:%1$tM:%1$tS %1$tp]" <info> (Ecobee) { ecobee="<[123456789012#lastModified]" }

The first 4 items are ill formed. The order of information matters. Order the sections like in the last item. Consider using Designer to syntax check.

Let me know how it goes!

Thank you! This is resolved. I used HABmin to add these items.

1 Like