Table of Contents Disclaimer _______________________________________________________________ 1 Introduction ______________________________________________________________ 1 ISY Overview _____________________________________________________________ 2 The ISY Front Panel ___________________________________________________________ 3 The ISY Rear Panel ____________________________________________________________ 4 Installation _______________________________________________________________ 5 Hardware Installation _________________________________________________________ 5 Connecting to the ISY from a Local PC ____________________________________________ 5 The HTML Interface ___________________________________________________________ 9 Brower Based Interface (Supported on all Mobile Devices) __________________________ 11 4.4.1...
Page 3
5.2.1.9 Automatic Writes to Devices (ISY99i Pro) ______________________________________________ 24 5.2.1.10 Automatic Writes to Battery Powered Devices (ISY99i Pro) _______________________________ 26 5.2.1.11 Enable Internet Access (ISY) ________________________________________________________ 27 5.2.1.12 Themes ________________________________________________________________________ 27 5.2.1.13 Exit ____________________________________________________________________________ 30 5.2.2 Link Management Menu ___________________________________________________________ 30 5.2.2.1 Start Linking _____________________________________________________________________ 30 5.2.2.2 Link a ControLinc__________________________________________________________________ 31 5.2.2.3 Link a RemoteLinc _________________________________________________________________ 32...
Page 5
Scene Basics ________________________________________________________________ 99 7.1.1 Creating a Scene _________________________________________________________________ 100 7.1.2 Scene Menu ____________________________________________________________________ 102 7.1.2.1 Query __________________________________________________________________________ 102 7.1.2.2 Rename ________________________________________________________________________ 102 7.1.2.3 Remove Scene ___________________________________________________________________ 102 7.1.2.4 Move to Folder... ________________________________________________________________ 102 7.1.2.5 Diagnostics _____________________________________________________________________ 102 7.1.3 Scenes _________________________________________________________________________ 102 Creating a Scene ____________________________________________________________ 105 7.2.1 What is a Scene __________________________________________________________________ 105...
Page 6
8.2.11 Using the Status of Variables in Programs _____________________________________________ 125 8.2.12 Program Status Conditions _________________________________________________________ 126 8.2.13 Program Device Actions ___________________________________________________________ 126 8.2.14 Using ‘If Control’ versus ‘If Status’ in Programs _________________________________________ 127 8.2.15 Program Variable Actions __________________________________________________________ 127 8.2.16 Modifying Variables in Programs ____________________________________________________ 128 8.2.17 Using Variables in Notifications _____________________________________________________ 129...
Page 7
9.3.6 Building Your Programs ___________________________________________________________ 164 9.3.7 Program Schedules _______________________________________________________________ 166 9.3.8 Program Conditions ______________________________________________________________ 168 9.3.9 Program Actions _________________________________________________________________ 170 9.3.10 Program Folders _________________________________________________________________ 173 Advanced Programming _____________________________________________________ 174 9.4.1 Combining Conditions using And ____________________________________________________ 174 9.4.2 Combining Conditions using Or _____________________________________________________ 175 9.4.3 Using Else ______________________________________________________________________ 176 Scope, Precedence and Execution Order ________________________________________ 177...
Page 8
9.8.3.1 Program: Green Status ___________________________________________________________ 204 9.8.3.2 Program: Green Startup On ________________________________________________________ 204 Program: Green Startup Off______________________________________________________________ 205 Troubleshooting Programs ___________________________________________________ 205 ISY Programming Commands Guide _______________________________________ 205 10.1 What are ISY Commands ___________________________________________________ 205 10.2 Expression Operators ______________________________________________________ 206 10.3 Control vs Status _________________________________________________________ 206 10.4...
Page 9
11.1.2 Canadian Calendar Programs _______________________________________________________ 246 11.1.2.1 New Year’s Day _________________________________________________________________ 246 11.1.2.2 Family Day (British Columbia) _____________________________________________________ 246 11.1.2.3 Family Day (Alberta, New Brunswick, Ontario, Saskatchewan) ___________________________ 246 11.1.2.4 Nova Scotia Heritage Day (Nova Scotia) _____________________________________________ 246 11.1.2.5 Louis Riel Day (Manitoba) _________________________________________________________ 246 11.1.2.6 St.
Page 10
11.2.1.2 Program: MBFanCheck ___________________________________________________________ 254 11.2.1.3 Program: MBLightSwOFF _________________________________________________________ 255 11.2.1.4 Program: MBFanSwOFF __________________________________________________________ 255 11.2.2 Bathroom Fan Control Solution example #2 ___________________________________________ 256 11.2.2.1 Program: MBA Fan - On __________________________________________________________ 256 11.2.2.2 Program: MBA Fan - Off __________________________________________________________ 257 11.2.2.3 Program: MBA Fan - Control ______________________________________________________ 257 11.3 Garage Door Programs _____________________________________________________ 258...
Page 11
11.6.1.2 Setup – First Leak Sensor _________________________________________________________ 292 11.6.1.3 Setup - Core Components ________________________________________________________ 293 11.6.1.4 Brief Explanation ________________________________________________________________ 296 11.6.1.5 Procedure for Adding a New Leak Sensor ____________________________________________ 297 11.7 Light Control Programs ____________________________________________________ 297 11.7.1 Light Data Program _______________________________________________________________ 297 11.7.1.1 Folder: Everyday ________________________________________________________________ 297 11.7.1.2 Program: Stormy Day ____________________________________________________________ 298 11.7.1.3 Program: Clear Day ______________________________________________________________ 298...
Page 16
16.6.1 Hold Detect _____________________________________________________________________ 432 16.6.2 Hold Maintain ___________________________________________________________________ 432 16.6.3 Change These Values _____________________________________________________________ 432 16.7 Creating an IR Program ____________________________________________________ 433 16.7.1 Create an IR Program _____________________________________________________________ 433 Irrigation Notes _______________________________________________________ 434 17.1 Evaporation and Irrigation __________________________________________________ 434 17.1.1 What is Evapotranspiration ________________________________________________________ 434 17.1.2...
Page 18
20.2 External Interfaces ________________________________________________________ 525 20.2.1 Elk IP-232 _______________________________________________________________________ 525 20.2.2 Elk Relay Control _________________________________________________________________ 525 20.2.3 Global Cache GC-100 _____________________________________________________________ 525 20.2.4 Global Cache iTach _______________________________________________________________ 526 20.2.5 Stargate / Commstar _____________________________________________________________ 526 20.2.6 Pentair Easy Touch pool control system ______________________________________________ 526 20.2.7 GE Concord 4 Alarm Panel using Autelis I/F ___________________________________________ 526 20.3...
Page 19
20.9.8 Function Exporter ________________________________________________________________ 537 IP Network ___________________________________________________________ 537 21.1 Telnet to Your ISY _________________________________________________________ 537 21.1.1 Enable Telnet (Vista and Windows 7) ________________________________________________ 537 21.1.2 Telnet To Your ISY (Windows) ______________________________________________________ 538 21.1.3 Telnet To Your ISY (MAC) __________________________________________________________ 539 21.2 Assigning a Static IP Address to the ISY ________________________________________ 540 21.3...
Page 20
21.8.1 Configure Mail Server Settings ______________________________________________________ 569 21.8.2 Configure Your own Mail Server Settings _____________________________________________ 569 21.8.3 Adding Recipients and Groups ______________________________________________________ 570 21.8.4 Testing the Settings ______________________________________________________________ 570 21.8.5 Configuring for Use with gmail ______________________________________________________ 570 21.8.6 SMTP Errors _____________________________________________________________________ 571 21.8.7 Email/Customized Content Substitution Variables ______________________________________ 571 NodeServer Notes ______________________________________________________ 572...
Page 21
Manually Upgrading Your Firmware __________________________________________ 630 23.13 Resetting Your Userid / Password ____________________________________________ 630 23.13.1 Information common to all models ________________________________________________ 630 23.13.2 ISY-994i Series _________________________________________________________________ 630 23.13.3 ISY-99i Series __________________________________________________________________ 631 23.13.4 ISY-26 ________________________________________________________________________ 631 23.13.5 Retrieving ISY's MAC Address _____________________________________________________ 632 23.14...
Page 22
24.1 Operational _____________________________________________________________ 638 24.1.1 Is there a way to find all my INSTEON devices? _________________________________________ 638 24.1.2 On an existing INSTEON setup do I need to start over when I first get my ISY? _______________ 638 24.1.3 So, I just got an ISY and know I will have to start over the programming for my existing INSTEON setup.
Page 23
24.5 Compatibility ____________________________________________________________ 647 24.5.1 Is the ISY compatible with SimpleHomeNet products? ___________________________________ 647 24.5.2 Is this unit compatible for Europe? Even if it is not CE certified, will it work? _________________ 647 24.5.3 Are X-10 single phase 110V/120V or two phase 220V/230V devices compatible? _____________ 647 24.6 Specifications ____________________________________________________________ 647 24.6.1...
INSTEON, X10, or other similar device, such as serial I/O devices. Universal Devices produces an extensive line of ISY Series home automation controllers, which have these capabilities.
These sources provide a lot of great information. However, I have found that sometimes it is very difficult to find the information needed. Dependent on the search terms you enter, and where you look, you may, or may not find the information required. That is why I have created this manual.
With the ISY, you can: • Program, configure and manage your INSTEON, Z-Wave and X10 devices • Automate your home using sophisticated timers, triggers, and macros • Conserve energy in your home • Remotely control your home using the ISY’s web interface •...
• A Reset button is located on the front of your ISY. To simply reboot your ISY, use a sharp object to briefly press the ISY’s recessed Reset Button. To factory reset your ISY, please see 23.10 Factory Reset • Certain ISYs include an integrated IR receiver located on the front of the unit. This IR receiver can be used to control your home using an RC-5-capable universal remote control.
4 Installation Installation of the ISY is completed in several easy steps. The following instructions assume that you are installing the ISY on a DHCP-enabled network (true in the vast majority of cases) and are using a Windows-based PC to connect to the ISY. 4.1 Hardware Installation Installation of the ISY hardware is completed in three easy steps: 1.
Page 29
Option1: In most cases, the quickest and easiest way to connect to the ISY for the first time on a Windows PC is to open a web browser and type in the following URL: If you http://isy. have a MAC, please use Option 2 or 3 (below). Option 2: If the above options are not working for you, or if you are on a non-Windows platform, please visit the following URL: http://isy.universal...com/994i/4.2.30...
Page 30
To find your ISY’s login URL, click the HELP -> ABOUT pull-down menu: Figure 3: Help/About Menu Then look for the address listed after “My URL.” Figure 4: My URL Type this into your web browser to quickly connect to your ISY in the future. Feel free to add this URL to your web browser’s Favorites.
Page 31
icon or visit the following URL to automatically find the ISY (and its new address) on your network: http://isy.universal...com/994i/4.2.30 If you wish to assign your ISY a static IP address, please see 21.2 Assigning a Static IP Address to the ISY Once you find your URL, you are ready to start using the ISY.
4.3 The HTML Interface The ISY’s HTML interface provides an easy way to interact with your ISY. The HTML interface does not require Java and is accessible from just about any web browser – including mobile phones and other devices! Figure 5: ISY’s Home Tab You won’t be able to do much until you start configuring your ISY, but here is a summary of what you can do with the HTML Interface:...
Page 33
My Scenes – Same as My Devices & Scenes, but this shows only your scenes. You will learn more about Scenes in the section 7 Scenes. My Weather (only available if the optional Climate Module has been installed on your ISY) –...
My URL into a browser 4.4.1.2What is UDAjax? • UDAjax is the name of the default web interface for ISY. • UDAjax is based on the IsyAjax custom web interface but with an updated layout and look. (Universal Devices) Page | 11...
4.4.1.3Can I hide a device or scene? • Yes, by adding a ~ in front of the name of the device or scene in the admin console. 4.4.1.4Can I hide the logo and the top menu bar? • Yes, by adding main panel=false to end of hash in the browser address (add an & in front if there is other data, just a # if there isn't) 4.4.1.5What settings can I change? Figure 8: UDAjax Settings Screen...
4.4.1.7Controllers, Hide/Show: • Hide/Show control only devices such as RemoteLincs and ControLincs, based on their Insteon categories. 4.4.1.8Disabled, Hide/Show: • Hide/Show disabled devices. 4.4.1.9Labels, Hide/Show: • Hide/Show labels on controls on devices and/or scenes pages. 4.4.1.10Max Width: • Changes how wide the interface is allowed to display. 4.4.1.11Local Caching: •...
4.4.1.14Password/Usernames: • If the cameras don't support including the username and password in the later part of the url (axis cameras for example), the web page will include it right after the http:// as http://user:password unfortunately this isn't supported on all browsers but it is the best that can be done.
In the future you may go directly to the ISY’s Administrative Console by appending /admin to the URL. For example: http://192.168.0.101/admin 5 The ISY Administrative Console The Administrative Console is divided into several tabs, each used to configure different aspects of your ISY. This section provides information to help you take advantage of the powerful features of the ISY Administrative Console.
Figure 9: File Menu/ Set User ID/Password When choosing your new User ID and Password, please consider the following: • Both the User ID and Password must be entered • Both the User ID and Password are case sensitive • Both the User ID and Password must be between 3 and 10 characters •...
After adjusting your settings, please be sure to hit the Save button. 5.1.3 Keyboard Navigation Please note that pull-down menus are accessible via keyboard shortcuts as follows: • Alt-F to access the 5.2.1 File Menu • Alt-L to access the 5.2.2 Link Management Menu •...
5.2.1.2Set Userid/Password Once this menu option is selected the user can change the user name and password. The new user name and password should be typed in the appropriate fields. Please make sure (Universal Devices) Page | 20...
you remember the new user name and password as the default account of user name/password admin/admin will no longer work in future logins. Firmware versions 5.0+ allow up to ten users, one of which is the administrator. • Both User ID and password must be entered. •...
• INSTEON devices links • Scenes information 5.2.1.5Restore ISY Selecting this menu option allows the user to locate and select the ISY’s backup configuration file. Upon completion, this operation reboots ISY and closes your browser. This option only restores the settings and has no impact on the underlying INSTEON devices and their configurations.
• If you have PRO series, click on the battery icon on the toolbar so that ISY goes back to normal mode 5.2.1.7Restore Modem (PLM) This operation is most useful when you need to replace a defective PLM and the ISY is rebooted with a new PLM.
The modem (PLM) is the communication bridge between the ISY and the INSTEON devices. Without the modem and the links, you cannot control or get status from the INSTEON devices. When the communication links were established via the Link Management Menu, the PLM and INSTEON devices adds each device addresses it is linked to, in its own link table.
Page 48
Devices that have pending changes waiting to be written are marked with a green icon in the device tree as pictured here: Figure 13: Devices with Pending Changes To write all pending changes for a single device (without turning Automatic Writes back on), simply right-click the device and choose Write Updates to Device: Figure 14: Write Updates to Device Screen Page | 25...
5.2.1.10Automatic Writes to Battery Powered Devices (ISY99i Pro) By default, the ISY is set to automatically write updates to devices as you make changes in the Admin Console. In some cases, you might prefer to queue your changes and write all changes to devices at a more convenient time.
To write all pending changes for a single device (without turning Automatic Writes back on), simply right-click the device and choose Write Updates to Device: Figure 16: Write Updates to Device Screen 5.2.1.11Enable Internet Access (ISY) In order to achieve remote/internet access, you will need to setup your router for port forwarding.
Page 51
choose your scheme. Please note that the Administrative Console must be closed and re- opened for your Theme change to take effect. Figure 17: File -> Themes -> Theme Color Menu Page | 28...
Page 52
Desert Grey High Contrast Default Figure 18: Theme Samples You can choose font sizes from 12 thru 20 points. Figure 19: File -> Themes -> Font Size Menu You can also restore the theme to the original configuration. Page | 29...
Please be patient. Once you are finished adding devices, hit the Finish button which completes the process. Before adding devices to the ISY, it’s important to understand the 3 different options presented: (Universal Devices) Page | 30...
Figure 21: Linking Options • Remove existing links. This option adds the device to the ISY, and also removes any existing links in the device. This is the default and the best option to choose if you would like a clean start, or if it is a brand-new device. •...
Figure 22: Link a ControLinc 5.2.2.3Link a RemoteLinc Choose this menu item to link a RemoteLinc. The Insteon address is on a sticker inside the battery compartment. • When the “Link a RemoteLinc” dialog appears, press and hold the “Bright" and "Dim” buttons for 10 seconds or until the RemoteLinc’s light starts flashing.
Figure 24: Link a RemoteLinc When done linking communication mode can be quit by pressing the All Off button. • Buttons can be added to scenes the same as any other controller. 5.2.2.3.1RemoteLinc FAQs If one of the numeric buttons is pressed to exit linking mode that button will no longer send the On and/or Off commands.
• Put RemoteLinc2 in Programming Mode: o Ensure the on/off switch is in the On position o Press and hold the Set Button at the base of the RemoteLinc2 until the LED starts flashing green (takes about 3 seconds) • The Insteon address is on a sticker on the back of the RemoteLinc2. After the nodes are added to the ISY press the set button on the RL2 twice to quit linking mode.
5.2.2.5.2Link a Door Sensor Figure 28: Link a Door Sensor 5.2.2.5.3Link a Motion Sensor Figure 29: Link a Motion Sensor 5.2.2.6Add Button to IRLinc Receiver Page | 35...
Page 59
Figure 30: Add Button to IRLinc Receiver Note: The Scene Control buttons (A-H) are On/Bright, Off/Dim buttons and control only one scene. Once either the On or Off button is linked to the ISY the other button is automatically linked. Create Non-Toggle Links - (Always sends only on/off commands) This can be handy if you want to create a button that is “All Off”...
Universal Devices has added, for firmware version 2.6.13, an option to select the original Insteon communication protocol, termed i1, in case the Automatic option fails.
5.2.2.11New INSTEON/A10/X10 Device NOTE: This option is entitled New INSTEON/X10/A10 Device if the optional X10 Module is installed. Please see 6.4 A10/X10 Experimental Support for more information. Choose this menu if you already know the INSTEON address of a device and if you do not wish to use the regular linking method of pressing the “Set”...
Page 63
This operation performs the same action as the New Scene button on the tool bar ( Figure 36: New Scene Dialog You can drag and drop any one of the devices already linked to the system into any scene. If you click and drag correctly you will see a plus sign next to the device you are dragging.
A device assigned as the controller of the scene is the device that initiates the scene. This device will control the responders according to the level and ramp rate settings. It may take roughly 10 seconds to a few minutes to reprogram the device(s) to become part of a scene depending on the complexity and the number of other devices, and especially controllers/masters, for that scene.
5.2.3.4Receive (Learn Mode) See section 15.1.5 Receive (Learn Mode) 5.2.3.5Options This menu item has the following options available: Figure 39: Z-Wave -> Options Menu Figure 40: Z-Wave -> Z-Wave Scene Devices Menu 5.2.3.6Z-Wave Secure Devices See section 15.1.6 Z-Wave Secure Devices 5.2.3.7Tools The tools menu has options allowing you to synchronize node, as well as do backup and restores.
Figure 41: Z-Wave -> Z-Wave Tools Menu 5.2.3.8Advanced The advanced menu has the following options: Figure 42: Z-Wave -> Z-Wave Scene Advanced Menu Page | 43...
5.2.4 NodeServers Menu For information on how to configure NodeServers see 22 NodeServer Notes. This menu allows you to configure up to twenty-five NodeServers. Figure 43: NodeServers Menu Page | 44...
5.2.5.1Trend (Chart) This option will display a trend from one of the following categories: 5.2.5.2Log This option will export the ISY log to an Excel file. 5.2.5.3Clear Log This option will clear the ISY log. 5.2.5.4Error Log This option will export the ISY error log to an Excel file. 5.2.5.5Clear Error Log This option will clear the ISY error log.
5.2.5.7Diagnostics This menu option gives access to the diagnostic items in the ISY. Figure 46: Tools -> Diagnostics Menu 5.2.5.7.1Diagnostics -> Event Viewer This option displays data from the ISY event viewer. 5.2.5.7.2Diagnostics -> System Status This option displays the ISY system status. 5.2.5.7.3Diagnostics ->...
5.2.5.7.6Diagnostics -> Show ISY Links Table This option will generate a table with all of the ISY links from a selected device. 5.2.5.7.7Diagnostics -> Scene Test This option will perform a test for all devices in a scene, turning the device on and off properly.
Figure 49: Help -> About Menu 5.2.6.2UDI Wiki (Help Contents) This option will take you to the Universal Devices Wiki, which is the ISY online help and manual. 5.2.6.3UDI Forum This option will take you to the Universal Devices Forums.
5.2.6.6Request/Manage SSL Certificates This option will take you to the Network Security Configuration Guide which contains information on SSL Certificates. You can access this document here: 21.6.1 Network Security Configuration Guide 5.2.6.7Manually Upgrade ISY Use this option to manually upgrade your ISY. For instance, you may want to install a beta version of the firmware.
5.3.2 Programs Tabs 5.3.2.1Programs -> Summary Tab The Programs/Summary page displays a list of all your Programs and Folders, and information about each. To open this tab, first click the Programs tab, then the Summary sub-tab. Figure 51: Programs -> Summary Tab Here are the columns of information available: •...
Figure 52: ISY Toolbar To perform an action on a program, simply selecting it by clicking on it, click the left-most pull-down menu labeled “Choose” to select an action, and click the Apply button. Available actions are: Enable – enable a program that has been disabled Disable –...
Page 76
bottom-left “Manage Programs” section holds several buttons used to create and manage your Programs. Figure 53: Programs -> Detail Tab The top-right portion of the screen shows the details of a highlighted folder or program. The bottom right is where you create and edit your Program. Right-clicking on a folder displays the following menu: Page | 53...
Page 77
Figure 54: My Programs Popup Menu 5.3.2.2.1Status This option will display the current status of all the Programs, 5.3.2.2.2Status Icons This option will permit you to change how the status icons are displayed. 5.3.2.2.3New Folder This option will create a new folder. 5.3.2.2.4New Program This option will create a new program.
Page 78
5.3.2.2.6Copy This option will copy the currently selected item. 5.3.2.2.7Copy Folder This option will currently selected folder. 5.3.2.2.8Delete This option will delete the currently selected item. 5.3.2.2.9Import This option will allow you to import programs and folders that have been previously backed up or obtained into your ISY.
Page 79
Right-clicking on a program displays the following menu: Figure 55: My Programs Popup Menu 5.3.2.2.16Status This option will display the current status of the Program, 5.3.2.2.17Status Icons This option will permit you to change how the status icons are displayed. 5.3.2.2.18New Folder This option will create a new folder.
Page 80
5.3.2.2.19New Program This option will create a new program. 5.3.2.2.20Rename This option will allow you to rename your program. 5.3.2.2.21Copy This option will copy the currently selected program. 5.3.2.2.22Delete This option will currently selected program. 5.3.2.2.23Fun (If) This option will run the [If] portion of the program. 5.3.2.2.24Run Then This option will run the [Then] portion of the program.
5.3.2.2.31Import from Clipboard This option will import XML data from your clipboard. 5.3.2.2.32Export To Clipboard This option will export XML data to your clipboard. 5.3.2.2.33Find/Replace This option will allow you to find and replace data. 5.3.2.2.34Copy to Clipboard This option will copy the current program to your clipboard. For additional information on creating and working with programs, see section: 9 Programming 5.3.2.3Programs ->...
Figure 56: Programs -> Variables -> Integer Tab 5.3.2.4Programs -> Variables -> State Tab This page displays all of your state variables. This is also where you create or delete them. State and integer variables are the same in every respect, with one exception. Integer variables cannot be used to trigger actions in any of your programs.
Figure 57: Programs -> Variables -> State Tab 5.3.3 Configuration Tabs 5.3.3.1Configuration -> System Tab This page is used to configure the following: • Clock time settings • Network settings • System settings • ELK M1XEP interface settings Page | 60...
Figure 58: Configuration -> System Tab 5.3.3.2Configuration -> Emails/Notification -> Settings/Groups Tab This page gives you the options to setup your email notification settings. Page | 61...
Figure 59: Configuration -> Emails/Notification -> Settings/Group Tab Refer to section 21.8 Mail Server Settings for more information. Configuration -> Emails/Notification -> Customizations Tab This page gives you options to create custom notifications to be used in your programs. Page | 62...
Figure 60: Configuration -> Emails/Notification -> Customizations Tab Refer to section 21.8 Mail Server Settings for more information. 5.3.3.3Configuration -> IR Tab Use this page to import or learn IR codes to be used in your ISY, with your IR controller. Page | 63...
Figure 61: Configuration -> IR Tab Refer to section 16 The Integrated IR Receiver Notes for more information. 5.3.3.4Configuration -> Electricity Tab This page is used for configuration of the electricity module. Page | 64...
Figure 62: Configuration -> Electricity Tab Refer to section 6.9 Electricity Module for more information. 5.3.3.5Configuration -> Climate Tab This page is used to configure your climate module. Page | 65...
Figure 63: Configuration -> Climate Tab Refer to section 6.5 Climate Module for more information. 5.3.3.6Configuration -> Networking -> Wake On LAN Tab This page is used to configure the Wake On Lan options for the networking module. Page | 66...
Figure 64: Configuration -> Networking -> Wake On LAN Tab Refer to section 6.3 Network Module for more information. Configuration -> Networking -> Network Resources Tab This page is used to configure the network resource options for the networking module. Page | 67...
Figure 65: Configuration -> Networking -> Networking Resources Tab Refer to section 6.3 Network Module for more information. 5.3.3.7Configuration -> Networking -> Web Server Tab This page is used when you configure your ISY web server. Page | 68...
Figure 66: Configuration -> Networking -> Web Server Tab Refer to section 6.3 Network Module for more information. 5.3.3.8Configuration -> Portals Tab This page is used to configure your Portals module. Page | 69...
ISY device without the need to do any port forwarding. Your connection is not affected by changes to your external IP address. The ISY Portal uses cloud services hosted by Universal Devices. For setup see section 18.1 Configuring ISY Portal Integration 6.2 Portal Integration –...
6.3 Network Module The ISY’s Network Module enhances the ISY with several key features: Web Server – using the Network Module, the ISY can be used as a web server to server up your own applications, pictures and files. Network Resources – with the Network Module, the ISY allows you to call any network resource (TCP, UDP, HTTP, HTTPS) using ISY Programs.
Once devices have been added, they will be available in ISY Programs as Actions under the Networking category: Figure 69: Networking Actions More information on known-compatible 3 party devices and how to control them is available in this section: 20 Networking Resources Wake On LAN Once installed, click on the Configuration tab in the ISY’s Administrative Console, then the Networking sub-tab, then the Wake On LAN tab to configure.
Please note the following limitations: This module uses simulated INSTEON addresses internally. Though unlikely, it could potentially conflict with existing INSTEON devices in your ISY, stopping you from using those particular INSTEON modules. This module only allows for ON/OFF commands in the device tree. No support for bright/dim.
Page 97
Figure 71: Weather Stations Double-click a station to utilize it with your ISY. For best results, choose a station as close to your location as possible. Once selected, choose how you would like the information displayed (English or Metric). Also feel free to adjust the Polling Interface, which is how often your ISY connects to WeatherBug for updated weather information.
Page 98
You should now see local weather information as shown below: Figure 73: Local Weather Information Page | 75...
Now that your Climate Module has been configured, you can use this information as Conditions in ISY Programs. When choosing a condition, choose Module and Climate to see all available conditions: Figure 74: Using Climate Conditions 6.6 Open Auto Demand / Response Module *Requires firmware 4.1.3+ 6.6.1 ISY Installation •...
• If you do not have Java installed, please install the latest for your platform. You may find the latest Java downloads at http://www.java.com/getjava. Please choose the latest JRE for your platform • If you have ISY994i Series, go to http://isy.universal- devices.com/994i/zs/dashboard.jnlp;...
6.6.3 Configure OpenADR 6.6.3.1Configure Devices OpenADR operations, including reporting and opts, are only applied to devices that are in the Auto DR Group. To include devices in the OpenADR Group, click on the Device Manager and drag and drop devices into the Auto DR Group. Figure 76: OpenADR Device Manager Page | 78...
6.6.3.4Configure OpenADR Registration (2.0b) Figure 80: OpenADR Registration Menu Option Auto Registration – if this option is checked, ISY will automatically try to register with the VTN at boot up or when there is no longer any registration. Page | 82...
6.6.3.5Configure OpenADR Reports (2.0b) Figure 81: OpenADR Reports Menu Option Register All – This option must always be checked since OpenADR 2.0b requires all reports (status/usage) to be registered at the same time. Register – if Register All is checked, all report types (status/usage) are registered at the same time.
6.6.3.6Configure OpenADR Opt Schedules (2.0b) Figure 82: OpenADR Opt Schedules Menu Option Opt Schedules inform ISY of what disposition must be reported during certain times. Clicking on the Add button or any of the schedules brings up the Opt Editor dialog which enables editing each schedule.
ISY. For example, you may add a Z-Wave lamp into a scene with Insteon devices. Supported devices Thermostats • Lamp dimmers • Appliance module (on/off) • Schlage locks • Kwikset locks • Yale locks • See section 0 (Universal Devices) Page | 88...
for more information. Z-Wave Notes 6.8 Brutech Electricity Module Brultech Electricity Meters can be utilized to monitor electricity consumption. This information can be used as conditions within ISY Programs. 6.9 Electricity Module Brultech Electricity Meters can be utilized to monitor electricity consumption. This information can be used as conditions within ISY Programs.
ELK side. For example, you can write a program on the ELK to turn a light on through the ISY, but you cannot write an ISY program that turns a light on based on the state of an ELK resource. (Universal Devices) Page | 90...
The ELK Security Module changes that, fully integrating the ELK with the ISY allowing you to use the ELK’s available resources in your ISY programs. Figure 91: ISY Configuration 6.11.1 The Basic Idea of this Module This module is designed to expose ELK Security commands and events to ISY's Programming environment.
6.11.3 Configuring Elk 6.11.3.1Overview • You need an Elk M1 user configured with a 4 or 6 digit access code that is allowed to Arm, Disarm and Bypass the alarm • You need to enable non-secure communications on the Elk so that the ISY can communicate with it 6.11.3.2Configuring an Elk User with an access code to use from the ISY •...
Page 116
Figure 92: ElkRP2 Account Details – M1XEP Setup Button • In the M1XEP Setup Window... Page | 93...
Page 117
Figure 93: ElkRP2 – M1XEP TCP/IP Settings • Perform the following steps: o (1) choose the TCP/IP Settings tab o (2) Select the Enable non-secure port Checkbox o (3) If you are using a static IP address for the M1XEP (this is recommended) then verify that the IP settings are still correct o (4) Click the [Send] button to update the M1XEP with your changes o (5) If you have changed your IP address config, you may need to reboot the...
Page 118
Figure 94: ElkRP2 – Account – Details Connect o Test the connection to M1XEP via a non-secure socket (This is how the ISY will talk to the Elk, so let's make sure it is working correctly) ▪ (1) In Account Details, change the port to the non-secure port (e.g. 101) ▪...
▪ Now go back to the 'Account Details' in the ElkRP2 software and change the port back to the secure port for Elk RP2 (2601 by default) o Go to M1XEP TCP/IP Settings page if you forgot the secure port number 6.11.3.4Configuring ISY to Communicate with ELK Bring up the admin console for the ISY-99i and do the following ▪...
▪ Go to Automation, right+click on Lighting, and select Import Lighting Data ... ▪ Enter the name of the export file. ▪ Select Universal Devices ISY export for an Insteon network ▪ Click the [Import] button ▪ Click [Send to Control] button (you may need to connect first) ▪...
attribute is intended to be used as a special flag for the ELK Rules. For example, you may want a rule to trigger an output (magnetic door strike) when a certain user code has been entered. If the Arm, Disarm, and the Access attributes are enabled, then the first use of the user code will set the access flag.
Send notification if either Zone 1,2, or 3 is violated while the Lobby is Armed Fully Elk Area 'Lobby' 'Arm Up State' is Armed Fully And ( Elk Zone 'Zone 001' is Violated Or Elk Zone 'Zone 002' is Violated Or Elk Zone 'Zone 003' is Violated Then Send Notification to 'me' content 'Zone Status'...
• You will be presented with a Confirm Add dialog with a list of all the devices you selected. Assign the controller and responders by highlighting the device and select controller/responder button. From this dialog you can also remove devices. (Universal Devices) Page | 100...
Page 124
Figure 97: Confirm Add dialog • Select OK. • The system will add these devices to the scene. A System Busy dialog will be with a progress bar will be shown. Depending on the complexity and the number of other devices, especially with controllers/masters, it may take roughly 10 seconds to a few minutes to program the device(s) in becoming part of a scene.
On Level and Ramp rate attributes (if applicable) for that scene. Attributes for all devices are stored in the devices itself. These attributes are invoked in three levels of your lighting network, the ISY, Controller and Local. (Universal Devices) Page | 102...
Page 126
The ISY as the controller of the scene relies on a trigger(s) or schedule(s) defined in the program detail tab to invoke these attributes. Meaning, if the conditions set in the program are met and the action defined is to start the scene, the ISY will use the scene attributes at this level to create the lighting scene.
Page 127
Figure 100: Apply Changes and Copy Attributes A scene can help create the right ambiance for a certain event by a simple click. For example, in Figure 101: Screen Node expanded we have created a movie scene. The lights in the Living Room were set to be turned on at the desired light intensity while viewing a movie.
Figure 102: Living Room – Movie Scene 7.2 Creating a Scene 7.2.1 What is a Scene Scenes are simply a group of devices. A scene is equal to a group in INSTEON vernacular. Also, a scene is as small as two devices linked together and the more links you add the bigger the scene gets.
Page 129
Figure 103: The Link Management Menu • Name the new scene with something descriptive of what it controls Figure 104: New Scene Window • After clicking ok you should now see the new scene in the tree Figure 105: New Scene in Tree Page | 106...
7.2.3 Add Devices to a Scene Here are some useful terms from the glossary that pertain to adding devices a scene. A controller is a transmitting device that sends out a message to cause an action in a receiving device. A responder is a receiving device that takes action based on a message from a transmitting device.
Figure 107: New Scene Confirm Window 7.3 Organizing INSTEON Devices and Scenes Once added to your ISY, you can manage and organize your INSTEON Devices and Scenes in a variety of ways: Rename. When added to the ISY, devices are named their INSTEON address by default. If you right-click a device or scene, a Rename option is available to help make your devices more identifiable.
NOTE: In order to delete a Device or Scene entirely from the node list, it must be located in the parent “My Lighting” folder. So, to delete a node, be sure to move it out to “My Lighting” first. My Lighting. Clicking the My Lighting node on the left-hand pane displays a summary of all your devices, their current states, their INSTEON addresses, their device types and their firmware versions.
7.5 Other Functions (Restore, Disable, Query, etc.) There are several other functions available when working with INSTEON devices in the Administrative Console’s Main tab. These functions are available by right-clicking the device or Scene. Restore Device. If an INSTEON device has lost all or some of its configuration, you can try using this function.
ISY program sends an ON or OFF command to the device. When a FAST ON or FAST OFF command is received, the device will turn full on or full off, respectively, at the fastest possible rate. (Universal Devices) Page | 111...
7.6.2 What Is A Group? Figure 110: Device/Group/Scene Chart In INSTEON terminology, a group is a unidirectional link between a single controller device, and one or more responder devices. All INSTEON devices employ bidirectional communication, and all are theoretically capable of acting as either a controller or a responder.
Page 136
be controllers of up to five groups, and RemoteLincs controllers of up to six groups. In general, a device may be controller of a number of groups equal to its number of buttons/paddles. Finally, the PLM may be a controller of up to 255 groups. All responder devices may be responders in multiple groups.
7.6.3 What Is A Scene? Figure 111: Device/Scene Chart Scenes are closely related to groups. In ISY terminology, a scene is a named collection of devices, and is displayed in the tree view of the Main tab. When a scene is created by the user, it will initially be empty.
indicating LEDs or a KeypadLinc's button LED, will be updated when the scene is controlled from any other controller in the scene. In this sense, an ISY scene is a multi-directional group. If a scene were created manually without ISY, all of the required unidirectional INSTEON group links and cross-links would need to be manually created.
7.6.7 Adding Devices to a Scene Devices may be added to a scene one at a time, or an entire group of devices may be added at once. To add a device or group of devices to a scene: • Select the devices to be added: o In the tree view of the Main tab, click on the device to be added, or hold down the <Control>...
OFF, rather than on. I also find that including all devices in one of these three global scenes makes introduction of new devices into my system easier (Universal Devices) (posted by: oberkc) Page | 117...
in that new devices affect very few programs. None of these scenes have a controller defined...all are responders and triggered only by programs. In addition to the global scenes above, I use whole-house scenes for various scenarios: evening (occupied), evening (away), morning, weekends, holidays, visitors, etc... These are the scenes I use to turn on the house, and may (or may not) have a controller device included.
Page 142
Click RemoteLinc2 button A node name below Scene A name. Set FanLinc Motor to High, Secondary button A to 100% On Level, Secondary KPL button B to 0% On Level, Secondary KPL button C to 0% On Level, Secondary button D to 0% On Level. Define an ISY Scene B.
Click the KPL Secondary button D node name below Scene D name. Set FanLinc Motor to Off, Secondary KPL button A to 0% On Level, Secondary KPL button B to 0% On Level, Secondary button C to 0% On Level. Click RemoteLinc2 button D node name below Scene D name.
• The timestamp column shows the last time the current value of the variable was changed. 8.2.4 Changing the Precision of variables (This applies to firmware v5 and above) (Universal Devices) Page | 121...
Figure 112: Changing Precision of Variables To change the precision of a set of variables • Select the variables • right click to bring up the menu and select Change Precision • Select a precision for the variables • Press the Save button at the bottom of the screen All variables are still stored as 4-byte signed integers.
8.2.6 Initialization • At start-up, all variables are initialized to their predefined init value, or zero, if no init value has been specified. The init value may be set by editing the init value in the table containing the variable definitions. •...
a : Either a variable or an integer constant Assign $x = a $x += a Subract $x -= a Multiply $x *= a Divide $x /= a Remainder $x %= a And (binary) $x &= a Or (binary) $x |= a Xor (binary) $x ^= a 8.2.10 Functions...
Greater Than $x > a Greater Than or Equal $x >= a Example A loop that could be used to implement an off timer that increases in 5-minutes intervals. For example, another program could be written to increase $BathRoomLightCount by 1 each time an On button is pressed.
In this screenshot we are checking to see if a Variable called Counter is greater than 3: (This applies to firmware v5 and above) Figure 113: Counter Variable 8.2.12 Program Status Conditions (This applies to firmware v5 and above) Figure 114: Program Status Conditions Status conditions support either literal values or variables.
8.2.14 Using ‘If Control’ versus ‘If Status’ in Programs The reason to use control condition is that a control will trigger a program evaluation upon EACH receipt of the anticipated command. Unlike control, a "status" condition will trigger an evaluation only after a CHANGE in status. If a device status is off, and you turn it off again, the status has not changed and no program evaluation will take place.
8.2.16 Modifying Variables in Programs You can also use ISY Programs to modify variables. You can perform standard arithmetic functions on a variable, change a variable to a specific value, or modify a variable’s Init state. The following functions can be performed on a variable: Command Function Performed Sets the variable to a specified value.
8.2.17 Using Variables in Notifications Variables can also be useful when sending notifications. Say you have a variable that you use to count the number of times a motion sensor is trigged overnight. You could send yourself an email in the morning telling you how many times it was triggered. Your notification might look like this: Figure 119: Email Based on Motion Sensor Trigger 8.3 Notifications...
Figure 120: Email Recipients Screen Choose the type of recipient you’d like to add (Regular Email, text notification, etc.), hit the Add button, then type the recipients corresponding address as instructed. When done, hit OK to finish editing the group. Always remember to hit the Save button on the bottom of the Admin Console to save your settings to the ISY.
Page 154
Once created, these custom notifications can be triggered and sent using your ISY Programs. Note that Custom Notifications supports plain text, HTML and XML. For example, you could set up a variable used to count how many times your motion sensor triggered every night.
${elk.keypad.1.key.#.led} -- Show LED status of event Key on Keypad 1 • User defined Integer and State variables are referenced with their type (1-Integer, • 2-State) and ID Number for example: ${var.2.3} for the state variable with ID # 3 (Universal Devices) Page | 132...
8.4.2 System Variables Value Name Description ${sys.date} Date ${sys.time} Time ${sys.time12} Time (am/pm) ${sys.time24} Time (24 hour) ${sys.sunrise} Sunrise ${sys.sunrise12} Sunrise (am/pm) ${sys.sunrise24} Sunrise (24 hour) ${sys.sunset} Sunset ${sys.sunset12} Sunset (am/pm) ${sys.sunset24} Sunset (24 hour) 8.4.3 User Variables Value Name Description ${var.<valueType>.<valueID>} Type 1 = Integer, Type 2 = State...
sys.node.<address>.<valueName>.TPW sys.node.11 22 AA 1.TPW Total Energy Used sys.node.<address>.<valueName>.PF sys.node.11 22 AA 1.PF Power Factor 8.4.5 Elk Variables Variable Example Description elk.area.<areaNumber>.name elk.area.1.name Name of the Area elk.area.<areaNumber>.armUpState elk.area.1.armUpState Area Arm Up State elk.area.<areaNumber>.alarmStatus elk.area.1.alarmStatus Area Alarm Status elk.area.<areaNumber>.bypassState elk.area.1.bypassState Area Bypass State elk.zone.<zoneNumber>.name elk.zone.1.name...
Page 158
Feels Like: ${mod.weather.temp.feelslike} Current temperature but factors in wind chill and humidity. Average Temperature: ${mod.weather.temp.avg} Avg temp from Midnight till Humidity: ${mod.weather.humidity} Current Humidity Pressure: ${mod.weather.pressure} Current Pressure Dew Point: ${mod.weather.dewpoint} Current Dew Point Wind Speed: ${mod.weather.wind.speed} Current Wind Speed Wind Direction: ${mod.weather.wind.direction} Current Wind Direction...
Page 159
Avg Temperature ${mod.weather.temp.avg.tomorrow} Forecast average temperature Tomorrow: tomorrow. High Temperature ${mod.weather.temp.hi.tomorrow} Forecast high temperature Tomorrow: tomorrow. Low Temperature ${mod.weather.temp.low.tomorrow} Forecast low temperature Tomorrow: tomorrow. Humidity Tomorrow: ${mod.weather.humidity.tomorrow} Forecast humidity tomorrow. Wind Speed Tomorrow: ${mod.weather.wind.speed.tomorrow} Forecast wind speed tomorrow. Wind Gust Speed ${mod.weather.gust.speed.tomorrow} Forecast wind gust tomorrow.
Page 160
Value 15 - In the vicinity / Nearby • Value 16 - Widespread • Climate Intensity defines things such as light, heavy, etc. Value 1 - Very light • Value 2 - Light • Value 3 - Heavy • Value 4 - Very heavy •...
Value 22 - Unknown Precipitation (May Occur in an automated observation station, • which cannot determine the precip type falling.) Value 23 - Volcanic ash • Value 24 - Water spouts • Value 25 - Freezing fog • Value 26 - Freezing drizzle •...
The tree has three levels; the root (My programs), program folders, and programs. 9.2.1.1Folders Program Folder Icon Program Folders can be used to organize your programs. (Universal Devices) (Universal Devices) Page | 139...
Program Folder Conditions Icon Program folders can have conditions. These conditions must be met before any programs within the folder will run. • Folders can be nested and thus Folder Conditions can be cascaded. When changes have been made to a folder it will be flagged. Use the Manage Programs | Save Changes button.
Figure 125: Program Context Menu 9.2.1.4Status This will switch to the Program Summary screen with the selected program or folder highlighted. 9.2.1.5New Folder Select this option to create a new folder. This option always creates a new folder at the next lower level of the tree.
9.2.1.7Rename Select this option to rename a folder or program. 9.2.1.8Copy Select this option to copy a folder or a program. The copied folder or program will be added at the same level of the tree. It will have the same name as the copied folder or program with the word COPY appended to it.
9.2.1.12Import Use this option if you are importing a folder or a program file. It will import all programs in the file into the selected folder. 9.2.1.13Export Use this option if you are exporting a folder or a program file. If you selected a folder for export, it exports the folder and its contents.
Save Changes button stores the revisions or edits done to the program. You cannot undo the revisions after the Save changes button is selected. 9.2.3 Program Content This area is where the conditions and actions selected in Add to Program are placed. Figure 129: Program Details (Universal Devices) (Universal Devices) Page | 144...
Buttons labeled Add And (...) or Add Or (...) will be available only after a second condition is added. The use of this button allows adding a parenthesis to your program condition. An example of a program with multiple condition and action is shown below. (Universal Devices) Page | 145...
Figure 130: New Program Screen The enabled check box allows the system to run the program. Unchecking this box disables the program. 9.2.4.1Schedule The schedule button is used to enter time events into the IF section as a condition. When selected the lower portion of the Add to Programs area changes its selection fields.
Page 170
The To field can be changed to For, defining the duration of the event based on time the start time. If you assigned a timer event to start at a time in a specific day of the week, and the For duration puts the end time to the next day, the ISY will complete the event timer on the next day.
Figure 133: Sunrise/Sunset field set The Last Run option is an event timer based on the last runtime of the selected program. Refer to Figure 134: Last Run field set. Figure 134: Last Run field set To add a timer event to a program, select or create a new program. Set the time conditions for the timer event.
Page 172
To add a condition to a program, first select or create a program, and then press the Condition button. When you have finished entering the condition information, press the [Add to 'If'] button to add it to the 'If' section of the program. A condition is based on: Status •...
9.2.4.3Action The "Action" button adds the action information in the ‘Then’ and ‘Else’ section of the program. It is defining the action taken after the condition is met or the trigger occurs. Figure 136: Action drop-down An Action can be setting a device to a defined state that is ON/OFF or set level. The type of Action is dependent on the device type.
Page 174
Notify Figure 138: Adding a Notify action to a program Sends an e-mail notification to the addresses entered in the system configuration. Program Figure 139: Selecting an action to a program • Run (If) o Runs the Conditions of the specified program. •...
Page 175
Wait Figure 140: Adding a Wait action to a program Waits for the specified amount of time. If the Random checkbox is checked, then a random value from 0 to the specified time is used. • A wait stops when the conditions change. Repeat Repeats all of the actions following it, to the end of the list, or to the next Repeat entry.
Page 176
Adjust Scene This command will write new values to scene responders. Select a Scene Controller from the In Scene drop-down. Figure 143: Adjust a Controller Scene Or select an ISY scene. Figure 144: Adjust an ISY Scene • Select a device in the Set drop-down. •...
Page 177
Networking Calls a Network Resource if the Networking Module has been installed. Figure 146: Networking Options Wake on LAN: Sends a WOL command to a specified device. Resource: Sends a prescribed command over the network. Comment To add a comment to a program, first select or create a program, and then press the Comment button.
Click on the "Program Details" tab to get started. Figure 148: Program Menu o Right click on one of the folders and select "New Program", rename it to something that pertains to your program. (Universal Devices) Page | 155...
Figure 149: New Program o Use the interface to define a Condition which will cause the program to run. o Define a response to the Condition. o Finally click on the "Save Changes" button to save your program to the database.
Figure 151: Schedule Window 9.3.3 Create a Conditional Program • This example uses a button press to set a scene that lights the way to the bedroom and after 10 minutes turns off most of the house lights. • Click on Condition. •...
Page 181
• Click on Action to define a response to the Condition. • Select Insteon in the first box. • Select the Scene to control in the second box. • Select the desired action On in the third box. • Add to Then. •...
Figure 152: Conditional Program 9.3.4 Stop a Program • When a Program is Waiting or Repeating it can be stopped. Here is an example that will cancel the above program. • The 'Go To Bed' scene will remain on but the 'Bedtime' scene will not be called if the keypad button is turned off before the end of the 10 minute wait.
Figure 153: Stop Program 9.3.5 Creating Your First Program To create a Program click the New Program button and a new program appears. Figure 154: Creating a Program Page | 160...
Page 184
The ISY prompts you to name your program – type in something descriptive so you can easily identify it in the future. Figure 155: Naming a Program Once you name your program click the If statement to set your conditions. Figure 156: If Statement Once highlighted, the bottom portion of the screen allows you to set your conditions using simple buttons and pull-down menus.
Page 185
Once your Sunset condition is set, click Add to ‘If’ and you will see the If statement added to the top portion of the screen, which shows the actual program you are creating. Figure 158: Adding to the If Statement Next, click on the Then statement to highlight it.
Page 186
First, we’ll click the “Time is Sunset” IF statement to highlight it. Figure 161: Changing the If Statement Once the statement is highlighted we can edit it on the bottom of the screen. Change the Time Is pull-down menu to a From and change the middle numeric value to 30. Then change the For pull-down menu to To and change the values to 10pm as shown below: Figure 162: Updating the Schedule Click the Update button to change the highlighted statement.
Figure 163: Adding an Else Statement Click Add to ‘Else’ and your final program should look like this: Figure 164: Enhanced Sample Program Hit the Save Changes button in the bottom left, and your enhanced program is complete! NOTE: Always remember to hit the Save Changes button when finished creating or editing your programs! Changes are not saved to the ISY until this button is pressed.
Page 188
To remove a line, simply highlight it and click Remove Line. To rearrange your lines, highlight them and click Move Line Up or Move Line Down. To group conditions together, use the Add And (..) and Add Or (..) buttons as shown below: Figure 166: Grouping Conditions This program executes only if the time is 9:45pm and the LampLincs/LL1 device is not Off...
Figure 168: Temporarily Disable a Program Disabled programs are displayed with a red crossed out circle in the Program list as shown below: Figure 169: Disabled Programs Enabled programs do have a red crossed out circle in the Program list as shown below: Figure 170: Enabled Programs Programs that have changes and need to be saved are displayed in the program list with a green arrow:...
Page 190
For example, a program that would run from 6am to 12pm: Figure 172: Schedule Screen – Time Range Or a program that would run at 10pm on weekdays: Figure 173: Schedule Screen – Time & Day Once your Schedule statement is complete, click the Add to ‘If’ button to add it to your program.
9.3.8 Program Conditions In the Add To Program button section, click Condition to add a Condition to your Program. Conditions add other criteria to your IF statement. When adding a Condition to your Program, be sure to choose if you would like it to be added as an AND or OR. Types of Conditions are: Status conditions are true if a selected INSTEON device is at the state you specify.
Page 192
Fast On (double-tap ON) Fast Off (double-tap OFF) Fade Up (press and hold ON) Fade Down (press and hold OFF) Fade Stop (release of a press and hold) Bright (bright button pressed) Dim (dim button pressed) For example, if you want to trigger a program if your switch is double-tapped ON (Fast On) you could do the following: Figure 176: Fast On Condition Program Conditions check to see whether or not other ISY Programs are currently True or...
ELK conditions trigger programs based on the state of available ELK resources, assuming you have an ELK security system installed and communicating with your ISY, and have the optional ELK Security System module installed. See 6.11 ELK Integration Module for more information.
Page 194
Notify: Sends an email or SMS text message to recipients. Please see 8.3 Notifications for more information. Program: Runs or modifies other ISY programs. The following options are available: Run (If) (runs the IF portion of a program) Run Then (runs the THEN portion of a program) Run Else (runs the ELSE portion of a program) Stop (stops a currently running program) Enable (enables a disabled program)
Page 195
Figure 179: Random Action Repeat: Repeats an action or group of actions multiple times. If the Random button is checked, a random number of repeats between 0 and the specified value is used. For example, to flash your light on and off 5 times, every 2 seconds, you could: Figure 180: Flash Lights ON and OFF Figure 181: Repeat While Repeat:...
Other Actions may be available depending on what optional modules you may have installed. 9.3.10 Program Folders To create a new folder, simply click the New Folder button on the bottom-left corner of the screen. You can also create new folders by right-clicking on the program hierarchy (left- hand side of the screen) and choosing New Folder.
9.4 Advanced Programming 9.4.1 Combining Conditions using And • Using multiple Conditions can make Programs more convenient. • This program watches for a switch to be turned Off and if it was already Off turns the lights on at a low level. •...
Figure 183: Program Off-Off 9.4.2 Combining Conditions using Or • This program checks for any of three conditions become true. • I use this to turn off all the basement lights when the basement stairs are turned off. • I check for the Status in case someone holds the switch to dim the lights off. Page | 175...
Figure 184: Program Off or Dim 9.4.3 Using Else • ELSE will run when something in the IF statement is specifically not true. • This program will be triggered when Button + is either Held or Released. • The THEN statement will run when the program is TRUE. •...
Figure 185: Program Fade Until Else 9.5 Scope, Precedence and Execution Order 9.5.1 Scope All programs and folders have global scope, i.e. they are visible to all other programs and folders. (Universal Devices) Page | 177...
9.5.2 Operator Precedence A program's If clause may contain more than one condition. Every condition (including schedule conditions) begins with an operator, which is one of And or Or. The precedence of these operators is: • And • Or Therefore, an expression such as If A or B or C and D would be evaluated as If A or B or (C and D).
Page 202
Status 'Light 1' is On Or Status 'Light 2' is On Or Status 'Light 3' is On And Control 'Switch 1' is switched On Then Set 'Light 4' On Else - No Actions - (To add one, press 'Action') The Or ( .. ) parenthesis are less frequently used. Consider the expression If A or ( .. ). If the expression within the Or ( ..
Page 203
Control 'Switch 1' is switched On Or ( Status 'Switch 2' is On And Status 'Light 2' is On Or Status 'Light 3' is On And Control 'Switch 3' is switched On Then Set 'Light 4' On Else - No Actions - (To add one, press 'Action') As a final example, the requirement is to have Light 3 turn on if Light 1 is on and Switch 1 is switched on, or Light 2 is on and Switch 2 is switched on: If (A and B) or (C and D).
Page 204
Status 'Light 1' is On And Control 'Switch 1' is switched On Or Status 'Light 2' is On And Control 'Switch 2' is switched On Then Set 'Light 3' On Else - No Actions - (To add one, press 'Action') If this appears confusing, Or ( ..
Status 'Light 1' is On And Control 'Switch 1' is switched On Or ( Status 'Light 2' is On And Control 'Switch 2' is switched On Then Set 'Light 3' On Else - No Actions - (To add one, press 'Action') Note that no operator (And or Or) is displayed for the first condition in the If clause.
9.5.4 Statement Execution Order Within the Then or Else clause of a program, statements are executed from top to bottom in the order in which they occur. When a statement calls another program, the called program begins executing, and the calling program immediately continues execution with the next statement in sequence--it does not wait for the called program to complete before continuing.
actually execute at startup only if its Enabled box was checked; as of firmware 2.6.6 it will run at startup when set to do so, regardless of the state of the Enabled box. At this point initialization is complete, and event processing begins. All programs which were set during initialization to run, whether schedules, triggers, or Run at Startup, now begin running, and programs initiated by new events will also begin running.
Simply uncheck the Enabled box so that the program does not run independently, and it becomes a callable procedure, complete with conditions. These procedure programs may be nested just as other programs. A main (Universal Devices) Page | 185...
program may call several of these procedure programs consecutively in order to evaluate multiple conditional paths. It should be noted that when a program is not enabled, its conditions are not automatically evaluated. Therefore, its Then and Else clauses may contain statements which alter the program's conditions, without causing the program to stop running the current path, as happens when the program is enabled.
Control 'Movie Time KPL non-toggle button' is switched Off Or Control 'Movie Time KPL non-toggle button' is switched Fast Off Then Run Program 'Movie Time Prep' (If) Else - No Actions - (To add one, press 'Action') (Universal Devices) Page | 187...
9.7.2 Program: 'Movie Time Flag' - Not Enabled - No Conditions - (To add one, press 'Schedule' or 'Condition') Then - No Actions - (To add one, press 'Action') Else - No Actions - (To add one, press 'Action') 9.7.3 Program: 'Movie Time Prep' - Not Enabled Program 'Movie Time Flag' is False Then Set 'Kitchen Movie Scene Fade' On...
9.7.4 Program: 'Movie Time Start/Stop' - Not Enabled Program 'Movie Time Start/Stop' is False Then Set 'Kitchen Movie Scene Fade' Off Set 'Living Room Movie Scene Fade' Off Else Set 'Kitchen Movie Scene Fade' On Set 'Living Room Movie Scene Fade' On Set 'Main Bath' On In this group of programs, only the Movie Time Macro program is enabled, so that Movie Time button presses will activate it.
Without the use of the Run (If) command, the required functionality can still be obtained, though with significantly greater complexity, by use of a group of programs such as the following: 9.7.5 Program: 'Movie Time Flag' - No Conditions - (To add one, press 'Schedule' or 'Condition') Then - No Actions - (To add one, press 'Action') Else...
9.7.7 Program: 'Movie Time Macro' Control 'Movie Time KPL non-toggle button' is switched Off Or Control 'Movie Time KPL non-toggle button' is switched Fast Off Then - No Actions - (To add one, press 'Action') Else - No Actions - (To add one, press 'Action') 9.7.8 Program: 'Movie Time Prep' Program 'Movie Time Macro' is True And Program 'Movie Time Flag' is False...
9.7.9 Program: 'Movie Time Prep Action' - No Actions - (To add one, press 'Action') Then Run Program 'Movie Time Macro' (Else Path) Run Program 'Movie Time Flag' (Then Path) Else - No Actions - (To add one, press 'Action') 9.7.10 Program: 'Movie Time Start' Program 'Movie Time Macro' is True...
9.7.11 Program: 'Movie Time Start Action' - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Run Program 'Movie Time Macro' (Else Path) Run Program 'Movie Playing Flag' (Then Path) Else - No Actions - (To add one, press 'Action') 9.7.12 Program: 'Movie Time Stop' Program 'Movie Time Macro' is True...
9.7.13 Program: 'Movie Time Stop Action' - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Run Program 'Movie Time Macro' (Else Path) Run Program 'Movie Playing Flag' (Else Path) Else - No Actions - (To add one, press 'Action') The programs Movie Time Flag and Movie Playing Flag have no conditions or actions.
If a timer has been set and is running, a local fast on will not change the timer. One could program the operation of the local fast on differently if desired. (Universal Devices) (posted by user rob9)
I use two programs (Flag 1 and Flag 2) to keep track of the state of the timer. One thing that I could not do is have the LED lights indicate the amount of time left on the timer. The SwitchLinc Relay by design will only display all LEDs on or all off. Here are the programs.
9.8.2.2Program: Fan Timer on 30 Min Control 'Utility Room Fan' is switched On And ( Program 'Flag 1' is False And Program 'Flag 2' is True Then Stop program 'Run 15 min' Run Program 'Run 30 min' (Then Path) Else - No Actions - (To add one, press 'Action') Page | 197...
9.8.2.3Program: Fan Timer on 60 Min Control 'Utility Room Fan' is switched On And ( Program 'Flag 1' is True And Program 'Flag 2' is False Then Stop program 'Run 30 min' Run Program 'Run 60 min' (Then Path) Else - No Actions - (To add one, press 'Action') Page | 198...
9.8.2.4Program: Fan Timer on 90 Min. Control 'Utility Room Fan' is switched On And ( Program 'Flag 1' is True And Program 'Flag 2' is True Then Stop program 'Run 60 min' Run Program 'Run 90 min' (Then Path) Else - No Actions - (To add one, press 'Action') The Flag 1 and Flag 2 programs are completely empty.
9.8.2.7Program: Run 15 min - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Run Program 'Flag 1' (Else Path) Run Program 'Flag 2' (Then Path) Wait 15 minutes Run Program 'Fan Off' (Then Path) Else - No Actions - (To add one, press 'Action') 9.8.2.8Program: Run 30 min - No Conditions - (To add one, press 'Schedule' or 'Condition') Then...
9.8.2.9Program: Run 60 Min - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Run Program 'Flag 1' (Then Path) Run Program 'Flag 2' (Then Path) Wait 30 minutes Run Program 'Run 30 min' (Then Path) Else - No Actions - (To add one, press 'Action') 9.8.2.10Program: Run 90 Min - No Conditions - (To add one, press 'Schedule' or 'Condition') Then...
9.8.2.11Program: Fan Off Control 'Utility Room Fan' is switched Off Or Control 'Utility Room Fan' is switched Fast Off Then Stop program 'Run 15 min' Stop program 'Run 30 min' Stop program 'Run 60 min' Stop program 'Run 90 min' Run Program 'Flag 1' (Else Path) Run Program 'Flag 2' (Else Path) Set 'Utility Room Fan' Off...
9.8.3.1Program: Green Status Status 'KPLg' is not Off Then Set Program 'Green Startup On' To Run At Startup Set Program 'Green Startup Off' To Not Run At Startup Else Set Program 'Green Startup Off' To Run At Startup Set Program 'Green Startup On' To Not Run At Startup Since these programs have no Conditions they will only be run when called from Run At Startup or from another program.
• node - is to be consider either a device or a scene in home automation terms. • provider - is one or more of the notification message providers. (Universal Devices) Page | 205...
10.2 Expression Operators • is - compares status • is not - compares inverse status • > - compares greater than status • < - compares less than status 10.3 Control vs Status • Control 'node' is switched On o When you use 'Control' you are testing for how it was turned on, eg.
10.4 Device Intensity Level Arguments With a device you have several options on what can be performed with them. Depending on if the device is a relay or a dimmer the ISY will provide the proper arguments for it. Here is a list of what each argument equates to.
10.5 ISY Commands 10.5.1 If expr … Then body1 … Else body2 Description: The 'If' command evaluates its expression. The 'Then' and 'Else' arguments are key words to make the command easier to read. When the 'If' is true it will execute the 'Then' part of the program and when the 'If' is false it will execute the 'Else' part of the program.
Sample Code: Status 'Closet' is On Control 'Closet' is not switched Off Sample Code: Status 'Pantry' is On Control 'Pantry' is not switched Off 10.5.3 Time Is arg Description: This command word is to specify an exact time for an event to occur. It has a small timeout window in which it makes sure that the event took place.
Sample Code: From Sunset Sunrise (next day) Sample Code: From 12:00:00AM on 2007/12/25 12:00:00AM on 2007/12/26 10.5.5 From arg … For arg Description: The 'From' and 'For' words which are only used in pairs are for expressing a length of time. The From time is the starting point and the For is the length of time it will be true.
10.5.6 On arg Description: The optional 'On' word is for specifying certain days of the week. It requires that a 'From', 'To' combo or 'Time is' command to be specified. The 'Never' argument prevents the program from being evaluated, effectively commenting it out. To set 'On Never' deselect the 'All' option and deselect all seven of the days options.
Sample Code: Status 'Family Room' is On 10.5.8 Control ‘node’ arg Description: The control command checks for a current event of a node. It is watching for a node to be activated by the user. It becomes true when the event matches the specified condition.
Sample Code: X-10 'A1/On (3)' is Received 10.5.11 IR ‘node’ arg Description: The IR command listens for IR events. Category Arguments Condition Is, Is Not, Pressed, Double Pressed, Held, Released Sample Code: 'Movie Time' is Pressed 10.5.12 Set ‘node’ arg Description: The 'Set' command sends INSTEON commands to the provided node.
10.5.13 Set Scene ‘node’ arg Description: The 'Set Scene' is the same as the 'Set' command but sends INSTEON commands to a scene, it is an automatically displayed command when a scene node is selected. Category Arguments Action On, Off, Fast On, Fast Off, Brighten, Dim, Fade Up, Fade Down, Fade Stop, 1% - 99%, Query Sample Code:...
10.5.15 Send Notification ‘provider’ Description: The 'Send Notification' command triggers the ISY to brodcast a notice via the configured providers. Category Arguments Action To All Sample Code: Then Send Notification to All 10.5.16 Run program ‘node’ arg Description: The 'Run program' command causes the specified program to begin execution.
Sample Code: Then Run Program 'Porch Timer' (If) Else Run Program 'Porch Timer' (Then path) Then Run Program 'Porch Timer' (Else path) 10.5.17 Stop program ‘node’ arg Description: The Stop program 'node' will cause the target program to immediately cease execution.
10.5.19 Disable program ‘node’ arg Description: Disable program 'node' will cause the target program to become disabled. Category Arguments Action If, Then Path, Else Path, Stop, Enable, Disable, Set To Run At Startup, Set To Not Run At Startup Sample Code: Then Disable Program 'Porch Timer'...
Sample Code: Else Set Program 'Porch Timer' To Not Run At Startup 10.5.22 Wait arg random Description: The 'Wait' command causes the program to pause for the specified amount of time (hours, minutes, seconds) before executing the next statement within the program. If the Random box is checked, the delay will be randomly chosen between zero and the specified amount of time, inclusive.
Page 242
An argument of 0 times prevents the statements within the Repeat block from executing, effectively commenting them out. The 'Repeat' command, when encountered during program execution, will cause the program's conditions to be reevaluated (see 9.5.4 Statement Execution Order). Category Arguments Action Every, For, Time, Random...
Sample Code: Then Repeat While $Int_1 > 0 $Int_1 -= 1 Wait 10 seconds 10.5.26 Comment Description: The 'Comment' box creates a single note for the complete program. It is shown below the program in the same Program Content window pane. Category Arguments Comment...
The following series of programs starts off with a single program that triggers at midnight and then cascades through a series of additional programs using “run if”, “run then”, and “run else” commands. These programs update a set of variables each day (Universal Devices) Page | 221...
including the current day, day of month, day of year, month, year, and week of month. In addition, there are counters which follow an every other, every third, every fourth, and every fifth day schedule. Also, there is a program that sets a variable according to whether it is an even day or an odd day.
every x number of days/weeks variables since those programs require a reference that always increases by one each day. I have arbitrarily used MS Excel’s system of setting Jan 1, 1900 equal to day one and then counting from there. This offered an opportunity to test these programs well into the future and have a reference to check the values against.
know that they must be skipped over until you get back to the correct ID number location. If you have already used some of the variable locations for other programs, you must either redirect your current program to another ID location or redirect the appropriate variables from these programs to new ID locations.
11.1.1.5The Programs Advance Day: This program is the "trigger". Meaning that the "if" clause contains the only trigger event starting the entire cascade of programs. If you manually initiate a "run then" of this program, all of the programs will run and it will push the entire series of programs one day into the future.
Page 249
Or ( $iDay.of.Month < 30 And ( $iMonth is 4 Or $iMonth is 6 Or $iMonth is 9 Or $iMonth is 11 Or ( $iDay.of.Month < 29 And $iMonth is 2 And $iLeap.Year is 0 Or ( $iDay.of.Month < 28 And $iMonth is 2 And $iLeap.Year >...
Page 250
$sDay.of.Month Init To $iDay.of.Month $sDay.of.Month = $iDay.of.Month Run Program 'Day of Week' (If) Run Program 'Month Advance' (If) Run Program 'Month Reset' (If) Run Program 'Week of Month' (Then Path) Run Program 'Ever X Weeks' (Then Path) Run Program 'Odd Even Day' (Then Path) Run Program 'Holiday reset' (Then Path) Else $iDay.of.Month = 1...
Page 251
Odd Even Day: This program sets a variable to 0 or 1 based on the odd or even nature of the current day of month. - No Conditions - (To add one, press 'Schedule' or 'Condition') Then $iOdd.Even.Day = $iDay.of.Month $iOdd.Even.Day %= 2 $iOdd.Even.Day Init To $iOdd.Even.Day Else...
Page 252
Day of Week $iDay.of.Week < 7 Then $iDay.of.Week += 1 $iDay.of.Week Init To $iDay.of.Week $sDay.of.Week Init To $iDay.of.Week $sDay.of.Week = $iDay.of.Week Run Program 'Day of year Advance' (If) Else $iDay.of.Week = 1 $iDay.of.Week Init To 1 $sDay.of.Week Init To $iDay.of.Week $sDay.of.Week = $iDay.of.Week Run Program 'Day of year Advance' (If) Day of Year Advance: This program counts from 1 to 365 (or 366) as the year progresses.
Page 253
And $iLeap.Year is 0 Then $iDay.of.Year += 1 $iDay.of.Year Init To $iDay.of.Year $sDay.of.Year Init To $iDay.of.Year $sDay.of.Year = $iDay.of.Year Run Program 'Every x Day Counter' (Then Path) Run Program 'Year' (If) Else $iDay.of.Year = 1 $iDay.of.Year Init To 1 $sDay.of.Year = $iDay.of.Year $sDay.of.Year Init To $iDay.of.Year Run Program 'Every x Day Counter' (Then Path) Run Program 'Year' (If)
Page 254
Every X Day Counter: This program divides the day counter value (this value increases by one every day without ever resetting) by either 2,3,4, or 5 and then sets the remainder as the value of the variable. You could easily add additional lines to this program for any other count of repeating days.
Page 255
Christmas: This and the following holiday programs set a variable to 1 on the given holiday and back to zero for any other day. New programs should be added by the user for other holidays that they may want to include. Or you could write additional programs that are structured the same but set a different variable depending on the type of holiday.
Page 256
- No Actions - (To add one, press 'Action') Labor Day $iDay.of.Week is 1 And $iWeek.of.Month is 1 And $iMonth is 9 Then $iHoliday = 1 Else - No Actions - (To add one, press 'Action') Memorial Day $iDay.of.Week is 1 And $iMonth is 5 And ( $iWeek.of.Month is 4...
Page 257
Then $iHoliday = 1 Else - No Actions - (To add one, press 'Action') New Years Day $iDay.of.Month is 1 And $iMonth is 1 Then $iHoliday = 1 Else - No Actions - (To add one, press 'Action') Thanksgiving $iDay.of.Week is 4 Or $iDay.of.Week is 5 And $iWeek.of.Month is 4 And $iMonth is 11...
Page 258
Else - No Actions - (To add one, press 'Action') Leap Year Calculator: This rolls a variable from 0 through 3 depending on where we are in the leap year cycle. 3 is a leap year. The year 2100 is a special year in that it is not a leap year despite being at that point in the 4 year cycle.
Page 259
Else - No Actions - (To add one, press 'Action') Month Reset $iDay.of.Month is 1 And $iMonth is 12 Then $iMonth = 1 $iMonth Init To 1 $sMonth = 1 $sMonth Init To 1 Else - No Actions - (To add one, press 'Action') Friday: This and the following day programs check the current day of week as calculated by these programs against the day of week by ISY's internal calendar and reports any issues.
Page 260
Monday On Mon Time is 1:00:00AM Then $iSync = 1 Run Program 'Sync email alert' (If) Else - No Actions - (To add one, press 'Action') Saturday On Sat Time is 1:00:00AM Then $iSync = 6 Run Program 'Sync email alert' (If) Else - No Actions - (To add one, press 'Action') Page | 237...
Page 261
Sunday On Sun Time is 1:00:00AM Then $iSync = 7 Run Program 'Sync email alert' (If) Else - No Actions - (To add one, press 'Action') Sync email alert $iSync is not $iDay.of.Week Then Send Notification to 'dr-apo' content 'Out of Sync' Else - No Actions - (To add one, press 'Action') Page | 238...
Page 262
Thursday On Thu Time is 1:00:00AM Then $iSync = 4 Run Program 'Sync email alert' (If) Else - No Actions - (To add one, press 'Action') Tuesday On Tue Time is 1:00:00AM Then $iSync = 2 Run Program 'Sync email alert' (If) Else - No Actions - (To add one, press 'Action') Page | 239...
Page 263
Wednesday On Wed Time is 1:00:00AM Then $iSync = 3 Run Program 'Sync email alert' (If) Else - No Actions - (To add one, press 'Action') Ever X Weeks: This works the same as the every x days programs but counts weeks instead of days.
Page 264
$iEvery.Thrid.Week Init To $iEvery.Thrid.Week $iEvery.Other.Week Init To $iEvery.Other.Week $iWeek.Counter Init To $iWeek.Counter Else - No Actions - (To add one, press 'Action') Week of Month - No Conditions - (To add one, press 'Schedule' or 'Condition') Then $iWeek.of.Month = $iDay.of.Month $iWeek.of.Month -= 1 $iWeek.of.Month /= 7 $iWeek.of.Month += 1...
Page 265
Year $iDay.of.Year is 1 Then $iYear += 1 $iYear Init To $iYear $sYear = $iYear $sYear Init To $iYear Run Program 'Leap year calculator' (If) Else - No Actions - (To add one, press 'Action') Page | 242...
11.1.2 Canadian Calendar Programs Following is a series of programs to be used for dates. You will need to modify them for the years desired. You may also add any Then or Else functionality required. 11.1.2.1New Year’s Day From 12:00:00AM on 2018/01/01 For 24 hours Then - No Actions - (To add one, press 'Action' )
11.1.2.6St. Patrick’s Day Replace From statement in sample code with the following text: From 12:00:00AM on 2018/03/19 11.1.2.7Good Friday Replace From statement in sample code with the following text: From 12:00:00AM on 2018/03/30 11.1.2.8Easter Monday Replace From statement in sample code with the following text: From 12:00:00AM on 2018/04/02 11.1.2.9St.
11.1.2.14National Aboriginal Day (Northwest Territories, Yukon) Replace From statement in sample code with the following text: From 12:00:00AM on 2018/06/21 11.1.2.15Discovery Day (Newfoundland, Labrador) Replace From statement in sample code with the following text: From 12:00:00AM on 2018/06/25 11.1.2.16The National Holiday of Quebec (Quebec) Replace From statement in sample code with the following text: From 12:00:00AM on 2018/06/25 11.1.2.17Canada Day (Nova Scotia)
11.1.2.22Civic Holiday (Ontario) Replace From statement in sample code with the following text: From 12:00:00AM on 2018/08/06 11.1.2.23Heritage Day (Alberta) Replace From statement in sample code with the following text: From 12:00:00AM on 2018/08/06 11.1.2.24Discovery Day (Yukon) Replace From statement in sample code with the following text: From 12:00:00AM on 2018/08/20 11.1.2.25Labour Day Replace From statement in sample code with the following text:...
11.1.2.30Boxing Day Replace From statement in sample code with the following text: From 12:00:00AM on 2018/12/26 11.1.3 United States Calendar Programs Following is a series of programs to be used for dates. You will need to modify them for the years desired.
11.1.3.5Good Friday Replace From statement in sample code with the following text: From 12:00:00AM on 2018/03/30 11.1.3.6Easter Monday Replace From statement in sample code with the following text: From 12:00:00AM on 2018/04/02 11.1.3.7Emancipation Day Replace From statement in sample code with the following text: From 12:00:00AM on 2018/04/16 11.1.3.8Mother’s Day Replace From statement in sample code with the following text:...
11.1.3.13Columbus Day Replace From statement in sample code with the following text: From 12:00:00AM on 2018/10/08 11.1.3.14Veterans Day Replace From statement in sample code with the following text: From 12:00:00AM on 2018/11/12 11.1.3.15Thanksgiving Replace From statement in sample code with the following text: From 12:00:00AM on 2018/11/22 11.1.3.16Day after Thanksgiving Replace From statement in sample code with the following text:...
The light switch is pressed into the job of 'occupancy detector' i.e. if the light is on it is assumed that the bathroom is occupied. Goals of the program as as follows: • provide a single place to set the timeout value •...
This program is the central location to change the length of the fan run time - in this case it is set to 10 minutes 11.2.1.2Program: MBFanCheck Main Bathroom Fan Check - Please take note of the comment that the program must be disabled Status 'BedAndbath / ~Devices / Main Bathroom Light SW' <...
11.2.1.3Program: MBLightSwOFF Main Bathroom Light Switch Off Control 'BedAndbath / ~Devices / Main Bathroom Light SW' is switched Off And Status 'BedAndbath / ~Devices / Main Bathroom Fan SW' is On Then Stop program 'MBFanSwON' Run Program 'MBFanSwON' (Then Path) Else - No Actions - (To add one, press 'Action') Resets the timer if it is running.
The then action is to stop the timer program and shut down the fan. this action is called by turning the switch off or after a time out when the light is either not turned on or turned off when the fan is running. The goal of this is to ensure that the timer program is stopped whenever the fan is stopped.
Then a program to zero the variable if the off button is pressed: 11.2.2.2Program: MBA Fan - Off Control 'MBA Exhaust Fan' is switched Off Then $sMasterBathFan = 0 Else - No Actions - (To add one, press 'Action') And a control program that will decrement the variable by 1 every 10 minutes and turn the fan off when the variable is 0: 11.2.2.3Program: MBA Fan - Control $sMasterBathFan >...
11.3 Garage Door Programs 11.3.1 Garage Door Notification Program I use a few programs. One to do each job. My control is not connected but lines could be inserted very easily. Here is the 4 hour allowance for a garage door left open calling the one below. 11.3.1.1Program: Garage Door Open.carHome 'Garage / Garage Door.closed' Status is Off And $sTag1.outOfRange is $cFALSE...
Here is one for when I first get home or the above program calls to notify us. 11.3.1.2Program: Garage Door Open.carGone 'Garage / Garage Door.closed' Status is Off And $sTag1.outOfRange is $cTRUE And $sHouse.occupied is $cFALSE Then Wait 5 minutes Enable Program 'Garage Door Closed.notify' Send Notification to 'Text Larry' content 'Garage Door Open' Send Notification to 'Text Jackie' content 'Garage Door Open'...
11.3.1.3Program: Garage Door Open.home 'Garage / Garage Door.closed' Status is not On And $sHouse.occupied is $cTRUE Then Wait 20 seconds $BufCornerLamp.level = 'Gathering Room / ML2 / BufCornerLamp' Status % $BufCornerLamp.colour = 'Gathering Room / ML2 / BufCornerLamp' Color Set 'Gathering Room / ML2 / BufCornerLamp' to 100%, color '$cZ.RED.ML Index' Repeat 400 times Set 'Gathering Room / ML2 / BufCornerLamp' On Wait 2 seconds...
I have discovered that I can let ISY do a lot of the work with it's trigger based engine. Insteon protocols are the slowdown with HA not the ISY CPU. 11.4 Irrigation Timer Programs 11.4.1 Auto Irrigation Program This runs irrigation based on the WeatherBug's Rain Today information. (Universal Devices) Page | 261...
11.4.1.1Program: Var_RainInPast36Hours This is an empty flag program. It is set and managed by two programs Weather_RainCountdown and Weather_RainFall. - No Conditions - (To add one, press 'Schedule' or 'Condition') Then - No Actions - (To add one, press 'Action') Else - No Actions - (To add one, press 'Action') 11.4.1.2Program: Weather_RainCountdown...
11.4.1.3Program: Weather_RainFall It restarts the countdown each time WeatherBug reports that Rain Today is greater than zero inches: Module 'Climate' Rain Today is not 0 " Then Stop program 'Weather_RainCountdown' Run Program 'Weather_RainCountdown' (Then Path) Else - No Actions - (To add one, press 'Action') 11.4.1.4Program: Var_TempBelow40 This is an empty flag program.
11.4.1.5Program: Weather_TempBelow40Check Checks the temp and updates the flag program. This program is updated each time the WeatherBug module updates. Module 'Climate' Temperature < 40 °F Then Run Program 'Var_TempBelow40' (Then Path) Else Run Program 'Var_TempBelow40' (Else Path) 11.4.1.6Program: Var_TempAbove90 This is an empty flag program.
11.4.1.7Program: Weather_TempAbove90Check Checks the temp and updates the flag program. This program is updated each time the WeatherBug module updates at 3 pm when it is usually the hottest part of the day. This temp will be the previous day so there is some margin of error. Module 'Climate' Temperature >...
11.4.1.9Program: Run_IrrigationStations The Var_TempAbove90 program is used as a condition for my irrigation program as follows: Program 'Var_TempAbove90' is False Then Set 'Station1 Front Lawn1' On Wait 8 minutes Set 'Station2 Front Lawn2' On Wait 8 minutes Set 'Station3 Back Lawn1' On Wait 60 minutes Set 'Station4 Back Lawn2' On Wait 60 minutes...
Page 290
Set 'Station1 Front Lawn1' On Wait 10 minutes Set 'Station2 Front Lawn2' On Wait 10 minutes Set 'Station3 Back Lawn1' On Wait 90 minutes Set 'Station4 Back Lawn2' On Wait 90 minutes Set 'Station5 Front Drip1' On Wait 90 minutes Set 'Station6 Front Drip2' On Wait 90 minutes Set 'Station7 Back Drip1' On...
• Weather_Temp_Below_40_Degrees - checks if its below 40 degrees at set start time (11pm), holds off runs if its too cold. • Weather_Temp_High_Above_70_Degrees - checks if the high temp for the day is above 70 degrees, for adding 7 day a week runs if its hot weather. (Universal Devices) Page | 268...
11.4.2.3ISY Programs File AutoIrrig.zip - http://www.universal-devices.com/programs/AutoIrrig.zip This file needs unzipping first then loaded from the programs tab. See the Wiki section on the programs tree view for more info on importing programs. 11.4.2.4Folder: Auto 11.4.2.4.1Auto Scheduled Timer -M-W-F- On Mon, Wed, Fri Time is 11:00:00PM And $Manual_Currently_Running is 0 And $Weather_Rained_Last_36_Hours is 0...
Page 294
11.4.2.4.3Weather Rain Delay 36 Hours - No Conditions - (To add one, press 'Schedule' or 'Condition') Then $Weather_Rained_Last_36_Hours = 1 Wait 36 hours $Weather_Rained_Last_36_Hours = 0 Keep the rain status for 36 hours then reset it. 11.4.2.4.4Weather Rain Today Check Module 'Climate' Rain Today is not 0 "...
11.4.2.4.6Weather Temp High Above 70 Degrees Module 'Climate' Temperature High > 70 °F Then $Weather_Temp_High_Above_70_Degrees = 1 Else $Weather_Temp_High_Above_70_Degrees = 0 This is in a separate program to avoid having the temperature event trigger a false start of the irrigation system. 11.4.2.5Folder: Manual 11.4.2.5.1Any "Irrigation All"...
Page 296
11.4.2.5.2Manual Currently Running Reset Program 'Any "Irrigation All" Stations On' is False Then $Manual_Currently_Running = 0 This is a safety to make sure manual mode does not get left on. 11.4.2.5.3Manual Trigger Fast Off Control 'Inside / Inside RL4 Irrigation On' is switched Fast Off Then Run Program 'Stations All Off' (Then Path) Listens for manual remote control to turn the irrigation system off.
Page 297
11.4.2.5.5Manual Trigger Station2 Control 'Inside / Inside RL4 Irrigation On' is switched Fast On And $Irrigation_Station is 1 Then $Manual_Currently_Running = 1 Run Program 'Station2 Timer' (Then Path) 11.4.2.5.6Manual Trigger Station3 Control 'Inside / Inside RL4 Irrigation On' is switched Fast On And $Irrigation_Station is 2 Then $Manual_Currently_Running = 1...
Page 298
11.4.2.5.8Manual Trigger Station5 Control 'Inside / Inside RL4 Irrigation On' is switched Fast On And $Irrigation_Station is 4 Then $Manual_Currently_Running = 1 Run Program 'Station5 Timer' (Then Path) 11.4.2.5.9Manual Trigger Station6 Control 'Inside / Inside RL4 Irrigation On' is switched Fast On And $Irrigation_Station is 5 Then $Manual_Currently_Running = 1...
11.4.2.5.11Manual Trigger Station8 Control 'Inside / Inside RL4 Irrigation On' is switched Fast On And $Irrigation_Station is 7 Then $Manual_Currently_Running = 1 Run Program 'Station8 Timer' (Then Path) 11.4.2.5.12Manual Trigger Station9 All Off Control 'Inside / Inside RL4 Irrigation On' is switched Fast On And $Irrigation_Station is 8 Then Run Program 'Stations All Off' (Then Path)
Page 300
11.4.2.6.3Station1 Timer - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Run Program 'Irrigation Started' (Then Path) Set 'Irrigation / Irrigation1 Front Plants' On $Irrigation_Station = 1 Wait 90 minutes Run Program 'Station2 Timer' (Then Path) 11.4.2.6.4Station2 Timer - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Set 'Irrigation / Irrigation2 Empty' On...
Page 301
11.4.2.6.5Station3 Timer - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Set 'Irrigation / Irrigation3 Back Daylilies' On $Irrigation_Station = 3 Wait 90 minutes Run Program 'Station4 Timer' (Then Path) 11.4.2.6.6Station4 Timer - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Set 'Irrigation / Irrigation4 Back Fruit Trees' On $Irrigation_Station = 4...
Page 302
11.4.2.6.7Station5 Timer - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Set 'Irrigation / Irrigation5 Back Maple Trees' On $Irrigation_Station = 5 Wait 90 minutes Run Program 'Station6 Timer' (Then Path) 11.4.2.6.8Station6 Timer - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Set 'Irrigation / Irrigation6 Back Lawn1' On $Irrigation_Station = 6...
Page 303
11.4.2.6.9Station7 Timer - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Set 'Irrigation / Irrigation7 Back Lawn2' On $Irrigation_Station = 7 Wait 10 minutes Run Program 'Station8 Timer' (Then Path) 11.4.2.6.10Station8 Timer - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Set 'Irrigation / Irrigation8 Back Lawn3' On $Irrigation_Station = 8...
Page 304
Stop program 'Station3 Timer' Stop program 'Station4 Timer' Stop program 'Station5 Timer' Stop program 'Station6 Timer' Stop program 'Station7 Timer' Stop program 'Station8 Timer' Set 'Irrigation / Irrigation1 Front Plants' Off Set 'Irrigation / Irrigation2 Empty' Off Set 'Irrigation / Irrigation3 Back Daylilies' Off Set 'Irrigation / Irrigation4 Back Fruit Trees' Off Set 'Irrigation / Irrigation5 Back Maple Trees' Off Set 'Irrigation / Irrigation6 Back Lawn1' Off...
KeypadLinc. Program 2a is to decide if the LED should be on or off then set it accordingly. Program 2b is the Scene check that checks for any light being on (Universal Devices) Page | 282...
Page 306
in the Scene. This Scene check program is separate so it can be used in other programs as well. 11.5.1.3.1Program #1: Family Main (A) Evening is Switched This is an optional program for if you have the KPL buttons in non-toggle mode so it may be better to just run with them in toggle mode and not use this.
11.5.1.3.3Program #2b: Any “Family Evening Scene” Devices On Status 'Dining / Dining Hutch' is not Off Or Status 'Family / Family Desk Spot' is not Off Or Status 'Family / Family Main (load)' is not Off Or Status 'Family / Family Screen' is not Off Or Status 'Kitchen / Kitchen Island' is not Off Or Status 'Kitchen / Kitchen Main' is not Off Or Status 'Kitchen / Kitchen Main (slave)' is not Off...
11.5.2 How to Make Timed Button Press Program This will give you a starting point. Integer variable PressCount is required. Program TimedPress counts the number of times KeypadLinc button B is pressed with less than 5 seconds between each button press. KeypadLinc button B is set for non-toggle On mode so each press generates an On command.
11.5.2.2Program: TimedPress3 - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Send X10 'H5/On (3)' Else - No Actions - (To add one, press 'Action') 11.5.3 KeypadLinc Combination Lock Lighting controls are supposed to make life a bit EASIER, but for kids sometimes a bit tougher is more fun.
Though this can be done with other automation controllers/software I'm sure, I'm doing it on my ISY. Below are the 2 programs I'm using: 11.5.3.1Program: LAMP1 Status 'KeypadC' is On And Status 'KeypadH' is On And Status 'KeypadC' is not Off And Status 'KeypadH' is not Off Then Set 'Lamp1' On...
11.5.4 Using KPL KeyPad Triggers for Multiple Combination Locks The forum has a great article on setting up a KeypadLinc as a combination lock. The URL of this document is: https://forum.universal-devices.com/topic/16135-using-kpl-keypad- triggers-for-a-multiple-combination-locks/ I have included this document below: I use this series of programs as a combination keypad to turn on and off my armed/away mode.
If this is used where people may be watching it is recommended that you use all the keys as the keypad likes to flash only the operated keys giving away the keys used, but not the sequence. 11.5.4.1Program: Key.A Control 'Mudroom / MudRm Button.A' is switched On Or Control 'Mudroom / MudRm Button.A' is switched Off Then $sKeypress_sequence *= 10...
11.5.4.2Program: Key.D Control 'Mudroom / MudRm Button.D' is switched On Or Control 'Mudroom / MudRm Button.D' is switched Off Then $sKeypress_sequence *= 10 $sKeypress_sequence += 4 <----- unique number for each key Wait 1 second Run Program 'Key.D' (Else Path) Else - No Actions - (To add one, press 'Action') The second set of program(s) is triggered by the state variable $sKeypress_sequence.
11.5.4.3Program: Arm Keypad Combo $sKeypress_sequence is $cARM.COMBO <----- predefined numeric sequence Then Run Program 'Armed Mode Toggle' (If) <----Replace with your program Wait 1 second $sKeypress_sequence = 0 Else Wait 4 seconds $sKeypress_sequence = 0 <----- 4 second pause causes a reset/start over 11.6 Leak Sensor Programs 11.6.1 Program for Multiple Sensors...
11.6.1.2Setup – First Leak Sensor Add the leak sensor device to the ISY, for this example we'll call it Kitchen Sink Create a state variable called sLeakKitchenSink; set Init = 1 and Value = 1 Create a program called KitchenSink - Variable Control 1: Status 'Leak Sensors / Kitchen Sink-Wet' is On Then $sLeakKitchenSink = 9...
Create a program called KitchenSink - Variable Control 3: $sLeakKitchenSink is 1 And Time is Last Run Time for 'KitchenSink - Variable Control 2' + 26 hours Then Wait 5 seconds $sLeakKitchenSink = 3 Else - No Actions - (To add one, press 'Action') Note: For ease of explanation, assume a second leak sensor named "Storage Room"...
Page 317
Create a custom notification called "Leak Sensor Problem". This is the content I use: A problem has been detected with a leak sensor. Details below: Kitchen Sink: (((Use "add variable" to add your sLeakKitchenSink variable here))) Storage Room: (((Use "add variable" to add your sLeakStorageRoom variable here))) ---Status Key--- 1 = Heartbeat OK (normal status)
Page 318
Create a program called Leak Startup and ENABLE RUN AT START-UP $iStartUp is 0 Then Run Program 'KitchenSink - Variable Control 2' (Then Path) Run Program 'StorageRoom - Variable Control 2' (Then Path) Wait 5 seconds $iStartUp = 1 Else - No Actions - (To add one, press 'Action') ** Set to run at start-up ** Create a program called Leak Sensor Activation...
Create a program called Leak Sensor Problem Time is 9:00:00AM Or Time is 6:00:00PM And ( $sLeakKitchenSink is not 1 Or $sLeakStorageRoom is not 1 Then Send Notification to 'Brian' content 'Leak Sensor Problem' Else - No Actions - (To add one, press 'Action') Test leak sensor in "wet"...
Folder Conditions for 'Everyday'’ Add conditions to limit when programs in this folder are allowed to run. From Sunrise Sunset (same day) Then Allow the programs in this folder to run. If it becomes dark during the day this program will turn the lights on. (Universal Devices) Page | 297...
11.7.1.2Program: Stormy Day Module 'Climate' Light < 5 And Program 'Wait to Change Outside Lights' is True Then Run Program 'Wait to Change Outside Lights' (Else Path) Else - No Actions - (To add one, press 'Action') When the sky turns dark Only runs if sky was light during last check This program will turn the lights off when it becomes bright again.
11.7.1.4Wait to Change Outside Lights - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Wait 5 minutes Set Scene 'Outside Lights - Stormy Day' Off Else Wait 5 minutes Set Scene 'Outside Lights - Stormy Day' On Bright Day = True Dark Day = False Each morning to turn the lights Off you should use the Wait to Change Outside Lights...
This is less than satisfactory for several reasons. First, rather than having the on time controlled entirely by the motion sensor, one may wish to allow ISY to determine the timeout, thereby allowing the on time to be changed programmatically: (Universal Devices) Page | 300...
11.8.1.2Program #2 - Motion 2 – Enabled Control 'Main Bath Motion.1-Sensor' is switched On And Control 'Main Bath Motion.1-Sensor' is not switched Off Then Set 'Main Bath Lights' On Else Wait 4 minutes Set 'Main Bath Lights' Off Here the Wait time occurs after the motion sensor has timed out and sent the Off command, so if the motion sensor's timer is set to the default of one minute, then the total timeout period of this program will be five minutes.
11.8.1.4Program #4 - Main Bath Motion Timer – Enabled Status 'Main Bath Motion.1-Sensor' is Off Then Wait 4 minutes Set 'Main Bath Lights' Off Else - No Actions - (To add one, press 'Action') Here program 3 turns the lights on in response to motion, if they are not already on. When the motion sensor stops sensing motion, times out, and sends the Off command, its status becomes False and program 4 begins the countdown to turning the lights off.
11.8.1.6Program #6 - Main Bath Motion Timer – Enabled Status 'Main Bath Motion.1-Sensor' is Off And Program 'Main Bath Motion Timer Enable' is True Then Wait 4 minutes Set 'Main Bath Lights' Off Else - No Actions - (To add one, press 'Action') 11.8.1.7Program #7 - Main Bath Motion Timer Enable –...
Notice also that when the flag is made True (the Then is executed), the flag program sets itself to run at startup, and when the flag is made False (the Else is executed), the program sets itself to not run at startup. This is the other time (mentioned in the previous paragraph) when a program may run even though the Enabled box is not checked.
Earlier I mentioned changing the timeout programmatically, and in fact a two-level timing paradigm is one answer to the previous question. For example, I have an interior (no windows) main bathroom which is completely covered by the motion sensor, except for the bath/shower, because the bath/shower has doors which the sensor cannot see through.
11.8.1.10Program #10 - Main Bath Motion Timer – NOT Enabled Status 'Main Bath Contact.1' is Off Then Wait 40 minutes Run Program 'Main Bath Motion Timer' (Else Path) Else Wait 5 minutes Set Scene 'sMain Bath All Slow' Off When the motion sensor status becomes False, the re-trigger program (program 9) starts the timer program (program 10).
Page 330
This slow-dim-to-off is a technique I use widely where there are motion sensors/timers turning lights off. In my master bedroom and ensuite I don't use motion sensors. Rather, there is a KeypadLinc in a pedestal on either side of the bed. Each has a button which causes both the lamp on the corresponding side of the bed, and the ensuite lights to do a slow fade up which is easy on the eyes in a dark room, to a low level sufficient for the purpose at hand but not bright enough to wake someone.
There is a third possibility, and that is to remember the door status just as we remember the enable flag: 11.8.1.11Program #11 - Main Bath Door Status Closed – NOT Enabled - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Set Program 'Main Bath Door Status Closed' To Run At Startup Else...
Finally, we modify program 10 to test the flag: 11.8.1.13Program #13 - Main Bath Motion Timer – NOT Enabled Program 'Main Bath Door Status Closed' is True Then Wait 40 minutes Run Program 'Main Bath Motion Timer' (Else Path) Else Wait 5 minutes Set Scene 'sMain Bath All' Off One question we have not addressed to this point is what should happen if the door opens...
Here, each time the door status changes, the re-trigger program (program 9) is called. If the motion status is On, or the enable flag is False, the timer will be stopped. Otherwise, the timer program (program 13) will be called again, will reevaluate the door status, and initiate the appropriate time interval.
Putting it all together, a complete program group (contained within a f_Main Bath Door/Motion folder for organizational purposes) may look like this: 11.8.1.17Program Main Bath Door Status Change – Enabled Control 'Main Bath Contact.1' is switched Off And Control 'Main Bath Contact.1' is not switched On Then Run Program 'Main Bath Door Status Closed' (Then Path) Run Program 'Main Bath Motion Re-Trigger' (If)
11.8.1.19Program Main Bath Door Status Closed Fan On Timer – Enabled Program 'Main Bath Door Status Closed' is True And Status 'Main Bath Lights' is not Off Then Wait 5 minutes Set 'Main Bath Fan' On Else - No Actions - (To add one, press 'Action') 11.8.1.20Program Main Bath Motion Low Battery –...
11.8.1.21Program Main Bath Motion On – Enabled Control 'Main Bath Motion.1-Sensor' is switched On And Status 'Main Bath Lights' is not On Then Set Scene 'sMain Bath Lights' On Else - No Actions - (To add one, press 'Action') 11.8.1.22Program Main Bath Motion Re-Trigger – Enabled Status 'Main Bath Motion.1-Sensor' is Off And Program 'Main Bath Motion Timer Enable' is True And (...
11.8.1.23Program Main Bath Timer – NOT Enabled Program 'Main Bath Door Status Closed' is True Then Wait 40 minutes Run Program 'Main Bath Motion Timer' (Else Path) Else Wait 5 minutes Set Scene 'sMain Bath All Slow' Off 11.8.1.24Program Main Bath Motion Timer Enable – NOT Enabled - No Conditions - (To add one, press 'Schedule' or 'Condition') Then Set Program 'Main Bath Motion Timer Enable' To Run At Startup...
11.8.1.25Program Main Bath Motion Timer Enable/Disable – Enabled Control 'Main Bath Lights' is switched Fast On And Control 'Main Bath Lights' is not switched Fast Off Then Run Program 'Main Bath Motion Timer Enable' (Else Path) Else Run Program 'Main Bath Motion Timer Enable' (Then Path) This is just one of many possible approaches to automating bathroom lights and fans.
Unfortunately, I often need to put in late nights. To account for times I might be in the office outside of normal work hours, I also added this program to check the status of lights. If any of the lights in my office are on, this program is true: 11.9.1.2Program: Office Light Status Status 'OfficeLight1' is not Off Or Status 'OfficeLight2' is not Off...
using the AC again. I prefer to make that switch manually but would like to automate the rest as much as possible. All programs check to see if the thermostat is in COOL or HEAT mode, so if I'd like I can switch the thermostat to OFF or one of the PROGRAM modes to avoid the automation I've setup on the ISY.
For the cooler months when the thermostat is in HEAT mode, I have the following program: 11.9.1.5Program: Office Heat Vacant Status 'OfficeThermostat' is Mode Heat And Program 'Office Work Hours' is False And Program 'Office Light Status' is False And Status 'OfficeThermostat' > 65° (Setpoint) Then Wait 2 minutes Set 'OfficeThermostat' 65°...
Then Wait 2 minutes Set 'OfficeThermostat' 76° (Cool Setpoint) Else - No Actions - (To add one, press 'Action') Here is the HEAT version for cooler months: 11.9.1.7Program: Office Heat Occupied Status 'OfficeThermostat' is Mode Heat And ( Program 'Office Work Hours' is True Or Program 'Office Light Status' is True And Status 'OfficeThermostat' <...
11.10 Utility Programs 11.10.1 Averaging Using Only the Best Values This is a program I created to stabilize inputs from more than one source. Any "wild" sensor inputs get cut out of the calculation. 11.10.1.1Operation • the last known working average is kept for comparison purposes during the next iteration.
This is my latest using NodeLink input from the Ecobee current weather reporting. 11.10.1.4Program: Sync.Temp.out.average $sTag3.temp < 45 Or 'Dining Room / GathRm Stat / Current Weather' Temperature <= 45.0° Or $sWC8.outTemp.raw < 450 Then $TempAvg.sum = 0 $TempAvg.contrib.cnt = 0 // sum inputs within dev.max of past average and keep count // start with sensor 1, if within deviation allowed $TempAvg.deviation = $sWC8.outTemp.raw...
Page 345
$TempAvg.deviation = 'Dining Room / GathRm Stat / Current Weather' Temperature ° $TempAvg.deviation -= $sHouse.outTemp Repeat While $TempAvg.deviation < 0 $TempAvg.deviation *= -1 Repeat While $TempAvg.deviation <= $cTEMPAVG.DEV.ALLOWED $TempAvg.sum += 'Dining Room / GathRm Stat / Current Weather' Temperature ° $TempAvg.contrib.cnt += 1 $TempAvg.deviation = 999 Repeat 1 times...
This is Alarm.level = 0. The "no alarm" state and resting position all levels will reset to when done their "thing". 11.10.2.1Program: Alarm level 0 $sAlarm.level is 0 Then Set 'Mudroom / MudRm Beeper' Off Set 'Utility Room / Util Beeper' Off Wait 1 second Run Program 'Alarm level 0.1' (If) Else...
$sALarm.Level = 1 gives a short beep on a few buzzlincs to alert the homeowner there is something to be looked at, and a notification should have been sent from the monitoring program. 11.10.2.3Program: Alarm level 1 $sAlarm.level is 1 Then Set 'Mudroom / MudRm Beeper' On Set 'Utility Room / Util Beeper' On...
Page 349
Wait 30 seconds Set 'Mudroom / MudRm Beeper' Off Set 'Utility Room / Util Beeper' Off $sAlarm.level = 0 Else - No Actions - (To add one, press 'Action') Level 2, longer in-house notifications only Page | 326...
$Alarm.level = 3. Same as level 2 but with remote notifications that beepers are going in the house. 11.10.2.5Program: Alarm level 3 $sAlarm.level is 3 Then Set 'Mudroom / MudRm Beeper' On Set 'Utility Room / Util Beeper' On Send Notification to 'Text Larry' content 'House Beeping' Wait 1 second Send Notification to 'eMail Larry' content 'House Beeping' Wait 30 seconds...
Level 4, short duration, neighbourhood, and remote notifications, $Alarm.level = 5. Long duration, beepers, flash all inside and outside lights with noise maker, send notifications that lights are flashing 11.10.2.7Program: Alarm level 5 $sAlarm.level is 5 Then Set 'Mudroom / MudRm Beeper' On Set 'Utility Room / Util Beeper' On Send Notification to 'Text Larry' content 'House Alarming ' Send Notification to 'Text Jackie' content 'House Alarming '...
Page 353
Else - No Actions - (To add one, press 'Action') Level 5, Long duration, neighbourhood, and remote notifications. $Alarm.level = 4 or 5 notification text sample SUBJECT: HOUSE ALARMING! ${sys.date} ${sys.time12} Lights flashing and noise makers going in house! Page | 330...
11.10.3 Countdown Timer When it's hot, I like to go to sleep with the whole house fan on. But there are nights I want it to stay on for a long time, and others when I want it on for just a bit. My need is to control a whole-house fan.
Three program entry points are simple to follow; 11.10.3.1Program: Fan Increment If ;When either button is double-tapped Control 'Upstairs / HouseFan' is switched Fast On Or Control 'Upstairs / HouseFan' is switched Fast Off Or Control 'Downstairs / HouseFan' is switched Fast On Or Control 'Downstairs / HouseFan' is switched Fast Off Then Set Scene 'House Fan' On...
11.10.3.3Program: Fan Stop Now Control 'Upstairs / HouseFan' is switched Off Or Control 'Downstairs / HouseFan' is switched Off Then $Fan_Minutes = 0 Set Scene 'House Fan' Off Stop program 'Fan Decrement' Else - No Actions - (To add one, press 'Action') Page | 333...
12 INSTEON Notes 4344 12.1 INSTEON Basics 12.1.1 What is a Device? Devices are the basic building blocks of your home automation system. These are the things you want to control, like switches, lamp modules, fan modules, water sensor modules, etc. Normal control of devices in a home is done with mechanical switches, that the user has to turn on or off, or adjust ramp rates.
For example, a lamp module with a table lamp attached would likely be a Responder to the scene. When the scene is turned on, the lamp module would turn on. When the scene is turned off, the map module would turn off. Responders are colored blue within a scene.
12.1.5 What is a Scene? Scenes are simply a collection of links from a controller to one or more responders. For example. in the following diagram, Device 1 controls devices 2, 3, & 4: Figure 196: Scene example We would call this the "Device 1 Scene." A Responder can be the member of numerous scenes, so Responder 4 may also be turned on by the Device 5 Scene.
12.1.6 What is a Group? A Group is a set of logical Links between INSTEON devices. A Link is an association between a Controller and a Responder or Responders. Controllers originate Groups, and Responders join Groups. Devices in a group share all the same settings, for example on-level, ramp rates, etc. This keeps all group members synchronized.
Figure 199: Three Group example 12.2 Helpful Information on INSTEON and ISY First off, some nomenclature. Every Insteon device has an address - in the format aa.bb.cc where the letters correspond to Hex number 0-F. This system allows for over 16 million different addresses and I doubt Smarthome has sold that many devices but at some point they will repeat.
Page 362
The basic Insteon command set that concerns us - outside of the bright and dim commands are on, fast on, off, and fast off. Fast on and Fast off are simply double-presses of an on or off. Insteon gives you some extra flexibility in the way it handles them. On turns the device on to the set dim level at the set ramp rate.
Page 363
'extended messages' - this makes Insteon suitable for high-security applications such as door locks or security systems. So, when you link devices you create the controller link in the controller link table and then you go to the responder and create the responder link to complete the linkage. I should mention that one of the benefits of ISY is that it takes care of creating both sides of the link for you - the controller record in the controller and the responder record in the responder.
Page 364
Let's look at the links a little more 'visually'. Essentially in each device there are two tables that look like below. There is actually a lot more info than this but what's here will suffice for 99% of what we need to do. Note that when you see the Ramp Lvl - it's a number from 0 to 31 for a range of instantaneous to about 9 minutes.
Page 365
Device BB.BB.BB Controller links table (what I control) Link#..My grp #..Resp address..Resp button # Responder links table (what controls me) Link#..My btn #..Ctrlr address..Ctrlr Grp#..Ramp Lvl..Dim Lvl 1....1....AA.AA.AA...1....31....255 To complete the '3-way' control the links tables change and look like this: EXAMPLE 2 Device AA.AA.AA Controller links table (what I control)
Page 366
Device BB.BB.BB Controller links table (what I control) Link#..My grp #..Resp address..Resp button # 1....1....AA.AA.AA....1 Responder links table (what controls me) Link#..My btn #..Ctrlr address..Ctrlr Grp#..Ramp Lvl..Dim Lvl 1....1....AA.AA.AA...1....31....255 So here we have the simplest sort of Insteon scenario. Of course many of us use KPL's to control other devices.
Page 367
Device BB.BB.BB (switchlinc) Controller links table (what I control) Link#..My grp #..Resp address..Resp button # 1....1....AA.AA.AA....3 Responder links table (what controls me) Link#..My btn #..Ctrlr address..Ctrlr Grp#..Ramp Lvl..Dim Lvl 1....1....AA.AA.AA...3....31....255 In KPL's there is an additional kind of link many of us use - the link WITHIN the KPL - for example using button H as an 'all off' turning off everything on the same KPL.
Page 368
Well - a scene is merely a bunch of devices that all have responder records with matching controller addresses and controller groups. This means that they are all prepared to respond to the same group command from the same controller address. The power of the scene is that because the dim level and ramp rate are set in the responder link table a single controller can turn multiple devices on to varying levels of brightness at varying rates.
Page 369
signals. Why does it send nothing? Well - what would it send? There are no records in its controller link table! It has nothing to send to anyone so it just sits there quietly. So ISY linking your device to the PLM makes it visible on the network. Secondly - one of the key features of the ISY is to be able to know - at a glance - what devices are on or off or at what dim level.
Page 370
changes. When it sees the change, it matches the PLM change against its internal tables and you will instantly know the status of your devices. Without using the PLM linkage ISY would have no way of knowing what the status of your system was. Because Insteon commands only hop until they find their destination ISY would not be privy to every command issued on the network.
Figure 200: Launching the Linking Command Figure 201: Select the Linking Mode Figure 202: Answer the Warning 12.3.2 Spidering While Removing Your Existing Links If you are new to the ISY and want to keep your existing devices but clear out your existing links, then spidering your network with removing your links is what you’re looking for.
Page 373
• Select "Add devices found in links and remove existing links" which puts it into spider mode • OK the popup window which warns of the lengthy time it might take • Go to one of your devices with a big scene linked to it, and hold the button down until it goes into linking mode •...
• Expand the tree to your ‘My Lighting’ • Right click on a device and select properties • In this window you can add details to each device for the spreadsheet. Figure 206: Select Properties (Universal Devices) Page | 351...
Figure 207: Device Properties 12.4.2 Outputting the Table The ISY can save a html file with your INSTEON network topology then automatically launch it in the web browser. • Log into your ISY. • Click on the pulldown "Tools --> Generate Topology" •...
Page 376
Figure 209: Save Topology File Page | 353...
Figure 210: Topology Table 12.4.3 Viewing your Network XML File in Excel (Workaround) All the attributes of your network for the ISY are stored in an xml file on your ISY. You can access this XML file by pointing your web browser to the file. You can take this one step further and open it with Excel’s built in reader.
The use of a stacked AccessPoint can improve Insteon signal strength to enable the PLM to better receive and send signals. Many users have reported that this is an effective solution. It may help to add this as an (Universal Devices) Page | 355...
ISY. I wanted to provide a few points that you may find helpful in troubleshooting communication issues to your INSTEON devices from the ISY. We tend to look to noise at the culprit when things start to become intermittent with device communication. (Universal Devices) Page | 356...
(at the device), then - and in all likelihood - the issue is PLM related and specifically link records for that device does not exist in the PLM. Since PLMs have limited capacity for link records (about 2000 but they stop sending change of state after about 900), it's always best (Universal Devices) Page | 357...
Page 381
to plan your installation ahead of time and estimate the number of links your PLM is going to have. If this issue has surfaced only after replacing a PLM, please follow the instructions here: http://wiki.universal-devices.com/index.php?title=ISY-99i/ISY- 26_INSTEON:File_Menu#Replace_Modem_.28PLM.29 If you have ever clicked on File | Delete Modem, then you must have a good backup from prior to this operation, do a File | Restore ISY, and then followed by File | Restore Modem (PLM).
• If you still get the Safe Mode dialog, then try pushing up the pins inside the RJ45 on the PLM (perhaps they are not making good contact), plug the cable back, reboot ISY, and then login to the Admin Console (Universal Devices) (Universal Devices) Page | 359...
ISY. This PLM interfaces signals on the power-line as well as radio frequency. The PLM is connected to the ISY-99i using a CAT5 ethernet cable. The ISY-26 is connected with an RJ-45 to Serial cable. (Universal Devices) Page | 360...
13.4 EZI/O Devices (SimpleHomeNet) Due to variations in firmware on SimpleHomeNet devices, some units (especially older firmware) may not work well with the ISY. Symptoms include the ISY not being notified of sensor state changes. (Universal Devices) Page | 361...
Off. You have to set the timeout value at least as large as the longest time you plan to have that particular zone on. Otherwise the timeout value will turn off the zone before you want it to. Figure 212: EZFlora ISY Options (Universal Devices) (footnote continued) Page | 362...
Figure 214: Add X10 Device to EZX10RF Step 8 should read: • 8. Click and hold the EZX10RF Set button for 4 seconds to finish the process. The led should return to a steady dim glow. (Universal Devices) (Universal Devices) (footnote continued) Page | 363...
Low Scene ▪ Set the Low button as Controller ▪ Set all other buttons as Responders ▪ The FL - Motor will be automatically set as a Responder • Configure the 4 scenes as follows (Universal Devices) Page | 364...
Page 388
o High Scene ▪ Select the High Scene in the network tree ▪ Using the sliders in the panel, set the levels for each button and the FL - Motor for this scene • High Button – 100 • Fanlinc - High •...
Off command is received. • Momentary: Both - On and Off both cause the relay to close momentary. 13.11.1 Linking an I/OLinc - 2450 Linking an I/OLinc is the same as for most other Insteon devices. (Universal Devices) Page | 366...
13.11.1.1I/OLinc Options Figure 215: I/OLink Options • Momentary hold time (10th of seconds) - Sets the length of time the relay will close when Momentary is selected. The Save button must be pressed to write the change to the I/OLinc. •...
• In the Garage Door Relay scene select each controller and be sure the On Level in the view pane is set to 100%. Also, set the On Level for the scene itself to 100%. (Universal Devices) Page | 368...
Page 392
Figure 217: On Level • In the Garage Door Sensor scene select each KeypadLinc controller and click the Button Toggle Mode option in the view pane. Set the toggle mode for only the button used in the scene to Non-Toggle On. Repeat for all of the controllers. Figure 218: Confirm Toggle Mode If you wired the sensor according to the directions provided with the kit, you used the black and green wires from the reed switch.
Page 393
of the garage door status until you reprogram the I/OLinc. As this can happen often, I would highly recommend that you use the RED and BLACK wires from the reed switch and NOT the Green wire (NC or Normally Closed reed switch operation). Figure 219: Confirm Timeout Figure 220: Confirm Momentary Hold Time See Linking an I/O Linc for more information about these options.
• Tap IRLinc Set button once (to always send an on), or twice (to always send an off) o Blue LED will continue blinking • On the ISY, click on Ok to link the learned button to ISY o Blue LED will return to on as normal after ISY completes linking (Universal Devices) Page | 371...
About 20 seconds after releasing the Set button, blue LED will flash twice to indicate a successful reset o Note: Blue LED may or may not be on during reset 13.13 IRLinc Transmitter 13.13.1 Add Button to IRLinc Transmitter – 2411T Figure 222: Add Button to IRLinc Transmitter (Universal Devices) Page | 372...
• Party, Romantic, Dinner, Lunch, and Breakfast Buttons 13.14.1.1.2Opening Mutually Exclusive Groupings Window To make two or more buttons Mutually Exclusive, simply drag and drop them into a Mutually Exclusive Button Group. • Log into your ISY. (Universal Devices) Page | 373...
Page 397
• Under the Main Tab expand the Tree "Network --> My Lighting -->" and select any one of your KeypadLinc’s button nodes • Along the bottom select the "Mutually Exclusive Buttons" GUI button Figure 223: Network Tree Open to KeypadLinc Figure 224: Mutually Exclusive Buttons GUI Button 13.14.1.1.3Configuring Mutually Exclusive Groupings •...
Page 398
Figure 225: Before Grouping Figure 226: After Grouping 13.14.1.1.4Resetting Mutually Exclusive Groupings When you need to remove Mutually Exclusive Groupings there is a handy "Reset" button on the bottom of the GUI which saves you the effort of dragging all the devices out of the group.
Page 399
• In the Mutually Exclusive Groupings Window click on the Reset button to clear any groupings, the window will exit and clear the device of any groupings 13.14.1.1.5Button Toggle Mode Button Toggle Mode sets the button state to toggle from ON to OFF and vice versa, or stay always ON, or always OFF.
Once the light blinks rapidly, then quickly click and release the set button one more time o You have to be close (within 10 to 20 ft) of a dual band or RF device • Click OK. (Universal Devices) Page | 377...
“2420M INSTEON Motion Sensor” from the Device Type list. Since the Motion Sensor is a battery-saving RF device, you must put the device into linking mode to add it to the ISY (and make any changes to the device, such as adding/removing (Universal Devices) Page | 378...
• Darkness Sensitivity - The higher the value, the darker it needs to be for the unit to see night. Default = 35. Range = 0 - 255. 13.18.1 Link a Motion Sensor – 2420M 13.18.1.1Motion Sensor Linking • Menu - Link Management/Link a Motion Sensor (Universal Devices) Page | 379...
Page 403
Figure 231: Motion Sensor Linking • Press and Hold the Set button for 5 seconds to put the Motion Sensor in linking mode as per the requester. • Enter the address in the next requester. o The Motion Sensor address is on a sticker inside the battery compartment. Figure 232: Motion Sensor Input •...
o Motion Sensor-Dusk/Dawn: On when the light on the sensor falls below the threshold. o Motion Sensor-Low Bat: Sends an On when the battery voltage falls below a specific level. • Any of these can be used as a Condition in a program. 13.18.1.2Motion Sensor Options Figure 233: Motion Sensor Options •...
Page 405
• Sensing mode (Occupancy): when checked an On command is sent for every motion detected. When unchecked an On command is sent only after the Timeout interval has expired. • On only mode: when checked an Off command is sent when the Timeout value expires.
13.18.1.4Motion Sensor Trick To activate the Motion Sensor for reads and writes without pressing the Set button: • If you have a helper you can use the On command. • If you are alone you will probably have to key with the Off command. o Select the Motion Sensor from the device tree.
10 seconds or until the RemoteLinc’s light starts flashing. Then click on the “Ok” button. Figure 236: Link a RemoteLinc dialog Enter the Insteon address of the RemoteLinc and press okay. Figure 237: New Insteon Device dialog (Universal Devices) Page | 385...
• Re-establish your button scenes. 13.19.2 Link a RemoteLinc2 – 2444A2 Firmware 3.1.17+ Choose this menu item to link a RemoteLinc2. Select the proper device from the sub-menu; Switch, 4-Scene Keypad, or 8-Scene Keypad. (Universal Devices) Page | 386...
Figure 238: Link a RemoteLinc 2 Menu • Put RemoteLinc2 in Programming Mode: o Ensure the on/off switch is in the On position o Press and hold the Set Button at the base of the RemoteLinc2 until the LED starts flashing green (takes about 3 seconds) •...
Cool and turn off when the thermostat is calling for Heat. 13.20.2.4Thermostat Options • Temperature • Mode - Off/Auto/Heat/Cool • Program - Auto/Heat/Cool • Fan - On/ Auto • Setpoint • Heat Setpoint • Cool Setpoint (Universal Devices) Page | 388...
• Humidity 13.20.2.5Example Programs (V1) To run a Query on the Thermostat every 15 minutes: From 12:00:00AM 24 hours Then Repeat Every 15 minutes Set 'OfficeThermostat' Query Else - No Actions - (To add one, press 'Action') 13.20.2.6Thermostat FAQs If you are having trouble linking a Thermostat please check the following: •...
The TriggerLinc address is on a sticker inside the battery compartment. • Select the TriggerLinc [10.02] from the drop down list. • Click Ok. • Press and Hold the Set button for 5 seconds to put the TriggerLinc in linking mode as per the requester. (Universal Devices) Page | 390...
Program X-10 D4 Status X10 'D4/On (3)' is Received And X10 'D4/Off (11)' is not Received Then - No Actions - (To add one, press 'Action') Else - No Actions - (To add one, press 'Action') (Universal Devices) Page | 391...
Page 415
The status of this program will be True when the X-10 D4/On command is received, and False when the D4/Off command is received. The program's status may be tested by other programs, and may also be viewed on the Program Summary tab. Figure 240: Program Summary If using several such programs for individual X-10 devices, placing them together in an X- 10 folder will cause them to appear together near the bottom of the Program Summary...
14.1.2 Program Status Dining Room Chandelier (D4) X10 'D4/On (3)' is Received Or X10 'D/All Lights On (5)' is Received And X10 'D4/Off (11)' is not Received And X10 'D/All Lights Off (1)' is not Received And X10 'D/All Units Off (13)' is not Received Then - No Actions - (To add one, press 'Action') Else...
14.1.3 Program Status Dining Room China Cabinet (D3) X10 'D3/On (3)' is Received Or X10 'D/All Lights On (5)' is Received Or X10 'D/Bright (7)' is Received And X10 'D3/Off (11)' is not Received And X10 'D/All Lights Off (1)' is not Received And X10 'D/All Units Off (13)' is not Received Then - No Actions - (To add one, press 'Action')
14.1.4 Program Status Kitchen Counter (K5) X10 'K5/On (3)' is Received And X10 'K5/Off (11)' is not Received And X10 'K/All Units Off (13)' is not Received Then Set Program 'Resume Kitchen Counter (K5)' To Run At Startup Else Set Program 'Resume Kitchen Counter (K5)' To Not Run At Startup 14.1.5 Program Resume Kitchen Counter (K5) - No Conditions - (To add one, press 'Schedule' or 'Condition')
14.1.6 Program Status Kitchen Island (K6) X10 'K6/On (3)' is Received Or X10 'K/All Lights On (5)' is Received Or X10 'K/Bright (7)' is Received And X10 'K6/Off (11)' is not Received And X10 'K/All Lights Off (1)' is not Received And X10 'K/All Units Off (13)' is not Received Then Set Program 'Resume Kitchen Island (K6) On' To Run At Startup...
Small, inexpensive motion sensors have long been a popular part of the X-10 world. You can put them to good use in conjunction with ISY for control of INSTEON lighting. This article discusses the use of X-10 motion sensors with ISY and provides examples of ISY programming for X-10. (Universal Devices) Page | 397...
Page 421
The simplest such program would simply have ISY turn on an INSTEON light when an X-10 motion sensor's On command is received, and turn the light back off when the sensor's Off command is received (in this example, the X-10 motion sensor is set to House/Unit code M1): X10 'M1/On (3)' is Received And X10 'M1/Off (11)' is not Received...
Page 422
leaves the user in the dark until additional motion is detected, which causes the sensor to once again send On. The solution is to listen only for the motion sensor's On command, and completely ignore its Off command, allowing ISY to do the timing and re-triggering: X10 'M1/On (3)' is Received Then Set 'Hall Light' On...
14.2.1 Program: Motion Detect X10 'M1/On (3)' is Received Then Run Program 'Motion Turn On' (If) Wait 3 minutes Set 'Hall Light' Off Else - No Actions - (To add one, press 'Action') 14.2.2 Program: Motion Turn On Status 'Hall Light' is Off Then Set 'Hall Light' On Else...
The same functionality can be achieved with the two programs reconfigured this way: 14.2.3 Program: Motion Turn On X10 'M1/On (3)' is Received And Status 'Hall Light' is Off Then Set 'Hall Light' On Else - No Actions - (To add one, press 'Action') 14.2.4 Program: Motion Timer X10 'M1/On (3)' is Received...
Many times, it is desirable to limit the period during which the motion sensor controls the light. The simplest example of this might be to have the sensor control the light only between sunset and sunrise: 14.2.5 Program: Motion Turn On From Sunset Sunrise (next day) And X10 'M1/On (3)' is Received...
Another common example would be to disable the motion control when the light is manually turned on: 14.2.7 Program: Motion Turn On Program 'Motion Disable' is False And X10 'M1/On (3)' is Received And Status 'Rear Floods' is Off Then Set 'Rear Floods' On Else - No Actions - (To add one, press 'Action')
14.2.9 Program: Motion Disable Control 'Rear Floods' is switched On And Control 'Rear Floods' is not switched Off Then - No Actions - (To add one, press 'Action') Else - No Actions - (To add one, press 'Action') When the light is manually switched on, the program Motion Disable becomes True, and as a result the other two programs will not turn the light on or off.
14.2.10 Program: Motion Turn On From Sunset Sunrise (next day) And Program 'Motion Disable' is False And X10 'M1/On (3)' is Received And Status 'Rear Floods' is Off Then Set 'Rear Floods' On Else - No Actions - (To add one, press 'Action') 14.2.11 Program: Motion Timer From Sunset Sunrise (next day)
14.2.12 Program: Motion Disable Control 'Rear Floods' is switched On Or Control 'Rear Floods' is switched Fast On And Control 'Rear Floods' is not switched Off And Control 'Rear Floods' is not switched Fast Off Then - No Actions - (To add one, press 'Action') Else - No Actions - (To add one, press 'Action') As a final example, a set of conditions may be monitored which when active will prevent...
Else - No Actions - (To add one, press 'Action') 14.2.14 Program: Stairway Motion Timer Program 'Stairway Motion Enable' is True And ( X10 'M1/On (3)' is Received Or X10 'M3/On (3)' is Received Then Wait 3 minutes Set Scene 'sStairway Light' Off Else - No Actions - (To add one, press 'Action') 14.2.15 Program: Stairway Motion Enable...
Furthermore, this module does not support Dim/Bright. 14.3.2 Instructions To purchase, please go to Admin Console | Help | Purchase Modules. (Universal Devices) Page | 408...
Page 432
Using the A10/X10 module A10 and X10 devices can be added to the node tree. Select from the Link Mangement Menu | New Insteon/A10/X10 Device. A requester will open allowing you to enter a name and the A10/X10 address the format for which is HouseCodeUnitCode such as F1.
15 Z-Wave Notes 15.1 Z-Wave Instructions 15.1.1 Requirements & Installation ISY-994 Series with firmware version 4.1.1 or above (Help | About) • Z-Wave Module - 21100 (Help | About). If you do not have the Z-Wave Module, • please do make sure you have firmware 4.1.1 installed first and then use Admin Console | Help | Purchase Modules ($1.00) to have it purchased/activated Z-Wave Dongle, see Ordering/Assembly Instructions...
15.1.3 Remove/Exclude a Z-Wave device Figure 244: Exclude Devices Popup • Select Remove/Exclude a Z-Wave Device o If the popup window does not appear, select 15.1.12 Stop Adding or Removing a Z-Wave device and the try again. • Put the Z-Wave device in learn Mode. Refer to the user guide for your product on how to do this.
• Put the other Z-Wave controller in learn Mode. Refer to the user guide for your product on how to do this. • The ISY will begin making the device the new Primary Controller. o The popup window will go away and you will see your new Primary Controller added to the tree.
setting for this option. This prevents accidentally including a neighbor’s device and sending it your secret keys. Figure 248: Z-Wave Tools Menu 15.1.7 Heal Z-Wave Network Z-Wave devices maintain information for routing messages throughout the Z-Wave network. As devices are added, removed, and/or moved, this information becomes less optimal.
delete the ISY nodes for a device, they will automatically reappear when using Synchronize Nodes because the device is still part of the Z-Wave network. • Select Synchronize Nodes → New & Deleted o Adds ISY nodes for devices that do not yet appear in ISY and removes ISY nodes for devices no longer in the Z-Wave network.
15.1.12 Stop Adding or Removing a Z-Wave device • Select (11) Stop Adding or Removing a Z-Wave device to force the ISY to get out of either include or exclude mode. 15.1.13 Factory Reset Z-Wave dongle • Select (12) Factory Reset Z-Wave Dongle •...
From the Admin Console, Select Z-Wave -> Replicate (Learn Mode) and wait for a • popup window to appear. If the popup window does not appear, select 'Stop Adding or Removing a Z- Wave Device' from the advanced menu then try again. Use the instructions for your Primary Controller to add a new Z-Wave device (the •...
15.1.20 Update the ISY with Network changes From the Admin Console, Select Z-Wave -> Replicate (Learn Mode) and wait for a • popup window to appear Use the instructions for your Primary Controller to include a device into the • network Wait until the transfer is complete;...
Figure 251: Synchronize Z-Wave Nodes Select New & Deleted to synchronize only those nodes have likely changed. • Select All to synchronize all nodes whether they have changed or not. • Synchronizing ensures that the ISY and the Z-Wave network have the same device information for a node.
Page 443
Choose the antenna the Z-Wave dongle should use (Internal or External). You must unplug ISY and then plug it back in for the settings to take effect. Figure 254: Factory Reset You may Factory Reset the Z-Wave dongle if it is not a member of a Z-Wave network. This erases all network information from the dongle, making it the Primary for an empty Z- Wave network.
Aeon Labs Extender Gen 5, double tap inclusion button within 1 second when including, if you single tap you include as non-secure. o Aeon Labs RGB Bulb Gen 5, Triple "toggle" the on/off switch within 2 seconds to include in secure mode. (Universal Devices) (Universal Devices) Page | 421...
The “Status” column contains the last Condition received from a particular IR code. The following conditions are available: Pressed – indicates the remote-control button was pressed and released normally. (Universal Devices) Page | 423...
40 codes labeled “IR_001, IR_002, etc.” This overwrites any IR codes you may already have stored on your ISY. With Logitech Harmony remote controls, you can simply choose the Universal Devices ISY from the Harmony software’s built-in database. The Harmony software allows you to drag and drop the ISY’s 40 default IR codes onto buttons on your remote control.
These 40 default IR codes are available pre-learned within CCF (for Pronto and other remotes) and MX-J (Universal Remote Control) files available for download here: • Current CCF file: http://www.universal-devices.com/ir/99/isy-99_ccf.zip • Older CCF file: http://www.universal-devices.com/ir/99/isy-99_ccf_old.zip (Universal Devices) Page | 425...
• MX-J file: http://www.universal-devices.com/ir/99/isy-99_mxj.zip Please note that if these 40 default IR codes are not working for you, or if you need more than 40 IR codes, you can "teach" the ISY RC5-compatible IR codes in place of, or in addition to, these default 40 codes.
16.3.4 Sample ON/OFF Code This code will turn a light on when pressing the IR code TV:1, assuming the light is currently off: IR 'TV : 1' is Pressed And Status 'Light1' is Off Then Set 'Light1' On Else - No Actions - (To add one, press 'Action') This code will turn a light off when pressing the same IR code TV:1, assuming the light is currently NOT off: IR 'TV : 1' is Pressed...
16.3.5 Sample BRIGHTEN/DIM Code This code will brighten a light when holding the same IR code TV:1, assuming the light is currently off: IR 'TV : 1' is Held And Status 'Light1' is Off Then Set 'Light1' Fade Up Else - No Actions - (To add one, press 'Action') This code will dim a light when holding the same IR code TV:1, assuming the light is currently NOT off:...
Please note that this will REPLACE any existing IR codes you may have already taught to your ISY. The ISY is now listed on Harmony's device database, making setup much easier for Harmony owners. We also have a Pronto CCF file containing these 40 codes available for download here: http://www.universal-devices.com/ir/99/isy-99.ccf (Universal Devices) Page | 429...
"Universal Remote" Philips device code. These remote codes should work fine, but there have been some cases where some codes work better than others. Remote Brand Device Code Logitech Harmony Remote Light Controller->Universal Devices->ISY99i/IR (case sensitive) One for All http://www.ofausa.com/advanced_search.php Philips Pronto http://www.pronto.philips.com/...
Many of the more advanced universal remote controls, as well as other IR devices, allow for programming from a computer. IR codes may be entered into the programming application either as hex strings, or in standard Pronto .ccf format, depending on the application (Universal Devices) Page | 431...
• Get your ISY IP address for your ISY. • Telnet to your ISY and login with your username and password • Use the CI command, it will prompt you for new values for Hold Detect and Hold Maintain (Universal Devices) Page | 432...
• Finally click on the "Save Changes" button to save your program to the database o The icon for the program should change from a "page green arrow icon" to a "page icon". • Your program is enabled and ready to run (Universal Devices) Page | 433...
• It does this by tracking the water used/lost from the soil until a threshold is reached (where the plants would starve for water if much more left without replacement). (Universal Devices) Page | 434...
Page 458
• In most climates, this will result in watering every few days. • Rain may offset some of the water use/loss, resulting in less frequent watering. • Calculations performed once every 24 hours are sufficient for this tracking. Figure 257: Irrigation based on ET •...
17.1.2 Irrigation with Evapotranspiration Figure 258: Irrigation Requirement Balance Example • A running balance is used to decide when to irrigate. • It's not necessary to exactly replace all the water which has left the soil (i.e. zero-out the balance). Page | 436...
During cooler times of the year the watering days frequency will slow down, and during the warmer parts of the year the watering frequency will ramp up to daily. (Universal Devices) Page | 437...
Figure 259: HAM Weather Data 17.2.2 Irrigation Module's Settings Figure 260: Irrigation Cycle Calculator Page | 438...
Page 462
Figure 261: Weather Provider Settings There are several variables that are adjustable by the user. • Calculation Method - The method used to calculate ETo o Penman-Monteith: Accurate, but relies on averages of Temperature, Wind speed, and Dewpoint throughout the day. Some users had reported problems with communication to the HAM Weather servers which can cause errors in the averages.
• Water Applied per Irrigation Cycle - amount of water the user's irrigation program applies to the soil during each run. • Allowable Depletion - how much water is allowed to leave (be depleted from) the soil before the next irrigation cycle. 17.2.3 Irrigation Module's Status Output These variables are calculated from the WeatherBug data.
17.2.5 Program Example: Irrigate If Needed The IF condition decides whether to water by comparing the Irrigation Requirement balance to a constant. The user is responsible for setting this constant equal to Water Applied per Irrigation Cycle, and updating it if they change the value of water that they apply per irrigation in their own programs.
• In the ISY Admin Console go to the Programs tab. • Create the temporary program shown in the example below. • Right click on the program in the folder tree and select "Run Then" to reset the module. • Go back to the Weatherbug tab. •...
ISY device without the need to do any port forwarding. Your connection is not affected by changes to your external IP address. The ISY Portal uses cloud services hosted by Universal Devices. Instructions on setting up the ISY Portal can be found online at the following address: Following is a step-by-step procedure for setting up the ISY Portal: 18.1.1...
Figure 264: Help->About Display Take a look at the Product section. If you do not see Portal Integration listed, you will need to purchase this prior to continuing. Select the Help->Purchase Modules option to purchase the Portal Integration moduel. You will be directed to the ISY website in order to complete the purchase.
Page 468
Figure 265: Configuration->Portals Tab Register the Portal Integration service by going to the URL: https://my.isy.io/index.htm You will see the following displayed: Figure 266: Portal Login Select the Create new account option to create the account. Once you create your account you will see the following display: Page | 445...
Page 469
Figure 267: Portal ISY Configuration Screen Press the Add ISY button to add your ISY to the Portal. You will see the following display: Figure 268: Portal ISY Add Popup Enter the UUID for your ISY device. You can find the UUID listed in the Help->About menu option, see section: Verify Module Installation Page | 446...
Page 470
You may also enter an Alias. Once you have saved the configuration you will see the following screen: Figure 269: Portal ISY Added Display You will see the UUID for your ISY listed, the Alias you created, as well as the firmware version of your ISY.
Page 471
Figure 270: Portal ISY New User Popup Enter information for the user. Initially create one as an Administrator. Use the same ISY UUID that you entered above. Check the Account Admin option for the Administrator. Once you save you will see the following screen: Page | 448...
Page 472
Figure 271: Portal ISY New User Added Display You will see the user you created, whether this user is an administrator, and the preferred ISY. Once the above has been completed, Refresh the display in the ISY Configuration- >Portals section. This will indicate that the ISY Portal is now in full operation. Figure 272: Configuration->Portals Tab ISY Registered Display To access your Portal use the URL: https://my.isy.io/index.htm...
Instructions for New Users • Make sure you have followed all the steps in ISY Portal Installed and Configured first. • Configure your Echo devices using the Instruction to configure Alexa devices in ISY Portal below (Universal Devices) Page | 450...
• Enable the ISY Smart Home Skill using the Instructions to enable the V3 skill in the echo app 18.2.3.1Instructions for Existing Users • ISY Smart Home skill is now on V3 and V2 will eventually be removed. If you are still on V2, please follow Instructions for Migrating to V3 below •...
18.2.5 Instructions for Migrating to V3 • Review the ISY Optimized for Smart Home V3 Changes • To use V3, you first need to uninstall V2: o Login to the Echo App o Click on the Smart Home menu item on the left navigation bar o Click on Smart Home Skills o On «...
18.2.7 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 •...
• 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 •...
UDI in order for the system to work. o Log into the ISY Portal using valid login credentials at "https://my.isy.io/". o Select the “Select Tool” for the ISY you wish to add Google Home to. (Universal Devices) Page | 455...
Page 479
Figure 273: ISY Portal - Select Tool o Select “Amazon Echo/Google Home” under “Connectivity”. Figure 274: ISY Portal - Connectivity o Select “Device” from the “Spoken device list”. Page | 456...
Page 480
Figure 275: ISY Portal – Spoken device list o Select the dropdown arrow to reveal devices. Figure 276: ISY Portal – reveal devices drop down o Select a device to be added. Figure 277: ISY Portal – select device to be added o Enter a “Spoken”...
Page 481
Figure 278: ISY Portal – Enter spoken name o When a device “Spokens” have been added, they will appear in red in the “Spoken mapping” dropdown. Figure 279: ISY Portal – Spoken mapping o When a “Device” has been added successfully it will appear in the “Spoken device list”.
Figure 280: ISY Portal – Spoken device list o Once all devices have been added they will appear in the “Spoken device list”. The setup required in ISY Portal is now complete. ▪ Note: Scenes and Programs may be added in this same way. Programs will run the “Then”...
Page 483
Figure 282: Google Home - App o Launch “Google Home” and select “main menu”. Figure 283: Google Home – Main Menu o Select “Sign In” to sign in to “Google Home” mobile application. Page | 460...
Page 484
Figure 284: Google Home – Sign In o Enter valid login credentials and select “Next”. Figure 285: Google Home – Enter valid login credentials o Select “main menu”. Page | 461...
Page 485
Figure 286: Google Home – Select main menu o The “main menu” should now look like the image below once the user is logged into the “Google Home” mobile application. Figure 287: Google Home – Logged in o Select “Devices” to setup the “Google Home” device. Page | 462...
Page 486
Figure 288: Google Home - Devices o Select the “add new device” button. “Google Home” mobile application will look for any “Google Home” devices that are available. ▪ Note: Make sure that the Google Home device is powered on, and that WiFi and Bluetooth are enabled on the mobile device being used.
Page 487
Figure 290: Google Home – Sign in o Select the “Continue as …” button. Figure 291: Google Home – Continue as … o The user may set the location of the “Google Home” device. Page | 464...
Page 488
Figure 292: Google Home – Set Google Home’s Locations o The user may add music services to the “Google Home” device, and select continue. ▪ Note: Free 2 week “Google Music” preview for purchasing “Google Home” device. Figure 293: Google Home – Add music services o The “Google Home”...
Page 489
Figure 294: Google Home – Setup complete o Your “Google Home Devices” window should now look like the image below. Select the “Back arrow” to return to the main menu. Figure 295: Google Home – Google Home Devices o Select “Home Control” from the main menu. Page | 466...
Page 490
Figure 296: Google Home – Home Control o Select the “+” button to add devices, scenes, and programs (“Spokens”) from the UDI Portal. Figure 297: Google Home – Add spokens o Select “Universal Devices” from the list of accounts that can be added. Page | 467...
Page 491
Figure 298: Google Home – Select Universal Devices o Login to the UDI Portal using valid UDI portal credentials and select “Submit”. Figure 299: Google Home – Log into the UDI Portal o The ”Google Home” mobile application will import “Spokens” from the UDI Portal.
Figure 300: Google Home – Spokens imported 18.3.3 Supported Commands • For Devices: o Turn On: “Ok Google, turn on the kitchen light” o Turn Off: “Ok Google, turn off the kitchen light” o Brighten: “Ok Google, brighten the kitchen light” o Dim: “Ok Google, dim the kitchen light”...
Home” to see the new “Spokens”. To do this, select “main menu" then "Home control" then select the ellipsis in the upper right corner. Select “Manage accounts”, select "Universal Devices" under "Linked", then select “Unlink account”. Once the account has been "unlinked", quit the application out of multitasking (iOS) or recent apps (Android).
• Select "Occupancy" by selecting "Select tool..." then "NodeServer" then "Occupancy". Figure 308: ISY Portal – Select Tool • Select "Add a geofence", please enter a name for this geofence, such as "iPhone" and select "Save". (Universal Devices) Page | 473...
Page 497
Figure 309: ISY Portal – Add a geofence • The user may also enter a location or locations if the user so desires. To add a location, select the "+" button to the right of the "Location" dropdown. Please enter a location name, such as "Home"...
Page 498
Figure 311: ISY Portal – Occupancy window • Location nodes and geofence nodes should now be present in the admin console UI for consumption in programs. Figure 312: ISY – Location and geofence nodes • In order to change the status of these nodes, the user must implement a mechanism for sending "GET"...
Figure 313: ISY Portal – Locative URLs 18.5.3 Troubleshooting • If a geofence has accidentally been deleted in the admin console, or if there is an extra geofence that does not exist on the portal (such as restoring ISY to a backup that has more geofences) the user may select "Synchronize", then "Yes"...
Page 500
• Launch the application and select "+" to add a geofence. • Enter in a location, set the radius to the maximum, and select "POST / GET" to "GET". "Trigger on Arrival" and "Trigger on Departure" should be enabled. The User may enter a custom location ID such as "Home".
Page 501
Figure 318: Locative – Trigger on Arrival • Paste the "OUT" URL into the field "Trigger on Departure" Figure 319: Locative – Trigger on Departure • Locative is now configured with a geofence and able to send GET requests which change the status of device nodes in ISY.
• Select "NodeServer" from the "Select tool..." dropdown and then select "Occupancy V2 (with UDI Mobile)". Note: for this example, we will configure one device to trigger one geofence, multiple geofences and devices are supported as well. (Universal Devices) Page | 479...
Page 503
Figure 321: ISY Portal – Select NodeServer Occupancy v2.0 • Under the "Geofences" tab select "Add Geofence", name it and select "Save". Page | 480...
Page 504
Figure 322: UDI Mobile – Add geofence • Under the "Mobile Devices" tab select "Add Mobile Device", name it and select "Save". Page | 481...
Page 505
Figure 323: UDI Mobile – Add mobile device • Note: “Profile for UDI Mobile” can be toggled between "Editor" and "User". Selecting "Editor" grants the mobile device user permissions to unlink the mobile device. • Under the "Geofences" tab select "Assign Mobile Device". Figure 324: UDI Mobile –...
Page 506
Figure 325: UDI Mobile – Assign mobile device to geofence • Under the "Mobile Device" tab, select the blue arrow under the "Linked" column. Figure 326: UDI Mobile – Select mobile device Page | 483...
Page 507
• Select "Generate" and select "Confirm" to generate a six-digit pin for linking the UDI Mobile application downloaded in step 1. Figure 327: UDI Mobile – General pin code • Launch UDI Mobile and enter the six-digit code you received from the previous step and select "Confirm".
Page 508
Figure 329: UDI Mobile – Set geofences location • The application will locate your current location and set the fence to 100M by default. To save this setting select "Update Geofence". To select another location, enter the address in the search field and then select "Update Geofence" and "OK" to confirm.
Page 509
Figure 330: UDI Mobile – Update geofence • Your application is now configured to report your location and does not need to be running to do so. The device will now report its status automatically. To test the geofence feature you may use the "Report Device Status” button within the settings of the application.
IFTTT key: This is the key you created in ISY Portal o For your convenience, in your list of events in portal, there is a small icon beside the red X, which will give you the full URL you can cut & paste here (Universal Devices) Page | 487...
• The Method should be POST • Click on Create Action. You are ready to test! Passing values from IFTTT event 18.7.4 In addition, you can pass values from IFTTT events to a state variable or a dimmable device. To do so, set your portal event with the action IFTTT Value. Then in the maker channel, you can pass the value in the Body field.
• Click on the second column where it says Select to Edit Content. This will bring up Resource Editor o Choose https from the first drop down o Choose POST from the second drop down o For Host, type maker.ifttt.com o For Port, choose 443 o For Timeout, use at least 1000 (if you get TCP response failures, increase the timeout)
Page 513
• You will then have a link to use on IFTTT for example: https://my.isy.io/ap.../RingDoor/key/<YourKEYFROMisyPORTAL> • You will need to copy this key for later use) • Use the variable you created in your ISY and create a action to run it in ISY Portal. For example: Event Name Category...
Use the KEY from the ISY portal, plug in in the URL field. Use the copy feature from ISY Portal works best! • Method: POST • Content Type: json+application • Body: Leave blank • Now select action Now you can write any program you wish that will do an action and then reset the variable to 0 again.
o SimpliSafe Error Alert: Power Outage - the Base Station has lost its connection to external power and is not operating on back-up battery o SimpliSafe Power Restored - the Base Station has gained it connection to external power o SimpliSafe Sensor Restored - a sensor that was previously not connecting to the Base Station has restored its connection.
2000ms (SSL takes a while to become established - can be lower if you change method to 'http' though o mode is 'C Escaped' o body to 'apikey=#API Key#&application=ISY&event=TEST ONLY&description=Test Notification\n' (Universal Devices) (Universal Devices) Page | 493...
Page 517
▪ (obviously - replace #API Key# with your API key 18.8.1.1.3Notify My Android Apps • Android - https://market.android.com/details?id=com.usk.app.notifymyandroid Instructions • Sign up at https://www.notifymyandroid.com • Enter credentials into 'Notify My Android' on device • Send a test message from https://www.notifymyandroid.com/notify.php to verify installation •...
Page 518
o path is '/1/messages.json' o timeout at least 2000ms (SSL takes a while to become established - can be lower if you change method to 'http' though o mode is 'C Escaped' o body to 'token=#Application Token#&user=#User Key#&message=Test Notification' ▪ full API documentation is at https://pushover.net/api Pushbullet Requires at least version 4.6.2.
Page 519
18.8.1.1.5AutoRemote (MUST HAVE if you are a Tasker User) Apps • Android - https://play.google.com/store/apps/details?id=com.joaomgcd.AutoRemote&hl=en Instructions • Please see 19.1.10 Mobile Notification 18.8.1.1.6Pushsafer Apps • iOS - https://itunes.apple.com/app/pushsafer/id1096581405 • Android - https://play.google.com/store/apps/details?id=de.appzer.Pushsafer • Win10 - https://www.microsoft.com/store/apps/9NBLGGH51ZV6 • Chrome, Firefox Webpush: https://www.pushsafer.com/en/apps Instructions •...
Here are the instructions: 18.9.1 Configure ISY Finder • Go to your portal account, click on Select Tools (next to your ISY) and then choose ISY Information • Copy the URL next to Admin Console URL (Universal Devices) Page | 497...
Set Secure Port to 443 If you have an Android Phone and still having trouble communicating: • Uninstall MobiLinc PRO (Force Stop Services) • Reboot your phone • Install MobiLinc PRO • Follow the same instructions as above (Universal Devices) Page | 498...
• You may want to clear Http port 19 Third Party Integration Notes 19.1 Tasker The Android Tasker is an automation app. It is an application for Android which performs tasks based which can then be executed according to a variety of contexts. Integration of the Tasker with an ISY lets you to add a lot of powerful functionality to your home automation system.
Figure 333: ISY Information Popup Copy the cryptic text string in the URL to ISY section, following the /ISY/ text. You will need this text in Tasker. 19.1.2 Network Awareness First, it is helpful if Tasker can use the HTTP interface when on the same network, and HTTPS when not.
Page 524
Figure 334: Network Awareness #1 • Hit 'Back' (gear icon in the top-left of screen) • Click the + bottom center of screen • In the 'Filter', type 'variable. Scroll and select 'Variable Set' • In the 'Name' box, type '%URLPrefix' •...
Page 525
Figure 335: Network Awareness #2 • Hit 'Back' (gear icon in the top-left of screen) • Hit 'Back' again (gear icon in the top-left of screen) to return to the list of tasks.. Now, let's create the second task, step by step: (CaSe is important) •...
Page 526
Figure 337: Tasker Network Awareness #4 • If you ARE using ISY Portal: • In to 'To' box, type '/isy/<secure_isy_id>' (the <secure_isy_id> is the cryptic data string you found in your ISY Portal section above: 19.1.1 ISY Portal Information) • Hit 'Back' (gear icon in the top-left of screen) •...
Page 527
Figure 338: Tasker Network Awareness #5 Now, let’s set a couple of variables... • Click the 'VARS' tab (top of screen) • Near the bottom of the screen - if you don't see buttons labeled 'Indexed' and 'Empty', click the ^ in the far bottom-right. •...
Page 528
The following image is if you are connecting directly: Figure 339: Tasker Network Awareness #6 The following image is if you are connecting via ISY Portal: Figure 340: Tasker Network Awareness #7 Page | 505...
Page 529
Exit Tasker and re-launch (This is to save the tasks - so we can create profiles that refer to them) Now, let's create the first profile: • Click the 'Profile' tab • Click the + bottom-right • Click on 'State' •...
Figure 341: Network Awareness #8 The profile name is green when it's active... At this point - if you drop the Android notifier, you should see a Tasker notification proclaiming 'On Home Network'. Click it - Tasker will open. Click the 'Vars' tab, you should see that %IsyUrl has been set to the internal URL..
Page 531
Figure 342: Base Task Dependencies #1 • Click the + bottom center of screen • In the 'Filter', type 'http' • Touch 'HTTP Get' Page | 508...
Page 532
Figure 343: Base Task Dependencies #2 • In the 'Server:Port' box, touch the 'Tag' and select '%IsyUrl' • In to 'Path' box, type '%URLPrefix/rest/vars/set/2/%par1/%par2' Figure 344: Base Task Dependencies #3 • If you are using a self-signed certificate on your ISY (and not the portal) - scroll down and check 'Trust Any Certificate' •...
Page 533
Figure 345: Base Task Dependencies #4 Now - use the above process to create these additional 'meta-tasks': • ISY-SetVarInteger 'Net' 'HTTP Get' / Server:Port = '%IsyUrl' / Path = '%URLPrefix/rest/vars/set/1/%par1/%par2' • ISY-RunIf 'Net' 'HTTP Get' / Server:Port = '%IsyUrl' / Path = '%URLPrefix/rest/programs/%par1/run' •...
19.1.4 In-Car Detection First - the steps outlined in 19.1.2 Network Awareness and 19.1.3 Base Task Dependencies must be completed. I've found the most reliable way to do in-car detection is Bluetooth. Either to your cars built-in Bluetooth, or a Bluetooth device plugged into the accessory outlet. First, create a 'State Variable' on the ISY called 'In_Car'.
Page 535
Figure 347: In-Car Detection #3 • Now, pair your phone with the Bluetooth device. This is necessary to cause your phone to automatically connect when the device powers up (in your car). • In Tasker, add a 'State' profile. Figure 348: In-Car Detection #4 Page | 512...
Page 536
Figure 349: In-Car Detection #5 Figure 350: In-Car Detection #6 • In the filter, type 'BT' and then select 'BT Connected Page | 513...
Page 537
Figure 351: In-Car Detection #7 Figure 352: In-Car Detection #8 • For the 'Name', click the magnifying glass and select your Bluetooth device. Page | 514...
Page 538
Figure 353: In-Car Detection #9 • For the 'Address', click the magnifying glass and select the same Bluetooth device as for the name. Figure 354: In-Car Detection #10 Page | 515...
Page 539
• Hit 'Back' and select 'ISY-Set-Car-Enter' as the task to run. Figure 355: In-Car Detection #10 Figure 356: In-Car Detection #11 • In the profile list, long-press the 'ISY-Set-Car-Enter' task and select 'Add Exit Task' select 'ISY-Set-Car-Exit' as the task to run when exiting the car. Page | 516...
Figure 359: In-Car Detection #14 • Manually run the 'ISY-Set-Car-Exit' task the first time (while not in the car!) and verify the 'In Car' variable changes from '2' to '0'. 19.1.5 Geofencing For effective geo-fencing on Android - add the AutoLocation module to Tasker (https://play.google.com/store/apps/details?id=com.joaomgcd.autolocation).
• click 'Back' to return to the list, and then back again. • Create a 'Profile' by clicking + • Select 'Event' • In the filter, type 'device' and select 'Device Boot' • There are no options to configure for this event, so hit 'Back' •...
Page 543
On my ISY - I have a device (a Switchlinc) called 'Dining Room Overhead' - and it's in a folder 'Main / Dining /' I also have a scene 'SC - Dining Room Overhead' in folder 'Main / '. The Switchlinc is a controller of the scene - and is also the switchlinc attached to the load. There are other Switchlincs in the scene.
19.1.7 Retrieving ISY Variables into a Tasker variable This is how to get the content of an ISY variable with Tasker - and store the results in Tasker Global Variables. First, setup the 19.1.2 Network Awareness section. This is so you get nice, fast API access on the same LAN as your ISY - but secure remote access (either directly, or via the ISY Portal) while away from home.
Make sure 'Encode URL' is checked - so that special characters or spaces in your message get encoded ▪ Documentation can be found at http://joaoapps.com/AutoRemote/ In this example, I'm going to send the status of a door (from an Elk zone) to a Tasker variable (0=closed, 1=open). (Universal Devices) Page | 522...
Page 546
First, create two network resources for AutoRemote. The two messages to send are: Message 1 'AR - Door - Side Door - Closed' SETVAR ISYFrontDoor=:=0 Message 2 'AR - Door - Side Door - Opened' SETVAR ISYFrontDoor=:=1 The ISY program to send the message looks like this: Elk Zone 'Front Door' is Violated Then Resource 'AR - Door - Side Door - Opened'...
To use, simply download the linked .ZIP file and IMPORT into your ISY from the Network Resources tab. Always be sure to have a full backup of your ISY. (Universal Devices) Page | 524...
20.1 Utilities 20.1.1 Hex to Network Resource Binary Hex to Binary Converter - http://www.universal- devices.com/networkresources/HexToNRDecimal.zip This link contains a Java utility that converts Hex text to binary decimal representation that can be pasted into a Network Resource. For instance all Russound commands are in Hex. Using this utility, you can seamlessly convert them to the binary version that Network Resources understands.
This file contains commands used to turn on/off the three relays on a GC-100-12. Simply change the IP address to match your GC-100. 20.2.4 Global Cache iTach A user has written a very complete article in our forum on using a WF2IR: The Global Cache WF2IR works.
http://www.universal-devices.com/networkresources/audio/Denon-AVR-991.zip This file contains commands to communicate with AVR-991. http://www.universal-devices.com/networkresources/audio/Denon-AVR-4308.zip - This file contains commands to communicate with AVR-4308. 20.3.2 Logitech Squeezebox An ISY user has posted about successfully controlling his Logitech Squeezebox using Networking Resources. Please see this post in our forum: http://forum.universal-devices.com/topic/2563-what-are-you-controlling-share-your- experience http://forum.universal-devices.com/topic/7722-squeezebox-support...
characters. All RIO commands must be terminated with a <CR> (0x0D hex). For more information about RIO, download the Third-Party Development Toolkit from Russound's Document Center. It contains all the protocol document and details about how to use RIO to integrate data features with third-party system hardware.
Figure 360: eISCP Packet • commands are documented in the Onkyo-Integra-Netrules.zip • Every ISCP command must be preceded with a header. The header is static except for byte 11, which specifies the command length (typically 7) • Consult an ASCII table to convert hex commands to binary format. For example, the ISCP command "PWR01"...
Page 553
• AUDIO_INFO_QUERY: 73;83;67;80;0;0;0;16;0;0;0;26;1;0;0;0;33;49;73;70;65;81;83;84;78;13 • LISTEN_MODE_ALCHANSTEREO: 73;83;67;80;0;0;0;16;0;0;0;24;1;0;0;0;33;49;76;77;68;48;67;13 • LISTEN_MODE_AUDYSSEY_DSX: 73;83;67;80;0;0;0;16;0;0;0;24;1;0;0;0;33;49;76;77;68;49;54;13 • LISTEN_MODE_NEO_CINEMA_DSX: 73;83;67;80;0;0;0;16;0;0;0;24;1;0;0;0;33;49;76;77;68;65;51;13 • LISTEN_MODE_NEO_MUSIC_DSX: 73;83;67;80;0;0;0;16;0;0;0;24;1;0;0;0;33;49;76;77;68;65;52;13 • LISTEN_MODE_NEURAL_DIGITAL_DSX: 73;83;67;80;0;0;0;16;0;0;0;24;1;0;0;0;33;49;76;77;68;65;54;13 • LISTEN_MODE_NEURAL_SURROUND_DSX: 73;83;67;80;0;0;0;16;0;0;0;24;1;0;0;0;33;49;76;77;68;65;53;13 • LISTEN_MODE_PLII_GAME_DSX: 73;83;67;80;0;0;0;16;0;0;0;24;1;0;0;0;33;49;76;77;68;65;50;13 • LISTEN_MODE_PLII_MOVIE_DSX: 73;83;67;80;0;0;0;16;0;0;0;24;1;0;0;0;33;49;76;77;68;65;48;13 • LISTEN_MODE_PLII_MUSIC_DSX: 73;83;67;80;0;0;0;16;0;0;0;24;1;0;0;0;33;49;76;77;68;65;49;13 • LISTEN_MODE_QUERY: 73;83;67;80;0;0;0;16;0;0;0;26;1;0;0;0;33;49;76;77;68;81;83;84;78;13 • LISTEN_MODE_STEREO: 73;83;67;80;0;0;0;16;0;0;0;24;1;0;0;0;33;49;76;77;68;48;48;13 • LISTEN_MODE_THEATER_DIMENSIONAL: 73;83;67;80;0;0;0;16;0;0;0;24;1;0;0;0;33;49;76;77;68;48;68;13 • ..more in the file: https://wiki.universal- devices.com/index.php?title=File:EiscpMessages_binary.txt These binary strings were created using an open source Java implementation of eISCP...
➢ File: https://wiki.universal- devices.com/index.php?title=File:EiscpMessages_binary.txt ➢ just copy the string of binary numbers (for the message to send) into the ISY Network Resources body • If multiple commands are to be sent by an ISY program, include a one second delay between commands Figure 361: Net Resources EISCP messages Export Files...
- This file contains commands used to control Sonos. http://forum.universal-devices.com/topic/14127-more-sonos-integration/ Comprehensive guide for Sonos Integration. Forum - Discussion forum for Sonos integration: http://forum.universal- devices.com/topic/11716-insteon-and-sonos-with-isy-994i With many thanks to dstanley. 20.3.9 Sonos by jonathanud Export Files http://www.universal-devices.com/networkresources/audio/Sonos-NR.zip - This file contains commands used to control Sonos.
20.3.10 Grace Audio Forum - Discussion forum for Grace Audio integration: http://forum.universal- devices.com/topic/13449-non-stop-pandora/?hl=%2Bgrace+%2Baudio 20.3.11 Yamaha Receiver 1030 Forum - Discussion and PDF for Integration with Yamaha Receivers: https://forum.universal-devices.com/topic/22362-yamaha-network-resource-tcp-ip- codes 20.4 Video 20.4.1 DirecTV Setting Up DirecTV: https://forum.universal-devices.com/topic/23212-setting-up- directtv-control-with-alexa-using-network-resources 20.4.2 TIVO Interfacing the ISY-99i with a Tivo: https://wiki.universal- devices.com/index.php?title=ISY-...
20.4.6 Nest Camera Nest Camera using ISY Portal/IFTTT: https://wiki.universal- devices.com/index.php?title=ISY_Portal_IFTTT_Integration#ISY_Nest_Camera_Integrati 20.4.7 Blue Iris v4.x Many thanks to Mr. Daniel Rich for providing these resources/instructions! • Download Template Resources for Blue Iris: http://www.universal- devices.com/networkresources/ISY-BlueIris-NetworkResources.zip • Change the Host and Port to the one configured for your Blue Iris (currently blueiris.example.com port 80 in the resource as a placeholder) •...
Since this device doesn't use any authentication, all that needs to be done is to import the resources and change the "whf.example.com" hostname with your fan hostname or IP. 20.9 Miscellaneous 20.9.1 Twitter ISY can Tweet: https://wiki.universal-devices.com/index.php?title=ISY- 994i_Series_INSTEON:Networking:Network_Resources:Twitter ISY cannot perform the required oAuth - so this couples IFTTT and it's Maker channel to allow ISY to tweet 20.9.2 Nabaztag...
You can install it by following these steps. • Open the Programs and Features Control Panel applet (Start, Control Panel, Programs and Features). • Select "Turn Windows Features On or Off." (Universal Devices) Page | 537...
• Select the "Telnet Client" option and click OK. A dialog box appears, confirming the installation of new features. After installation is complete, close the main Programs and Features Control Panel applet. The telnet command should now be available. 21.1.2 Telnet To Your ISY (Windows) If you have your ISY on your network then you can telnet directly into it.
Figure 363: Telnet Login 21.1.3 Telnet To Your ISY (MAC) • Get your ISY IP address • Launch a "Terminal" window • Enter telnet your.isy.ip.address • Enter your user name and password Page | 539...
Figure 364: Mac Telnet 21.2 Assigning a Static IP Address to the ISY If you wish to assign a static IP address to your ISY, please open the Configuration tab, then the System sub-tab. Uncheck the “Automatic (DHCP)” box and fill out the fields in the Network Settings section: Page | 540...
Portal service still however do need port forwarded and in that case please follow the steps below. Also note the Portal is a safe automatic connection that bypasses your router's standard NAT firewall. (Universal Devices) Page | 541...
21.3.1.1Configuring a UPnP Router • Check the auto-configure Supported Remote Access Routers list, if not see On a Non- UPnP Router below • Make sure you have enabled UPnP within your router so the ISY can auto-configure your router • In your ISY click on File --> Enable Internet Access to enable the ISY internet access. This will negotiate the port through the router and out to the Internet •...
21.3.1.2Configuring a Non-UPnP Router Instructional Video for Port Forwarding: https://www.youtube.com/watch?v=VV7u771uX7E If you do not have a UPnP router, or if File->Enable Internet Access returns null or fails, then: • Make sure you do NOT use File | Enable Internet Access. It's an either/or scenario •...
Figure 368: External IP Address 21.3.2 Setup Dynamic DNS services Most Internet Service Providers (ISP) use dynamic ISP addresses, this means that your ISP address can change at any time. It is suggested you use a dynamic DNS service that will give you a static web address to reach your ISY at all times.
21.3.4.1Change Port via ISY Admin ISY firmware v2.7.9+ Log into your ISY. • Click on the Configuration tab, then System tab • Under the Network Settings area change the HTTPS port, example 1443 • After selecting a new port click the Save button to save the changes, then your ISY will reboot •...
Figure 370: Telnet ISY Interface 21.3.4.3Verify the new HTTPS Port Number • Login to the ISY Admin Console • Verify the external IP address, menu item Help | About o Note the address is preceded with HTTPS as you will be using a secure port. In the image the Port has been changed to 1443.
UDAjax provides. 21.4.2 How can I try HAD? HAD is built-in the firmware as of 4.2.0. You can try it easily by going to the settings page and change the default UI to "Home automation dashboard" (Universal Devices) Page | 547...
Figure 1 In order to switch back from HAD to UDAjax, go to the admin tab, and click "Default UI UDAjax". Figure 2 21.4.3 HAD installation and customization In order to customize HAD, you need to download and install it. The latest HAD release can be downloaded here: Link to be supplied soon.
• Then you can leave everything checked, or check only what is required; o Core o Widget o Mouse o Accordion o Button o Slider o Spinner o Tabs Leave the rest as is and proceed with the Download. (Universal Devices) Page | 549...
• Show a variable, controlled by a program The power comes from grouping them as makes sense for you. An example would be to have a section for your living room which would include lights control along with program (Universal Devices) Page | 550...
Page 574
to start music in that room. Another example could be sprinkler controls, where one option is to run your sprinkler cycle (a program), and below offer individual sprinkler controls. 21.4.3.2.2How to use a custom device table? You need to do the following: •...
Page 575
In this example, all devices whose name is "name" will be displayed, and controls show will be based on the device type. A dimmer will be show with a slider. A thermostat will be shown with thermostat controls. For more information, see 21.4.3.3HAD Customization: Advanced customization table 21.4.3.2.4Create a placeholder to display the device table You need a div like this somewhere in your html.
Page 576
First, make sure that you have loadVar1Defs, loadVar2Defs or both set to 1 (in custom.js). var loadVar1Defs = 1; // Set to 1 if some integer variable names are used in a custom table, or if using generic var table. Set to 0 for better performance. var loadVar2Defs = 1;...
▪ "Var": If typeControl=="Pgm", you can have a variable be displayed instead ▪ "No": Do not refresh. o typeControl: Can be "Dev", "Pgm" or "Var". o if typeControl=="Dev", this means this is a device or Scene. (Universal Devices) Page | 554...
Page 578
o if typeControl=="Pgm" ▪ program: program name ▪ OR programId: ID of the program (If ID is specified, page can load faster) ▪ NOTE: The On button will trigger "Then", Off will trigger "Else". o if typeControl=="Pgm" and refreshOpt=="Var" ▪ variable: Name of variable to display ▪...
Page 579
21.4.3.3.2Custom device table examples var deviceList = { location: "Standard devices & scenes", list : [ { name : "Device1" }, { name : "Device2" }, { name : "Device3" }, { name : "Thermostat1" }, { name : "Thermostat2" }, { name : "Scene1"...
Feel free to customize everything. In normal circumstances, you can easily upgrade HAD as it should not touch much index.htm. 21.4.3.4.2custom.js This is where you should put your custom JavaScript options. There are several options at the top that you can set to your taste. (Universal Devices) Page | 557...
Admin Console. In such cases: • Admin Console might consider ISY offline and thus prompt for credentials in perpetuity • Status updates are not published to the Admin Console in real-time (Universal Devices, John Miller) Page | 558...
21.5.2 Using HTTPS Most firewall software are more lenient with HTTPS/secure traffic. Before configuring any firewall settings, you might want to try connecting to ISY using HTTPS: • Bring up the ISY Finder by using the ISY994 icon on your desktop (installed by this link http://isy.universal-devices.com/994i/admin.jnlp) •...
21.6.1.1Introduction Universal Devices, Inc. takes ISY security extremely seriously. As such, all ISY994 Series are equipped with network security features. ISY994 PRO Series TLS/SSL Level User selectable: TLS 1.0 TLS 1.1 TLS 1.2 (default) Cipher Suites User selectable: Ciphers are offered in the order listed below.
21.6.1.2Logging into ISY dashboard • If you do not have Java installed, please install the latest for your platform. You may find the latest Java downloads at http://www.java.com/getjava. Please choose the latest JRE for your platform. o Note: you need Java 1.8 and above •...
Figure 373: ISY Dashboard – Network settings 21.6.1.4Protocol A maximum protocol level supported by client or server. Please note that if you use TLS 1.2 and if the peer is requesting TLS 1.0, then ISY will downgrade to TLS 1.0. 21.6.1.5Strength The symmetric key strengths.
o TLS_RSA_WITH_AES_256_SHA, o TLS_RSA_WITH_AES_128_SHA2, o TLS_RSA_WITH_AES_128_SHA, 21.6.1.6Verify Whether or not client/server authentication should be performed on the peer: • The certificate must be valid • The certificate must be signed by a CA (see #d. CA Certificates), through a certificate path, which is known to ISY Care should be taken when Verify is checked for Server Settings.
Figure 374: ISY Dashboard – CA Certificates You can always use the trusted certificates in your browser to export (in PEM format) and then import into ISY. 21.6.1.8Certificate Management The operations for Server Certificates and Clients Certificates are identical. As such, in this section only Server Certificates are discussed.
Page 589
Figure 376: ISY Dashboard – Certificate information a. Key Strength Key Strength is the initial RSA Key Strength which may be 512, 1024, and 2048 bits. The higher the strength, the slower the initial connection with ISY (up to 10 seconds for 2048 bits).
Page 590
c. Export Cert. Use this button to export an existing certificate in PEM format. You may want to use this option to import ISY’s certificate into a browser’s (or other clients’) certificate store. d. Self-Signed If you wish to create a self signed certificate, make sure to enter and/or update (in case you are working on an existing certificate) all the necessary information in the fields and then click on the Self Signed button.
Make sure to click the Save button on SSL Certificate Management dialog once done. You may also want to keep a copy of your CSR in case you need to recreate it. This is because ISY creates a new Private Key for every CSR request and thus you will have to start the whole process from scratch in case the original CSR is lost/misplaced.
• For Password enter the password associated with your Account • For From you can leave it blank. If your service allows it, you can add a display name ensuring the format follows First-Name Last-Name:Email-Address" (Universal Devices) (Universal Devices) Page | 569...
• If your service supports TLS, make sure this box is checked • For timeout, use 1000 at the minimum. If you are using TLS increase it to 5000 (or more) • Click on the Save button • Test 21.8.3 Adding Recipients and Groups •...
• Under SMTP Settings ensure Use Default is Not checked • For SMTP Server enter smtp.gmail.com • For SMTP Port enter 587 • For User ID enter the username associated with your gmail account (e.g. abc@gmail.com) • For Password enter the password associated with your Account •...
22 NodeServer Notes 22.1 Introduction Universal Devices has created an ingenious system to extend the capabilities of the ISY devices. NodeServers are software packages or extensions which run on the Polyglot platform. There are several types of NodeServers available. NodeServers have been created using NodeLink, as well as using Raspberry PI devices with Polyglot.
Page 596
Nest2 Nest products (Thermostats, Cameras, Smoke/CO detectors) control OneWire OneWire NodeServer Presence-Poly A Polyglot Nodeserver to monitor proximity of devices for indoor positioning/presence PythonTemplate My Node Server Rachio Rachio NodeServer for UDI ISY994i Polyglot v2 Roomba Roomba node server for UDI ISY994i Polyglot v2 SenseMonitoring Connect Sense Energy Monitor to UDI ISY 994i SensiboSky...
22.2 Polyglot Quick Install Notes Use these quick instructions to install Raspberry PI, Polyglot and some NodeServers. If you need additional information, see following sections. RASBERRY PI INSTALL (note: ignore windows warnings about needing formatting or whatever) • run etcher (www.etcher.io) and follow instructions pointing to .img file downloaded/unzipped from raspberrypi.org website (raspbian lite) and install image on a microsd card.
Page 598
POLYGLOT INSTRUCTION: Instructions and file located at https://github.com/UniversalDevicesInc/polyglot-v2 • run polyglot install script (note, to paste into putty, just right click) (also note, this may take 5 or more minutes): wget -qO - https://raw.githubusercontent.com/UniversalDevicesInc/polyglot- v2/master/scripts/install.sh | bash -e • Enter the following to check if polyglot is running: sudo systemctl status polyglot-v2 •...
22.3 Installing Raspberry PI The following instructions are based on an excellent video produced by James Milne. For more detailed instructions see https://www.youtube.com/watch?v=w9I_bip6Vbo • The first thing that you will need to do is to purchase a Raspberry PI. You can find this on Amazon.com.
Page 600
Figure 380: Etcher Program • Cancel any “format disk” dialogs that may appear. • You will be presented with the “boot” drive. If you do not see it use the file explorer, find it, and open it. • You will need to create a “blank” file on this boot drive. Create a text file, call it SSH, and remove any extensions.
Page 601
country=US ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="MyWiFiNetwork" psk="aVeryStrongPassword" key_mgmt=WPA-PSK • Eject the SSD card from your computer and put it into your Raspberry PI. You should have the ethernet connected, as well as having the SSD card inserted before connecting power to your Raspberry PI. Power up the Raspberry PI. •...
22.4 Installing Polyglot The following instructions are based on an excellent video produced by James Milne. For more detailed instruction see https://www.youtube.com/watch?v=lWqAq4Xf- 9c&index=3&t=0s&list=PL418LHgc2F6uttVUW4cSDlpuX4BewQk8Y • To install Polyglot start by getting the script at: https://github.com/UniversalDevicesInc/polyglot-v2 wget -qO - https://raw.githubusercontent.com/UniversalDevicesInc/polyglot- v2/master/scripts/install.sh | bash -e •...
Page 604
• To verify that Polyglot was successfully installed type the following: sudo systemctl status polyglog-v2 You will see the status that Polyglot is active and running, such as follows: Figure 384: Polyglot Installation Status • Copy the address Polyglot is using, such as https://192.168.1.5:3000 •...
22.5 Installing NodeServers The following instructions are based on an excellent video produced by James Milne. For more detailed instructions see https://www.youtube.com/watch?v=EnlqOl__46A&t=19s • Login using username: admin, and password: admin. These are the initial values. • You will notice that the ISY was automatically discovered. However, you will need to change the username and password to what you use in your ISY.
Page 606
• If you go to the Dashboard screen you will see that you currently do not have any NodeServers installed. Figure 387: Dashboard Screen – No NodeServers • Once every couple of minutes, Polyglot will communicate with the ISY to see if there are any unmanaged NodeServers installed there, and if so that information will be brought in, such as NodeLink and ISY Portal.
Page 607
• To add a NodeServer go to the NodeServer->NodeServer Store screen. The example below shows that currently there are thirty-seven (37) NodeServers available for download. This number will change as developers create new ones. Figure 389: NodeServer Store Screen • Select the desired NodeServer and press the Install button. This will clone the repository from github with the files you need.
Page 608
• You will then need to add the NodeServer you just downloaded. Go to the NodeServer- >Add NodeServer screen. You will see the NodeServer you downloaded in the Available Node Servers section of the screen, as well as the Available Node Server Slot. Figure 390: Register New NodeServer Screen •...
Page 609
• If you check the Dashboard you will see the NodeServer. Figure 391: NodeServer Status • If you check in the ISY you will see the NodeServer listed under the Network. Figure 392: NodeServer Shown in ISY Network Tree Page | 586...
• If you check the Node Servers menu will see the NodeServer listed there. 22.6 NodeServer Development If you would like to develop NodeServers please refer to The ISY994 Developer’s Cookbook. Page | 587...
23 Issues & Troubleshooting 23.1 Front and Rear Panel LEDs Front Panel LEDs: Understanding the ISY’s front panel (see below) LEDs can be helpful when troubleshooting problems. Figure 393: ISY Front Panel Here is a table that helps explain each LED and LED combinations: LED or Combination Indicated Status Power on steady The PWR LED indicates that the ISY has power, either through the...
❑ Connect with a null modem cable, see 23.4.2 Connecting to the ISY Shell Using the Serial Port i. ❑ Login with HyperTerminal, 115200, 8, none, 1, none ii. ❑ Power cycle ISY, analyze startup output for issues (Universal Devices) Page | 589...
Page 613
5. ❑ Check for PLM issues a. ❑ Check PLM cable and RJ45 jack pins b. ❑ Power cycle ISY and PLM c. ❑ Watch ISY TX/RX LEDs and PLM LED d. ❑ First bootup flashing, then slow query blinks, then steady when done 6.
Page 614
Step 4: In the Admin, is there any device communication errors? 1. ❑ Check offending INSTEON device(s) a. ❑ ISY "Query Device" – Right click on device, Query on popup menu b. ❑ Power cycle offending INSTEON device, ISY query again 2.
Step 6: In the Admin, do timestamps exist for program execution? 1. ❑ Are the programs enabled 2. ❑ Check ISY logs for signs of execution 3. ❑ Is the program code broken (ie. <Not Specified> devices) 4. ❑ Program syntax/logic issues Step 7: No Status updates and/or multiple login prompts? 1.
23.3.2 System Status The System Status screen shows you basic information about the ISY, such as the date and time it was last started, the size of the installed SD card, and how much free space is available. To access the System Status screen, click on the Tools pull-down menu, then Diagnostics, then System Status.
Note: In order to telnet to ISY, ISY's current IP address must be known. This can be found in the ISY, in the Help->About menu. You can also find it if you log into your router. There should be a DHCP client table, which contains an ISY entry with the IP address. (Universal Devices) Page | 594...
Page 618
If using the Windows telnet command (Note: The Windows telnet command is installed by default on Windows XP, but not on Vista. On Vista, you will need to install the telnet command from Windows Components.): • Go to the Start menu and choose Run. •...
Figure 395:Telnet Login The ISY Shell is displayed. All input to the ISY shell must be in UPPER CASE. Figure 396:ISY Shell 23.4.2 Connecting to the ISY Shell Using the Serial Port Connect one end of a serial null-modem cable (included with PRO version) to ISY's Port B, and connect the other end to the serial connector (or USB-to-serial adapter) on the computer.
Page 620
Figure 397:HyperTerminal Login The ISY Shell is displayed. All input to the ISY shell must be in UPPER CASE. Page | 597...
CI - Configure Infra-Red To modify the settings for Infra-red use (only available on ISY-99i/IR) • IR Hold detection [Default = 600 MilliSec](range 50-3000 MilliSec) • IR Hold maintain [Default = 300 MilliSec](range 50-3000 MilliSec) (Universal Devices) Page | 598...
23.5.2 CL – Configure Maximum Log Size To change the amount of log space allowed, type CL at the shell prompt. • Default = 3 MB • Range = 1-16 MB 23.5.3 CME - Configure Maximum Emails per minute • Default = 60 •...
23.5.12 FR – Factory Reset To reset the ISY to factory settings, type FR at the shell prompt. Note: By performing a factory reset, the following information shall be lost (irrecoverable) and the Username and Password shall revert back to admin/admin. •...
23.5.18 SM – Show Memory Utilization To view the ISY’s memory utilization, type SM at the shell prompt. 23.5.19 SMR - Maximum Retries Before Client Is Considered Offline • Default = 3 • Range 1-255 23.5.20 ST – Show System Time To view the ISY’s system time, type ST at the shell prompt.
Page 626
Figure 399: Configure Java Menu Option Select the Settings button in the General tab. Figure 400: Java Control Panel – General Tab Page | 603...
Page 627
Select the Delete Files… button in the Temporary Files Setting popup Figure 401: Temporary Files Settings Popup Select the OK button in the Delete Files and Applications popup Figure 402: Delete Files and Applications Popup Page | 604...
23.7 INSTEON Communication Issues It is important to have a pair of INSTEON AccessPoints or other INSTEON RF devices (or an INSTEON-compatible hardwired coupler) installed to ensure good communications between both legs of power in your home. See Smarthome’s documentation for ensuring your AccessPoints are installed on opposite legs of power.
23.7.1 Cannot determine Insteon Engine One of the most common problems which occur is when you are trying to add a new device. The message displayed says Cannot determine Insteon Engine. This actual meaning of this cryptic message is that the ISY cannot communicate with the desired device. Figure 403: Cannot determine Insteon Engine Message I will step thru the sequence of events in order for you to understand what is going on: Open the Event Viewer found in the Tools->Diagnostics menu or select the Event Viewer...
Page 630
Figure 405: Event Viewer Popup Try adding your device again. Figure 406: INSTEON/A10/X10 Device Popup You will see the information showing that an attempt is being made to add the device. Page | 607...
Page 631
Figure 407: New Insteon Devices Status Popup Upon failure when trying to add the device, the following popup will be displayed. Figure 408: Cannot determine Insteon Engine Message Examine the Event Viewer log. Figure 409: Event Viewer with events following failure You will see a series of INST-TX-T1 and INST-ACK lines.
The Event Viewer provides a real-time display of traffic occurring on the INSTEON network, which may be saved to a log file. To open the Event Viewer, open the Tools menu Diagnostics sub-menu, and choose Event Viewer. (Universal Devices) Page | 609...
Page 633
Figure 411: Event Viewer Menu The Event Viewer window may be sized. At the bottom of the window are buttons to Clear the window, Save Log To ... a file, and Close the window. The Level drop-down allows setting the display level to None, Status/Operational events, More Info, or Device communications events.
Page 634
Figure 412: Event Viewer - None In this image the ISY was reading (PEEKing) the link database on a device at level Device communications events. None Stops events from being shown in the Event Viewer. Useful when you have captured a series of events and wish to view them without the informavtion scrolling.
Page 635
For INSTEON devices, the action code may be one of: INSTEON Action Codes • DON Device On • DOF Device Off • DFON Device Fast On • DFOF Device Fast Off • BMAN Begin Manual Change • SMAN Stop Manual Change •...
Viewing the Log File: From the ISY Administrative Console select the Tools/Log menu item. A window opens asking if you wish to view the Log in Excel. Selecting Yes produces a file and opens Excel. (Universal Devices) Page | 613...
Excel. Selecting Yes will produce a file and open Excel. Selecting No will open a file requester allowing you to save the file to a location of your choice. Start your database program and open the saved log file. (Universal Devices) Page | 614...
• When opening the log in Excel you will be requested to allow macros to run. You must select OK for the macro to run and to have access to the log file. The log file contains the date and category intersections for all the devices linked to ISY. •...
23.9.3 System Errors System Errors Number Error Message REQUEST_FAILED_ERROR DEVICE COMMUNICATION ERROR timed out waiting for the device to respond or got a NACK DEVICE RETURNED INVALID NODE an address that we don't have in our nodemap DEVICE RETURNED INVALID ADDRESS communication error UNEXPECTED DEVICE RESPONSE MAIN LOCAL DEVICE BLANK...
Page 640
System Errors Number Error Message -7002 D2D FACTORY FILE NOT FOUND tried to use a static d2d file but it doesn't exist -7003 D2D MALFORMED RULE MISSING SENSE TAG the <Sense> tag is missing -7004 D2D MALFORMED RULE MISSING SENSE ID ATTR missing the id attribute in the sense tag -7005...
Page 641
System Errors Number Error Message -7051 D2D UNEXPECTED TAG IN SENSE Found an unexpected tag in the XML stream -7052 D2D UNEXPECTED TAG IN CONDITION Found an unexpected tag in the XML stream -7053 D2D UNEXPECTED TAG IN RESPOND Found an unexpected tag in the XML stream -7501 DIAG PARSER ERROR...
Page 642
System Errors Number Error Message -10034 SET SESSION KEY UNSUPPORTED SIGN ALGORITHM -10035 SET SESSION CIPHER TEXT ENC KEY TO DEVICE BASE64 DECODE FAILED -10036 SET SESSION CIPHER TEXT ENC KEY FROM DEVICE BASE64 DECODE FAILED -10037 SET SESSION CIPHER TEXT SIGN KEY TO DEVICE BASE64 DECODE FAILED -10038 SET SESSION CIPHER TEXT SIGN KEY FROM DEVICE BASE64...
Page 643
System Errors Number Error Message -10071 DECRYPT AND EXECUTE EXPIRED SESSION -10072 DECRYPT AND EXECUTE SET IV FAILED -10073 DECRYPT AND EXECUTE DECRYPTION FAILED -10074 DECRYPT AND EXECUTE IV BASE 64 DECODE FAILED -10001 SSL DECODING LENGTHS FAILED -10002 SSL DECODING PMOD FAILED -10003 SSL DECODING PEXP FAILED -10004...
System Errors Number Error Message -271006 PORTAL_SECURITY_KEY_EXPIRED_ERROR Portal authorization failed since the key expired -271007 PORTAL_SECURITY_INVALID_KEY_LENGTH_ERROR Tried to register an ISY with the portal but invalid key length was received -271008 PORTAL_SECURITY_KEY_VALIDATION_FAILED_ERROR Tried to register an ISY with the portal but validation failed -281001 RTC_READ_ERROR Failed reading the RTC -281002 RTC_READ_ERROR_ADJUST_DST...
Page 648
Web Services/SOAP Errors Number Error Message Invalid Session Not used in 2.6.1 and above Not Authorized Credentials are either wrong or not provided Signature Failed Not used in 2.6.1 and above Signature Missing Not used in 2.6.1 and above Invalid Sequence Not used in 2.6.1 and above Control URL is the location where SOAP Invalid Control URL...
23.9.5 SMTP Errors The following email errors are enumerated in the Control field (column 2) and are related to Error -50001 (SMTP_SERVER_FAILURE). SMTP Errors Number Error NETWORK_ERROR SMTP_CONNECT_FAILED SMTP_SERVER_NOT_RESPONDING SMTP_EHLO_TIMEOUT SMTP_FROM_TIMEOUT SMTP_TO_TIMEOUT SMTP_DATA_TIMEOUT SMTP_BODY_TIMEOUT SMTP_AUTH_LOGIN_NOT_ACCEPTED SMTP_USERID_NOT_ACCEPTED SMTP_PASSWORD_NOT_ACCEPTED SMTP_STARTTLS_NOT_ACCEPTED SMTP_TLS_NEGOTIATIONS_FAILED SMTP_WRITE_FAILED SMTP_UNSUPPORTED_AUTH_METHOD Page | 626...
23.9.6 Driver Errors The following sub errors are enumerated in the Control field (column 2) and are related to errors -200xxx. Driver Errors Number Error Failed writing the highwater mark Failed writing PLM slave link Failed writing PLM master link Failed reading device memory Failed writing device memory Failed reading device link...
23.10 Factory Reset There are only a few reasons why you might want to factory reset your ISY. In most cases, a factory reset will not help any problems you might be having. Please be sure to thoroughly investigate your problem before trying a factory reset. If possible, be sure to have a known good backup of your ISY’s configuration before factory resetting.
Page 652
Figure 417: ISY with Cover Removed Once you screw the ISY back together, you will need to reload the firmware. Proceed to the paragraph labeled “Reloading The ISY Firmware and Restoring From Backup”. Reloading the ISY Firmware and Restoring From Backup Once you’ve replaced your ISY’s SD card, you will need to re-load the firmware as well as restore your configuration from a backup.
23.13.1 Information common to all models • The default (case sensitive) UserID = admin • The default (case sensitive) Password = admin 23.13.2 ISY-994i Series • Make sure the ISY has been powered on for at least a minute. (Universal Devices)
• Use a sharp non-conductive object like a toothpick to press and hold in the Reset Button. • Continue holding for approximately 4 seconds until all four (Rx, Tx, Mem, & Error) lights blink on/off in unison (Once per second). •...
• Early ISY's will have a MAC address which begins with the segments 00:03; these MAC addresses are from NetBurner. • Newer ISY's will have a MAC address which begins with the segments 00:21:B9, which is the Universal Devices, Inc. ID. 23.14 Resetting Your ISY 23.14.1 Reboot...
IMPORTANT - Formatting your SD card should only be done after consulting with support!! It is best to complete this process from a local LAN connection and make sure that all Firewall and Anti-virus software is disabled during it. (Universal Devices) Page | 633...
23.15.1 Change the SD Card (skip this step if you’re only formatting the SD card) • Remove the screws that attach the lid to the ISY. Figure 418: Inside View of ISY • Remove the four screws that secure the circuit board inside the case (ISY-99i only) o Please note: newer ISYs now have access to the SD Card from the outside of the unit so no disassembly is required •...
• Devices and programs should be restored and back to normal. 23.16 Update the ISY Firmware The ISY unit comes with the capability (firmware 2.6 or greater) to automatically update your firmware. You no longer need a special username and password to automatically (Universal Devices) Page | 635...
update your firmware. You do need to ensure that you have enabled Internet access for your ISY unit. 23.16.1 Manual Update the Firmware If your ISY does not have an internet connection you can still update your ISY manually. • Obtain a copy of the updated Firmware from UDI - Download the Firmware from: http://forum.universal-devices.com/viewforum.php?f=25 or contact us for a copy •...
Page 660
Figure 420: ISY – Select file Your ISY will now update the firmware and reboot when it is finished. Page | 637...
You can run "Restore Devices" at any time, but it is faster to run it right after you have initially linked your devices because it only has to delete links, which is much faster than writing out whole links. (Universal Devices) Page | 638...
24.1.4 I wish I had thought of the saving my clean slate before I got all mine reprogrammed. What steps should I take if I want to redo everything? • It's not really necessary, there is some time/risk involved to do this and is an alternative to deleting all of your scenes (especially if you have a lot of scenes), but if you're one of those guys that just has to have it all here are the steps to go thru it all over again.
• None of the other 4 LEDs should be constantly illuminated. LEDs are only illuminated if; Transmitting to PLM (TX), Receiving from PLM (RX), Writing to Memory (MEM), System error (Error)! If all 4 LEDs are illuminated solid then the ISY is most likely locked up and will need to be power cycled according to the directions in the previous question.
24.1.13 Is there a way I can control the lights on a KeypadLinc with INSTEON commands? • If the KeypadLinc button is part of a scene, the lights will turn on/off either from the GUI (when issuing a scene/group command) or by other controllers linked to it. ISY does not work as a pass through for INSTEON commands;...
EZRain Zone programs. Did I mess up the linking or is there a way to do this? • As far as EZRain, you have not messed anything up. We are still a bit ambivalent as to what should be done with "not purely" INSTEON features such as Sprinkler Zones, number of zones, programming zones, etc.
configuration. We are working on enabling Linksys as well but, to date, we have gotten a little support. • Any plans in the works to let the ISY act as a server to HA software on the PC? (This might be a good option so you can leave the PC on for ease if use/graphical interface/additional features, but if you shut off, it syncs and most if not all of the functionality is saved on the ISY.) •...
automation programs. Planned support for the EZBridge include "HouseLinc" from Smarthome, "mControl" from Embedded Automation or "Indigo" from Perceptive Automation. • In short, with EZBridge IP, you still need to either install their free "utility" or buy another home automation software (HouseLinc, mControl, or Indigo) to be installed on your computer (stationary).
protocol specs. So, if you were implying that 3rd parties could use ISY to issue INSTEON commands (such as PEEK , POKE, etc.) then the answer is NO. ISY is not a pass through bridge. 24.4.5 What OS does this device run on; can I get the source code? •...
24.4.11 Have you thought about an open source project around the ISY? • We actually thought about doing precisely that but the OS is licensed and, as such, can never truly become free. Thus, we decided to go for the next best alternative: provide free SDKs to whomever wants to write network applications for ISY.
24.5 Compatibility 24.5.1 Is the ISY compatible with SimpleHomeNet products? ISY works with most SimpleHomeNet products. As a matter of fact, with ISY, you can link an EZRain Sprinkler valve to a button on a controller (KeypadLinc, ControLinc, etc.). We are currently working on supporting EZIO such that you could either link the dry contacts (inputs) to another (linkable) INSTEON device or use Triggers to do a series of actions (up to 6) based on EZIOs inputs.
24.6.1.1Why do you have so little flash and RAM? • Because we do not need more. We have a multi-tasked web server with an SD based file-system on board. With the current configuration, we still have around 75K of free space left on the flash and 300K on the RAM. 24.6.2 •...
• Web Services (SOAP 1.2) ... a little behind on the documentation 25 Glossary Action: Commands that are run when an IF statement is true (a THEN Action) or when an IF statement is no longer true (an ELSE Action). Examples are On, Off, Fast On, Query, etc.
Page 673
devices (possibly including itself) to turn on or off or to change state in some more subtle way. INSTEON scenes offer practical solutions to many domestic lighting problems: tap one key and so set each of the lights in the family room to that state for which the home theatre is most effective, tap another to ensure all basement lights are switched off once at the top of the stairs, or a third to ensure the staircase and upstairs landing lights are both on before a guest is dispatched to...
Page 674
Scene: A collection of INSTEON devices that react to and with one another in various ways. Scenes are comprised of both Responders and Controllers. Scenes may be initiated by an INSTEON event or by a Program. Theme: Several pre-defined ISY Administrative Console color schemes to available from the File menu.
Page 675
create surges at power on such as traditional fluorescent lights and general purpose electrical sockets. Page | 652...
26 Table of Figures Figure 1: ISY Front Panel ......................... 3 Figure 2: Login Window .......................... 6 Figure 3: Help/About Menu ........................7 Figure 4: My URL........................... 7 Figure 5: ISY’s Home Tab ........................9 Figure 6: UDAjax Main Screen ....................... 12 Figure 7: UDAjax Devices &...
Page 677
Figure 48: Help Menu .......................... 48 Figure 49: Help -> About Menu ......................49 Figure 50: Main Tab ..........................50 Figure 51: Programs -> Summary Tab ...................... 51 Figure 52: ISY Toolbar .......................... 52 Figure 53: Programs -> Detail Tab......................53 Figure 54: My Programs Popup Menu .....................
Page 678
Figure 98: System Busy Dialog ......................101 Figure 99: Scene menu on a right mouse button click ................102 Figure 100: Apply Changes and Copy Attributes ..................104 Figure 101: Screen Node expanded ...................... 104 Figure 102: Living Room – Movie Scene ....................105 Figure 103: The Link Management Menu ....................
Page 679
Figure 147: Networking Options ......................154 Figure 148: Program Menu ......................... 155 Figure 149: New Program ........................156 Figure 150: Save Changes ........................156 Figure 151: Schedule Window ......................157 Figure 152: Conditional Program ......................159 Figure 153: Stop Program ........................160 Figure 154: Creating a Program ......................
Page 680
Figure 196: Scene example ......................... 336 Figure 197: One Group example ......................337 Figure 198: Two Group example ......................337 Figure 199: Three Group example ......................338 Figure 200: Launching the Linking Command ..................349 Figure 201: Select the Linking Mode ..................... 349 Figure 202: Answer the Warning ......................
Page 682
Figure 296: Google Home – Home Control ..................... 467 Figure 297: Google Home – Add spokens ....................467 Figure 298: Google Home – Select Universal Devices ................468 Figure 299: Google Home – Log into the UDI Portal ................. 468 Figure 300: Google Home –...
Need help?
Do you have a question about the ISY-994i and is the answer not in the manual?
Questions and answers