Amazon Echo integration with the ISY994i is here!

I didn’t have many nice things to say about the terrible Insteon hub, but let’s go the other way and gush about how great the ISY994i integration is with the Amazon Echo.

Before we jump into it, let’s talk about the difference between Alexa Skills and Connected Home devices. Basically, skills have names and are services provided by third parties, so you could say something like “Alexa, ask for a fart” or “Alexa, ask horoscope what is the horoscope for Gemini?”. The skills like “for a fart” or “horoscope” vary in usefulness, of course, and the skills store in the Alexa App is a bit of a mess if you don’t know what you’re looking for (most notably, there are no categories to browse – just one long list with a search function). Nonetheless, it’s easy enough to find the one for the ISY with a search:
alexa-isy-skills

Connected Home devices are a bit more of a special tier where you don’t have to actually use an “invocation name”; you just say something like “Alexa, turn on the kitchen light.” Vendors like Phillips Hue and Samsung Smart Things are included in the list of devices that fall in this category. Sadly, Amazon’s link for Insteon devices only lists the Insteon Hub and not the ISY – but the ISY is also supported and exposes “connected home devices”.
alexa-isy-connected-home

The ISY provides both a skill and exposure of Connected Home devices, which covers all the bases. For example, Amazon’s Connected Devices integration has some limitations – for example, you can ask it to turn lights on or off, but can’t ask it to natively control the thermostat). But the skill provided for the ISY (the “invocation name” is pronounced “izzy”) has a larger vocabulary (called “utterances“) allowing a bit more flexibility. The instructions to set all this up are here, but in general you’ll need a few things:

  1. Updated firmware – at least 4.3.26 (use: “Help | Automatically Upgrade ISY” in the ISY interface)
  2. A subscription to the ISY Portal. This is required to bridge the communication between Amazon services and your ISY. Use “Help:Purchase Modules” in your ISY interface to sign up; at $50 for 2 years it’s a bargain!
  3. Link your my.isy profile to your Amazon account, and link the Echo app back to allow communication between your Amazon Echo and ISY994i.
    isy-echo-3
  4. Identify specific devices, scenes and programs with spoken words. You can do this through the ISY interface for devices by right-clicking a device, selecting “Notes”, and adding text to the field for “Spoken” – but (update 2/11/2016: it’s no longer possible to define spoken scenes through the ISY interface; it must now be done through the ISY portal) I’ve found it much easier to do this mapping through the ISY portal. The portal supports scenes and programs as well, whereas the UI only allows devices to be mapped:
    isy-echo-link-spoken
  5. Once you’ve finished assigning spoken words to devices/scenes/programs (in fact, every time you change this list), you’ll use the Alexa app to “discover devices”
    isy-echo-connected-home-devices
  6. When that’s all done, you’re good to go, and can start interacting using either a skill (“Alexa, ask izzy…”) or device (“Alexa, turn on…”):

Note in the above video:

  1. We start with using an Amazon Skill (“Alexa, Ask izzy to turn on the kitchen lights”)
  2. We then show that the skill is still being fine-tuned – controlling the thermostat through the skill is still a little rough.
  3. Next, we use the Amazon Connected Home feature to turn off the lights without needing the invocation word “izzy” (“Alexa, turn off the kitchen lights”). Notice how the response is different for the Connected Home control (Alexa just responds with “OK” rather than a full voice response) – not a big deal, but presumably that’s because the API is more restrictive for these devices so that the user experience is the same across all devices (i.e., Hue, ISY, etc.).
  4. Last, while controlling thermostats isn’t directly possible yet via Connected Home, we can actually run programs through it, so I’m able to set the thermostat using somewhat natural language (“Alexa, turn on cool downstairs”). The code to run these programs is pretty simple:
    Cooler Downstairs

    If
    - No Conditions
    Then
    Set 'Thermostat/Downstairs' Setpoint Down 1°
    Else
    - No Actions
    

    Warmer Downstairs

    If
    - No Conditions
    Then
    Set 'Thermostat/Downstairs' Setpoint Up 1°
    Else
    - No Actions
    

    The astute reader will notice that, through the program mapping to the text “cool downstairs” and “warm downstairs” I can say things like “Alexa, turn on cool downstairs” and “Alexa, turn on warm downstairs” to tick the thermostat up and down. These phrases will just run the “Then” clause of the program – but if you say “Alexa, turn OFF…”, the “Else” clause is executed. Which means we could consolidate the above two programs into one like this:
    Downstairs Thermostat

    If
    - No Conditions
    Then
    Set 'Thermostat/Downstairs' Setpoint Up 1°
    Else
    Set 'Thermostat/Downstairs' Setpoint Down 1°
    

    The result of this program will be the thermostat goes up if you say “Alexa, turn on downstairs thermostat”, and goes down if you say “Alexa, turn off downstairs thermostat”. Yes, the grammar is a bit funny for now, but this will no doubt get better over time!

Posted by Matt Chiste
February 7
9 comments on “Amazon Echo integration with the ISY994i is here!
  1. Aseem says:

    I wish I had seen this sooner. Can’t wait to get home and try this out!

  2. Kevin Dunn says:

    That’s pretty much what I was hoping to hear after UD announced the Alexa portal integration. I just didn’t want to fork out the money if I wasn’t sure.

    How is it with dimming controls? Is it something like “Alexa, turn the living room lights to 50%”?

    • Matt Chiste says:

      I didn’t have much luck with either the skill (“Alexa, ask Izzy…”) or connected home devices setting dim levels to specific numbers, although I was working with scenes. I was able to use either to dim or brighten a scene (“Alexa, ask Izzy to dim the kitchen” or “Alexa, dim the kitchen”), but got an error with connected devices (“That command is not available”) and the skill (“That device is not dimmable”) when trying to set to an absolute value.

      Still, you could create different scenes (“Bright Kitchen”, “Dim Kitchen”) and map each of them to get to the dim level you want with a single command.

  3. DaveStLou says:

    When I found out the Echo now worked with my Isy, it gave me the reason I was looking for to buy one. I found it easy to set up and have thoroughly enjoyed setting it up and using. The Echo has been a great way for my wife it interact with the Isy controlled devices naturally for the first time. A success all the way around!

  4. Sandy says:

    Hi Matt, Love your blog. Can’t wait to hear your opinion of the new MobiLinc skill in Echo.

    • Matt Chiste says:

      Will definitely keep an eye out for it. So far MobiLinc has focused a lot on HomeKit (Apple/Siri integration) and I haven’t seen anything related to the Echo yet.

      • Sandy says:

        I was surprised myself when I found the MobiLinc skill last night. Took ten minutes to setup and works great

  5. Brad says:

    Is it possible to query Alexa about the state of a device?
    Like:
    Alexa, ask Izzy the state of garage light
    Alexa, ask Izzy if garage door is open

    I have an Echo only since 1 week and just bought ISY994i ZW which arrives in a couple days and eager to start playing with it.

 Subscribe to HomeAutomationGuru.com
    Add to Google Reader or Homepage

Enter your email address to subscribe: