MonitorEcobeeTemp

The Unofficial SmartThings Blog
Jump to: navigation, search
This smartapp is Ecobee approved badge YVESR.png
ecobee3 Thermostat with Sensor, Wi-Fi, 2nd Generation, Works with Amazon Alexa

ecobee3 Thermostat with Sensor, Wi-Fi, 2nd Generation, Works with Amazon Alexa

Category: My Apps

Author:Yves Racine

ST Community handle http://community.smartthings.com/users/yvesracine/activity

Company Link: http://www.ecomatiqhomes.com#!home/mainPage'



If you like My Ecobee Device and related smartapps, please support the developer by clicking on the paypal link below:

https://paypal.me/ecomatiqhomes




Summary

MonitorAndSetEcobeeTemp,the smartapp that adjusts your programmed ecobee's setpoints based on indoor/outdoor sensors.


Pre-Requisites

  • Ecobee thermostat controlled via ST by MyEcobee device
    => see http://thingsthataresmart.wiki/index.php?title=My_Ecobee_Device
  • ST WeatherStation such as this one (optional):

https://github.com/yracine/device-type.weatherstation4

  • Temperature Sensors in your rooms (optional) : for optimal cooling/heating setpoints
  • Motion sensors (optional): to detect if rooms are occupied
  • Climates/Programs set at ecobee portal
  • You should deactivate the ecobee remote sensors' participation in any climate settings at ecobee as my smartapp will likely be in conflict

with the ecobee's remote sensor logic.

  • Be aware that the app has been designed to take over your ST thermostat and make automatic adjustments to your setpoints.

If you make manual changes to your setpoints or use other smartapps/routines, they will likely be overridden at the next app cycle (by default, it's set at 10 minutes).

  • If you need a "smarter" smartapp that can detect when a manual "hold" or a "climate/comfort settings" auto override has been made, then please contribute to ecobeeSetZoneWithSchedule which has additional logic to do so

http://www.ecomatiqhomes.com/store

Supported Features

  • MonitorAndSetEcobeeTemp is a basic version of ecobeeSetZoneWithSchedule. If you want to visualize and have finer control of all your room sensors and how they affect your thermostat's setpoints (along with many other features such as alternative cooling, smart zoning, etc), please contribute to the paid smartapp at my store.
  • You can use any ST connected temp sensors to average out the temperature and adjust your setpoints when your thermostat is in 'cool' or 'heat' modes
  • You can also use your indoor motion sensors to set your thermostat to 'Away' or 'Home' (optional)
  • You can specify the maximum temp adjustment allowed (optional)
  • Notifications can be sent to the ST user account (optional)
  • You can use your preferred weatherStation to adjust the setpoints at your ecobee thermostat(s)
  • The smartapp can be temporarily deactivated (on hold) with a power (virtual or physical) switch (optional parameter)
  • Here are some explanations on the setpoints adjustment based on the avg temp calculation method.
  You can always set the max temp adjustment in the smartapp to avoid too large temp adjustment (by default, it is set to 5F).                                        
  The parameter is called max_temp_adjustment and it overrides any calculation when the calculated temp adjustment is bigger than the max temp adjustment.  
  The setpoints adjustment is based on the following formula:
  Offset to be applied to setpoint = (avg Temp at your sensors) - (temperature at your thermostat)
  Ex. offset = 72F (avg at your sensors) - 75F (temp at your thermostat)
  offset = -3
  new setpoint = scheduled baseline - offset
  new setpoint = 74 - (-3)
  new setpoint = 77
  
  A temporary hold will be set with the new 77F setpoint.
  • N.B. If you set some outdoor temp thresholds, then the outdoor logic may conflict with the avg temp calculation logic based on your indoor temp sensors. The latter will prevail.

Code location: http://github.com/yracine/device-type.myecobee/tree/master/smartapps

Instructions for My Ecobee Device installation (readme): http://github.com/yracine/device-type.myecobee/blob/master/README.md

UI Look & Feel

Dashboard

M&SETP1.jpg


M&SETP2.jpg


M&SETP3.jpg


Indoor Temp Sensors Setup


M&SETP4.jpg


Indoor Motion Sensors Setup


M&SETP5.jpg


Outdoor Threshold Options


M&SETP7.jpg


Notification & Other Options


M&SETP6.jpg

Troubleshooting

.................................................................................................................................

Issue #1: I don't know how to create a custom smartapp

.................................................................................................................................

See the explanations of a fellow community member here:

http://community.smartthings.com/t/faq-an-overview-of-using-custom-code-in-smartthings/16772

.................................................................................................................................

You can also use the github integration and update your repo:


GitHub Settings:

Owner: yracine

Name: SmartThingsPublic

Branch: master

You then need to save & publish each "edited" smartapp.

Issue #2: I created the smartapp in the IDE, but I don't know where to execute it

.................................................................................................................................


For the initial setup, under the ST app, click on the Marketspace item in the bottom menu, and then, on the smartapps link and finally, MyApps (last item in the list).

If you still do not see your smartapp, please make sure that you have published it in the IDE!


For any subsequent execution, under the ST mobile app, click on automations>smartapps in the bottom menu. The list of installed smartapps will then appear.


.................................................................................................................................

Issue #3: java.lang.NullPointerException: Cannot get property 'X' on null object

.................................................................................................................................


Just update your smartapp by going through all the smartapp setup pages by pressing 'Next' till 'Done'.

The smartapp was recently modified to include some defensive code to ensure that the smartapp is rescheduled. This is intended to alleviate some of the ST scheduling issue as discussed in these threads:


http://community.smartthings.com/t/scheduler-and-polling-quits-after-some-minutes-hours-or-days/16997

http://community.smartthings.com/t/schedule-not-working/3895

http://community.smartthings.com/t/is-it-me-or-schedules-not-firing-this-evening/10176


.................................................................................................................................

Issue #4: I want to upgrade the code but I don't know how

.................................................................................................................................

Most of the time (unless specified otherwise), you just need to copy and paste the smartapp's code from github (using the <raw> function preferrably to avoid forking the code for no reason) into the IDE at:


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

Click on the smartapp that you want to update

Paste the code into the code window (and make sure to copy all the lines)

And save & publish.

.................................................................................................................................


You can also find the smartapps under the SmartThingsPublic github repo. If you have the github integration, you just need to select the ecobee apps that you need when you "Update from Repo" (yracine is at the end of the "New - only from github" list).

GitHub Settings:

Owner: yracine

Name: SmartThingsPublic

Branch: master


Issue #5: I want detailed Logging/Notifications or Ask Alexa's notifications

......................................................................................................................................

In order to have detailed Logging/Notifications, you'd need to do the following:

  • a) Notifications & Other Settings Setup> On the last setup page, set the following flag to true
   input "detailedNotif", "bool", title: "Detailed Logging & Notifications?", required:false


  • b) To receive push notifications, answer 'Yes' to the following input parameter
   input "sendPushMessage", "enum", title: "Send a push notification?", metadata: [values: ["Yes", "No"]], 


  • c) To receive the notifications configured above through Ask Alexa, set the following flag to true


   input (name:"askAlexaFlag", title: "Ask Alexa verbal Notifications?", type:"bool"



.................................................................................................................................