Amazon Echo - Current summary of what/how it integrates with ST? (May 2016)

I am new to ST, had it about 2 weeks. I used the search function and have found a tremendous amount of info on Echo. I am lost as there is so much info, and I don’t know what is current, been updated, new SmartApps, features etc. I read items from last year, but can’t tell what is current, what is old, what does and doesn’t work now etc.
Can someone point me in the right direction or is there a summary on ST and Echo?

Thank you from a newbie!

There’s a short answer and a long answer.

The short answer is that as of November 2015 there are two official ways to integrate SmartThings and Echo.

Method 1: Using IFTTT

The first is just by using IFTTT. Both Alexa and SmartThings have an IFTTT channel, so it’s super easy to control any switch in the smartthings channel just by using a “trigger” command in the Alexa channel. These are the commands that start with “Alexa, trigger…” And then any phrase you want to use.

This method allows you to control anything that you can do through the smartthings IFTTT channel, including locks and relays which are not recognized by Echo itself.

Also, if you use a virtual switch you can assign a Routine or smart app to that switch going on, and so that way you can control other stuff that SmartThings can do. Echo thinks it’s just turning on a switch, but that switch turning on then causes SmartThings to do whatever you set up.

Method 2: The official SmartThings/echo integration

There is a separate official integration which doesn’t require using IFTTT. Those commands use a different format “Alexa, turn on…” You don’t need to use the trigger word. And you can use the same virtual switch trick to set up echo to control mode changes or routines or whatever.

(Know that if you use this method you will have to individually “authorize” each SmartThings-controlled device to allow echo to control it. Then if you ever make any changes to that authorization list, you have to have echo rediscover the devices to get the updated version of the list.

(I just mention that now because it seems to be the most frequent question we get: someone sets up echo and smartthings just fine the first time with the official integration, and then a couple of days later they want to add an additional device, and they can’t figure out why echo doesn’t know about it. It’s just because they forgot the authorization step.)

No individual device authorization is required for the IFTTT method.

Also notice that echo does not recognize every kind of device. At the current time it can’t do locks with this method unless you use a virtual switch as a go-between. In contrast, method one can do anything you can do through the smartthings IFTTT channel, including locks.

On the other hand, because method two individually identifies each device of a recognized device class to echo, you can use it to combine smartthings-controlled devices with devices managed by other controllers and put them all in one echo group. So both methods have their uses.

Here’s the FAQ on both:

And, yes, that was the short answer. You’ll understand when you see the FAQ. :wink:

1 Like

And, I might add an updated version of “Ask Alexa” that leverages what @N8XD did. @MichaelS has hinted - well, more than hinted - at it and it should be available soon. Looks like it will bring the best of both worlds (i.e., the flexibility of @N8XD’s work, and the ease of use of @MichaelS’s). You might consider waiting for that.

1 Like

More than hinted:

1 Like

How do you assign a routine to a virtual switch. I loaded the switch into Alexa. And can trigger it but haven’t figured how to link the switch to a routine.

  • Create a virtual Momentary Button Tile
  • Using SmartLighting or Rule Machine or SmartRules, create a ‘rule’ with a trigger that acts when the virtual switch (from above) is turned on
  • The action the rule will take when the virtual momentary switch is triggered is to run the desired routine

Since the Momentary Button Tile is considered a switch, you can have your Echo activate it - which then runs the routine.

Here you go: