Thanks to the great work done by yvesracine with his “ecobeeChangeMode” SmartApp, I was able to modify it so that the Ecobee thermostat can be set to heat/cool/off via the Amazon Echo.
Before creating and deploying the SmartApp, a few things have to be done:
- The first step to this is to create 3 virtual switches, one for each mode. In my case, my 3 switches are “A C”, “Heat” and “Air”. (keep in mind that these are the switch names you will be telling the Echo to turn on, so name what comes naturally… for me it’s natural to say “Alexa, turn the A C on”)
- Next is to create 3 new SmartThings modes. In my case it is “Cool”, “Heat”, and “Air off”.
- Deploy the “Switch Changes Mode” app from the convenience section (it’s #32 currently). This has to be done for EACH mode. If using the same naming convention I used above, switches should look like this:
Switch: A C
Mode when on: Cool
Mode when off:
Mode when on: Heat
Mode when off:
Mode when on:
Mode when off: Air off
You are now ready to install and deploy the SmartApp. During setup, you will need to select your themostat, and then the virtual switch and STmode for each of the echobee’s three modes (Heat/Cool/Off).
SmartApp code found here: https://github.com/tomagoes/STprojects/blob/master/ecobeeEcho.groovy
Now just go back into the AmazonEcho ST app, select the new switches and have Alexa discover new devices.
If setup using the same naming convention, you will now be able to tell Alexa:
“Alexa, turn the AC on”
“Alexa, turn the Heat on”
“Alexa, turn the air off”
The new ST modes are only temporary to get the ecobee to swtich modes, and will return to the previous mode. So for example, I am in home mode and i tell alexa to turn the AC on, the ST mode will be changed to Cool, the ecobee mode will change from off or heat to cool and then the ST mode is changed back to home.
Please let me know of any questions/bugs/etc…