ISY Portal Amazon Echo Integration V3

From Universal Devices, Inc. Wiki

Please follow the instructions here to setup Echo to work with your ISY:

Setup instructions

  1. Make sure you have followed all the steps in ISY Portal Installation and Configuration first.
  2. Configure your Echo devices using Configure Alexa devices in ISY Portal below
  3. Enable the ISY Smart Home Skill using Enable the V3 skill in the echo app

Configure Alexa devices in ISY Portal

  1. Log into ISY Portal
  2. Click on My Profile at the top right corner:
    1. Choose your ISY from Preferred ISY drop down
    2. Under Amazon Echo and Google Home ISY, choose "Use Preferred ISY"
  3. Under Select Tool, choose Connectivity | Amazon Echo
  4. Click on Add Device, Scene, Program, Variable or A/V to add a new Alexa device
  5. Choose your ISY device/scene/program/state variable
  6. Enter a Spoken (This is the name Alexa will use to recognize this device), then save. NOTE : Rooms are optional and useful only for categorization in ISY Portal

Using Color bulbs

  • When choosing your ISY device, please use the Z-Wave device ending with _186
  • The skill has been tested with Aeotec and Fibaro color bulbs

Using A/V Devices

  • Those are virtual devices for which you can map as many functions as you need to network resources, state variables or programs
  • Create as many virtual A/V devices as you have physical A/V devices. Example; one for the TV, one for the Home theater, etc.
  • All fields are optional
  • Under Basic, use either Set Channel To, or Channel Up/Channel Down, not both.
  • Under Volume, you can use Set Volume To, Volume Up/Volume Down, or both. If you use both, use the same State Variable.
  • When entering a State Variable value, you can specify an absolute value, or a delta by entering + or - before the number. This can be especially useful for the Volume Up/Volume Down
  • When you hover on a field label, you get an example of how to use it

Using Fans

In the Alexa Category, choose the "Fan" option

Using Open / Close syntax

In the Alexa Category, choose Device with Open/Close syntax In addition regular turn on/turn off syntax, this will allow you to say "Alexa, open <spoken>"

Using Set / Lower / Raise syntax

In the Alexa Category, choose Device with Set/Lower/Raise syntax Please note that this Alexa category is available for devices and state variables only. In the case of variables, when setting up your spoken, it is recommended to use a turn off value of 0, and turn on value of 100.

Updating Amazon Echo devices

If the Smart Home Skill is already enabled on your Echo, you can send your devices to your Echo by saying : “Alexa, discover my devices”.

If the Smart Home Skill has not been enabled on your Echo yet, please continue with the instructions below.

Enable the V3 Skill in the Echo App

  1. Make sure you have followed all the steps in ISY Portal Installed and Configured first.
  2. Login to the Echo App
  3. Click on Skills menu item on the left navigation bar
  4. Search for ISY
  5. Click on ISY Optimized for Smart Home V3 and then Enable
  6. On the ISY Portal Authorization page, enter your ISY Portal user name and password
  7. Then click Discover Devices
  8. The devices you have configured in ISY Portal will be imported in the Alexa App. Click on Smart Home then Devices to see them

NOTE : Please note that the ISY Optimized for Smart Home V3 skill is presently restricted to US and Canada.

Supported Commands

Devices

  • Turn On: “Alexa, turn on the kitchen light”
  • Turn Off: “Alexa, turn off the kitchen light”
  • Brighten: “Alexa, brighten the kitchen light”
  • Dim: “Alexa, dim the kitchen light”
  • Set: “Alexa, set the kitchen light to 50%”

Thermostats

  • Set [device] temperature to [##] degrees: "Alexa, set bedroom to 75 degrees"
  • Increase the [device] temperature: "Alexa, increase the bedroom temperature"
  • Decrease the [device] temperature: "Alexa, decrease the family room temperature"
  • Turn off [device]: "Alexa, turn off kitchen"
  • Status
    • "Alexa, what is the temperature of kitchen thermostat?"
    • "Alexa, what is the kitchen thermostat set to?"

Door locks

  • Is Locked: "Alexa, is front door locked?"
  • Is Unlocked: "Alexa, is front door unlocked?"
  • Lock: "Alexa, lock the front door"
  • Please note that, for security reasons, Unlock is not supported
  • Status
    • Alexa, is <device-name> closed?
    • Alexa, is <device-name> opened?

Scenes

  • Turn On: “Alexa, turn on the kitchen light”
  • Turn Off: “Alexa, turn off the kitchen light”
  • Brighten: “Alexa, brighten the kitchen light” -- will issue brighten command 3 times
  • Dim: “Alexa, dim the kitchen light” -- will issue dim command 3 times

Programs

  • Turn On: “Alexa, turn on the kitchen light” - runs Then
  • Turn Off: “Alexa, turn off the kitchen light” - runs Else

State Variables

  • Turn On: “Alexa, turn on X” - Sets the variable X to the <turn on> value (defined in the portal)
  • Turn On: “Alexa, turn on X to Y percent” - Sets the variable X to Y
  • Turn Off: “Alexa, turn off X” - Sets the variable X to the <turn off> value (defined in the portal)
  • Brighten: “Alexa, brighten X” - Increments variable X by 1
  • Brighten: “Alexa, brighten X by Y percent” - Increments variable X by Y
  • Dim: “Alexa, dim X” - Decrements variable X by 1
  • Dim: “Alexa, dim X by Y percent” - Decrements variable X by Y
  • Contrary to regular devices, you can use the same state variables multiple times. This allows you to have 2 different spokens for the same var, but with different turn on values
  • The word "percent" is optional but recommended. Depending on your spoken and how well you pronounce, the word "percent" may be skipped. But it does facilitate proper recognition if you use it
  • You can use "increase" and "decrease" instead of brighten and dim. But depending on your spoken and how well you pronounce, increase is often misunderstood as a volume adjustment
  • You can assign turn on / turn off values with very high values. However, when you set it to a percentage, or use brighten/dim, the value can only be 0-100. For Alexa, it's a percentage after all

Color Devices

  • Set Color: "Alexa, set <device> to <color>" e.g:
    • Alexa, set living room to green
    • Alexa, set kitchen to warm white
  • Set Color Temperature : "Alexa, make <device> cooler"

A/V Devices

  • Turn on|off : "Alexa turn <on|off> <device>"
  • Set channel : "Alexa, set channel to <number> on <device>"
  • Change channel : "Alexa, channel <up|down> on <device>"
  • Set volume : "Alexa, set volume to <number> on <device>"
  • Change volume : "Alexa, volume <up|down> on <device>"
  • Mute : "Alexa, <mute|unmute> on <device>"
  • Playback : "Alexa, <play|pause|stop|fast forward|rewind|next|previous|start over> on <device>"
  • Change input : "Alexas, change input to <input name> on <device>"

Open/Close Devices

  • Open : "Alexa, open <device>"
  • Close : "Alexa, close <device>"

Set/Lower/Raise Devices

  • Range : "Alexa, set <device> to <close | low | medium | high | maximum | open>"
  • Number: "Alexa, set <device> to <any number from 1 to 100>"
  • Raise: "Alexa, raise <device>"
  • Raise: "Alexa, raise <device> by <number>"
  • Lower: "Alexa, lower <device>"
  • Lower: "Alexa, lower <device> by <number>"

Fans

  • State: "Alexa, Set <device> to {Off | Low | Medium | High | Max}"
  • On/Off: "Alexa, Turn {on | off} <device>"
  • Raise: "Alexa, Raise <device>"
  • Lower: "Alexa, Lower <device>"

Using Alexa Routines

Alexa allows you to create Alexa Routines to automate voice-related tasks. This capability is found in the Alexa mobile app, under Routines.

In ISY Portal, under the Connectivity | Amazon Echo dialog, You can choose any ISY linked device/node, and expose it to Alexa as a motion sensor or a contact sensor. That can be a real motion or contact sensor, but that could also be an IOLinc, a plain regular light. To configure a device as a sensor, just set the Alexa category to Motion sensor or Contact sensor.

In addition to ISY nodes and, you can also expose a state variable as a motion sensor. When configuring this, you need to specify a "Motion detected value". Whenever the state variable will be set to that value, the motion sensor status will be set to "Detected". Any other value will set the motion sensor to "Not detected".

But why would someone want to expose a state variable as a motion sensor? The whole purpose is to trigger Alexa routines programmatically.

One of the simple but nice features of an Alexa routine is to say something you decide, whenever the routine is triggered. Therefore, using Variables exposed as motion sensors allows you to create programs that tells Alexa to say something. Now your ISY can talk!

What Alexa says is configured within the routine, and therefore static. But you can create as many routines as you want, and you can do so using a single variable. When you create the spoken in ISY Portal, you can reuse the same variable multiple times, expose it as a sensor, but use a different Motion detected value.

This allows you to have Alexa say something when value=1, something else if it value = 2, etc...

Troubleshooting tips

  • Whenever you make changes to your spokens, please remember to have Alexa discover the devices. You can just ask "Alexa, discover my devices".
  • If you delete or rename spokens, remember to go to the Alexa app and delete those obsolete devices. Otherwise, they will just stay there as "offline", but it will still be recognized by Alexa and give you an error message.
  • If you change the type of a device, let's say from motion sensor to contact sensor, and you have used it in a routine, you will have to remove it from the routine, and re-add it.

FAQ and Troubleshooting tips can be found here here.

More information on Alexa Routines are found here.

Using Multiple Echos Smart Home

To support multiple Echos with different Smart Home devices, you need multiple ISY Portal accounts or sub-accounts with each their own user profile.

  1. Have your Echos tied to different amazon accounts
  2. In ISY Portal, configure a sub-account and user profile per echo:
    1. Login to your main ISY Portal account
    2. Create a sub-account
    3. Add your ISY to this sub-account, and approve access to it in the admin console
    4. Create a new user profile In that sub-account
    5. Logout of your main account
    6. Login using the newly created user-profile
    7. Click on My Profile, and set My Preferred ISY to your ISY.
    8. Enter your spokens

You can update your spokens by using your main account. But before doing so, please make sure to switch to the correct sub-account first.

If your account selector is set to [All], you will see all of your ISYs, no matter which account/sub-account they belong to. When an ISY is in several account/sub-accounts, you will see it only once. When you edit your spokens, without explicitly choosing the account, you can't be sure of which account you are working on. You should switch to the intended account first.

NOTE: It is perfectly ok to use the main account for one of your Echos.