MonitorEcobeeTemp
This smartapp is![]()
<al imagesize="Large">B00ZIRV39M</al>
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
Contents
- 1 Summary
- 2 Prerequisites
- 3 Supported Features
- 4 UI Look & Feel
- 5 Troubleshooting
- 5.1 Issue #1: I don't know how to create a custom smartapp
- 5.2 Issue #2: I created the smartapp in the IDE, but I don't know where to execute it
- 5.3 Issue #3: java.lang.NullPointerException: Cannot get property 'X' on null object
- 5.4 Issue #4: I want to upgrade the code but I don't know how
- 5.5 Issue #5: I want detailed Logging/Notifications or Ask Alexa's notifications
Summary
MonitorAndSetEcobeeTemp,the smartapp that adjusts your programmed ecobee's setpoints based on indoor/outdoor sensors.
Prerequisites
- 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) - (ambient 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
Indoor Temp Sensors Setup
Indoor Motion Sensors Setup
Outdoor Threshold Options
Notification & Other Options
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/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
"Detailed Logging & Notifications?"
- b) To receive push notifications, answer 'Yes' to the following input parameter
"Send a push notification?", metadata: [values: ["Yes", "No"]]
- c) To receive the notifications configured above through Ask Alexa, set the following flag to true
"Ask Alexa verbal Notifications?"
.................................................................................................................................