Table of Contents

Getting Started Guide

Welcome to Indigo 7.4!

Indigo is a powerful Mac-based home control server that integrates an assortment of popular Z-Wave®, INSTEON and X10 hardware devices, as well as a variety of other hardware via 3rd party plugins, to provide monitoring and control of your home. Depending on your needs and budget, you can create a simple system that controls only a couple of lights or you can automate your entire home.

We recommend that you read through all of the topics in this Introduction section to get a firm grasp of the pieces required to begin your home automation experience.

Indigo Software and Mac Requirements

To install the Indigo software, you'll need a Mac that meets these OS and hardware requirements:

Indigo requires that you leave your Mac running all the time (though the display can go to sleep) in order to control your home automation so you should plan where you are going to locate your Mac.

Indigo Home Automation Technology Support

The other major piece of the home automation puzzle are the devices that you want to control. Lights, thermostats, sprinklers, door locks, motion sensors, alarm panels, A/V equipment, etc. Indigo supports a large variety of these devices.

Out of the box, Indigo supports the following Home Automation protocols (simultaneously) via separate Interface Hardware devices:

Z-Wave

Z-Wave is a very popular home automation technology that's used worldwide. There are many different manufacturers of Z-Wave devices so the selection is quite good. To use Z-Wave with Indigo, you'll need a Z-Wave interface (often referred to as a dongle): Indigo supports Z-Wave via a variety of Hardware Interfaces.

Indigo currently supports the following types of Z-Wave devices:

  • ON/OFF devices (plug-in modules, switches, and outlets)
  • Dimmers (plug-in modules and switches)
  • Sensors (contact, magnetic, motion, temperature, etc.)
  • Thermostats
  • Locks

Other device types will be added over time. Check our Compatible Devices list to see if a specific module has been tested. Note however that just because a module isn't listed doesn't mean that it won't work - Z-Wave is architected such that devices that correctly support Z-Wave features should automatically work. There are so many different devices from many different manufacturers that we will never be able to test them all. If you have a device that isn't listed but works, please feel free to report it to us and we'll add it to the list. There is a very simple mechanism to report devices, described in Editing a Z-Wave Device's Properties towards the end of that section.

INSTEON

INSTEON is a protocol developed by SmartLabs, parent company of Smarthome.com, which is widely used in North America and is moving into other markets as well. There are a few 3rd party vendors that make INSTEON hardware but most devices are made by SmartLabs. To use INSTEON with Indigo, you'll need an INSTEON interface. You can find a complete list of Insteon interfaces that are supported on our Built-in Interface Hardware Support list. Indigo supports the vast majority of INSTEON devices - see our Compatible Devices list for a complete list.

X10

X10 is a legacy technology that works primarily over the power line though some devices are wireless (using the X10 RF protocol). We don't recommend anyone start a new home automation system using X10 because of it's poor reliability and relative lack of X10 hardware - however, if you have existing X10 devices you can definitely use them with Indigo if you have a compatible X10 interface. You can find a complete list of X10 interfaces that are supported on our Built-in Interface Hardware Support list.

Other Devices

If you don't have any of the above hardware, you can still install and use Indigo - particularly if you have hardware supported by one of the many 3rd party plugins. For instance: RFXtrx433 with support for Home Easy/Chacon, X10 RF, LightwaveRF, and many different types of sensors; Ecobee and a variety of TRV Thermostats; Alarm Panels; A/V equipment; etc. See our Plugin Store for all available 3rd party plugins. Indigo also ships with some useful plugins out of the box.

Other Sources for Help

For specific questions or discussions on the hardware above, we recommend you join us on our online forum.

You can also visit our web site for valuable support resources:

  • The FAQ has answers to the most common questions
  • Browse and search our How-To Wiki for detailed information and step-by-step instructions on completing common home automation tasks in Indigo
  • Add lots of extra functionality via 3rd Party Plugins available in our Plugin Store
  • Visit our User Contribution Library to download the latest plugins, scripts, and icons/graphics for extending Indigo

Now, you know what the parts of your system will be and where to go for more information and help. Now let's get started with the actual installation.

Installing Indigo

Indigo can run as a standalone application on a single Mac or can be run in a client/server mode on two or more Macs. In either case, you must first run the Indigo installer on the main Mac (also referred to as the server Mac) to which the home automation interface hardware (Z-Stick, PowerLinc, CM15, etc.) will be connected. Just download the latest Indigo installer (you must be logged in to your Indigo Account to see the downloads available to you). This should download the disk image. In Safari, click the downloads button (the down arrow to the right of the URL/search bar). You should see an entry titled “Indigo.dmg”. Double-click that and you should get switched to the Finder and a dialog will show that the disk image is being mounted. Once it's mounted, a window will open with the following files:

  1. A ReadMe.html file - read this for any late breaking information about Indigo or the installation process.
  2. The Indigo Installer.pkg file - double click this to start the Indigo installation. Follow the instructions provided by the installer. On the Installation Type screen, press the Install button (do not use Customize) to install all the Indigo packages (Server, Server Scripts, Drivers, and Client) on your designated hard drive. Note: you must install and run Indigo from an account on your Mac that has administrator privileges.

Location of Indigo Files after Installation

The Indigo 7.4 application can be found here:

  /Applications/Indigo 7.4.app

And the Indigo database files, log files, scripts files, and other settings/support files are stored in:

  /Library/Application Support/Perceptive Automation/Indigo 7.4/
 

By default database files are stored in the Databases folder in that folder.

Note: this is the Library folder at the top level of your hard drive, not the one in your User folder. Lion and greater hide these folders by default, but if you select the Go→Go to Folder… menu item in the Finder and paste in the path above it will open that folder in a Finder window.

Backing Up Indigo

Backing up your Indigo installation is very simple: just make sure that your backup program is backing up this folder:

  
  /Library/Application Support/Perceptive Automation/
  

Note: this is the Library folder at the top level of your hard drive, not the one in your User folder. Use the Go→Go to Folder… menu item in the Finder and paste in the path above to get there easily). Another thing to note is that it's possible that you've stored your database in a non-standard location, like for instance the Documents folder in the home folder for the account under which Indigo is installed. If that's the case you'll need to make sure that you've backed it up as well. You can tell the location of your database file by Command-clicking the database name in the title bar of the Home Window.

Time Machine will do this by default. To recover, just recover that directory and then run the Indigo 7.4 installer again (which will repair any permission issues that Time Machine may have introduced).

Upgrading from a Previous Version

The upgrade process is pretty straight-forward, but below you'll find the specifics for each older version.

Upgrading from Indigo 7.3

For this release, we've changed the server install path to:

  /Library/Application Support/Perceptive Automation/Indigo 7.4/

and the Indigo Mac Client app is now named:

  /Applications/Indigo 7.4.app

In addition to the automatic upgrade logic described below (for upgrades from Indigo 6 and ealier), the installer moves previously installed control page images and web server plugins to the new install location.

If you experience the error This version of the Indigo client application is not compatible with the Indigo Server when trying to launch Indigo then that means the Indigo client version being launched doesn't match the version of Indigo Server currently being run. This can occur when an older version of Indigo Server is still running or an older version of Indigo Client was launched by mistake. To fix this follow these steps:

  1. Shut down the Indigo Server by selecting the Indigo 7.3→Stop Server menu item in the Mac client. This will shutdown the Indigo Server regardless of which version is running.
  2. Quit the Mac client via the Indigo 7.3→Quit Indigo menu item.
  3. Open the /Applications folder on your Mac and launch the version of Indigo you wish to use. This will have it launch the correct version of the Indigo Server when it starts.

Once you are sure you are ready to run the latest version of Indigo can delete (backup first!) the older Indigo Server install paths in /Library/Application Support/Perceptive Automation/ and client applications in /Applications.

Upgrading from Indigo 7.2

For this release, we've changed the server install path to:

  /Library/Application Support/Perceptive Automation/Indigo 7.4/

and the Indigo Mac Client app is now named:

  /Applications/Indigo 7.4.app

In addition to the automatic upgrade logic described below (for upgrades from Indigo 6 and ealier), the installer moves previously installed control page images and web server plugins to the new install location.

If you experience the error This version of the Indigo client application is not compatible with the Indigo Server when trying to launch Indigo then that means the Indigo client version being launched doesn't match the version of Indigo Server currently being run. This can occur when an older version of Indigo Server is still running or an older version of Indigo Client was launched by mistake. To fix this follow these steps:

  1. Shut down the Indigo Server by selecting the Indigo 7.2→Stop Server menu item in the Mac client. This will shutdown the Indigo Server regardless of which version is running.
  2. Quit the Mac client via the Indigo 7.2→Quit Indigo menu item.
  3. Open the /Applications folder on your Mac and launch the version of Indigo you wish to use. This will have it launch the correct version of the Indigo Server when it starts.

Once you are sure you are ready to run the latest version of Indigo can delete (backup first!) the older Indigo Server install paths in /Library/Application Support/Perceptive Automation/ and client applications in /Applications.

Upgrading from Indigo 7, or 7.1

For this release, we've changed the server install path to:

  /Library/Application Support/Perceptive Automation/Indigo 7.4/

and the Indigo Mac Client app is now named:

  /Applications/Indigo 7.4.app

In addition to the automatic upgrade logic described below (for upgrades from Indigo 6 and ealier), the installer is now smarter and moves previously installed control page images and web server plugins to the new instsall location.

If you experience the error This version of the Indigo client application is not compatible with the Indigo Server when trying to launch Indigo then that means the Indigo client version being launched doesn't match the version of Indigo Server currently being run. This can occur when an older version of Indigo Server is still running or an older version of Indigo Client was launched by mistake. To fix this follow these steps:

  1. Shut down the Indigo Server by selecting the Indigo 7→Stop Server menu item in the Mac client. This will shutdown the Indigo Server regardless of which version is running.
  2. Quit the Mac client via the Indigo 7→Quit Indigo menu item.
  3. Open the /Applications folder on your Mac and launch the version of Indigo you wish to use. This will have it launch the correct version of the Indigo Server when it starts.

Once you are sure you are ready to run the latest version of Indigo can delete (backup first!) the older Indigo Server install paths in /Library/Application Support/Perceptive Automation/ and client applications in /Applications.

Upgrading from Indigo 6, 5, 4, 3, or 2

First, run the Indigo 7.4 installer. Then look through this list for any final actions.

  • Indigo 7 moved to Python 2.7, so if you installed any shared scripts (as outlined here) then you'll need to move them from: /Library/Python/2.6/site-packages/ to /Library/Python/2.7/site-packages/
  • Indigo will automatically copy your old preference file into the new location during the installation.
  • Indigo will also copy over any enabled and disabled Plugins from Indigo 6 or 5. If a newer version of a plugin is included in Indigo 7, then it will automatically be installed and used on launch.
  • Your old Indigo database file will automatically be converted to the new Indigo 7 file format on first launch. A copy of your database will automatically be made before it is converted, but any changes made in Indigo to your database will not be available in older versions of Indigo.
  • If you are upgrading from Indigo 6, you'll need to manually copy over any custom scripts, web server plugins, and/or custom control page images that you may have added. They can be found in the following directories:
    • Scripts: /Library/Application Support/Perceptive Automation/Indigo 6/Scripts/
    • Control Page Images: /Library/Application Support/Perceptive Automation/Indigo 6/IndigoWebServer/images/
    • Web Server Plugins: /Library/Application Support/Perceptive Automation/Indigo 6/IndigoWebServer/plugins/
  • If you are upgrading from Indigo 5, you'll need to manually copy over any custom scripts, web server plugins, and/or custom control page images that you may have added. They can be found in the following directories:
    • Scripts: /Library/Application Support/Perceptive Automation/Indigo 5/Scripts/
    • Control Page Images: /Library/Application Support/Perceptive Automation/Indigo 5/IndigoWebServer/images/
    • Web Server Plugins: /Library/Application Support/Perceptive Automation/Indigo 5/IndigoWebServer/plugins/
  • If you are upgrading from Indigo 4, you'll need to manually copy over any custom scripts, web server plugins, and/or custom control page images that you may have added. They can be found in the following directories:
    • Scripts: /Library/Application Support/Perceptive Automation/Indigo 4/Scripts/
    • Control Page Images: /Library/Application Support/Perceptive Automation/Indigo 4/IndigoWebServer/images/
    • Web Server Plugins: /Library/Application Support/Perceptive Automation/Indigo 4/IndigoWebServer/plugins/
  • If you are upgrading from Indigo 3 or Indigo 2, you'll need to manually copy over any custom scripts and/or custom control page images that you may have added. They can be found in the following directories:
    • Scripts: /Library/Application Support/Perceptive Automation/Indigo 2/Scripts/
    • Control Page Images: /Library/Application Support/Perceptive Automation/Indigo 2/IndigoWebServer/images/

NOTE: Do not replace the Indigo 7(.X) versions of any file with your Indigo 6, 5, 4, 3, or 2 files. They have been modified to run optimally under Indigo 7(.X).

AppleScript after Upgrading

Indigo no longer supports AppleScripts that target the Indigo Server process. Check out the AppleScript Integration Strategies article for options on converting your AppleScripts.

When Indigo first opens an Indigo 7.3 (or earlier) database, it will go through the database and identify items that will need changing and items you should look at to ensure that it will continue to function. The Event Log will contain the necessary information about where you can find those items. You can also select the Help→Show AppleScript Usage in Event Log menu item and Indigo will show you the list of those items in the Event Log window again.

Embedded AppleScripts and AppleScript conditionals will need to be evaluated to best determine how to handle them. In those edit boxes in the UI, we've commented out the previous AppleScript for reference if you wish to convert them. Both of those script edit boxes now will only accept Python scripts.

If you have Execute Script actions that point to AppleScripts, those will continue to be run, though if the script contains a tell “IndigoServer” or using terms from “IndigoServer” they will fail.

Upgrading from Indigo 1.x

  • Indigo will automatically copy your old preference file into the new location on first launch.
  • Your old Indigo database file will automatically be converted to the new Indigo 7 file format on first launch. You will be prompted to save the new copy of the Indigo database file. The Indigo 7(.X) file format is not compatible with Indigo 1.x. You should not replace or delete your older Indigo 1.x database file. Any changes made in Indigo 7(.X) to your database settings will not be available in older versions of Indigo.
  • You will need to manually copy any of your custom script files. You only need to move the files from the Indigo 1.x location ([~your user home folder]/Documents/Indigo User Data/Scripts/) to the new folder specified above if you modified or added new script or script attachment files.

NOTE: Do not replace the Indigo 7(.X) versions of any file with your Indigo 1.x files. They have been modified to run optimally under Indigo 7(.X).

Installing Indigo Client on another Mac (optional)

If you have only a single Mac, then your installation is now complete and you are ready to start Indigo. However, Indigo has been designed as a client/server application to allow remote control and configuration from anywhere (*extra network configuration is required if you want to access your server from a client over the Internet and is outside the scope of this manual - post on the online support forum for assistance). The client-only installation process installs only the files needed to remotely access the primary Indigo server running on your main Mac.

  1. Copy the Indigo Installer.mpkg file to your other Mac.
  2. Double click the Indigo Installer.mpkg icon to start the Indigo installation.
  3. Follow the instructions provided by the installer process. On the Installation Type screen, press the Customize button and then deselect all the package options (Indigo Server, Indigo Plugins, Indigo Server Scripts, Indigo Drivers) except for the Indigo Client package.
  4. Press the Install button to install just the Indigo Client package.
  5. Note: It is not necessary to restart your Mac after installing the Indigo Client package only.

If you have other Macs on your home network, then you can optionally repeat the above Indigo Client installation on each of them.

Now you can start Indigo and configure the server, and then remotely control Indigo from your iPad, iPhone or iPod Touch using Indigo Touch, a Web browser or the Indigo Client.

Moving an Indigo 7 Installation to another Mac

Note this process can also be followed to recover from a backup, though if your system crashed then you may need to contact us directly to perform step #1 for you.

  1. Deactivate Indigo on your Mac by selecting the Indigo 7.4→License Details… menu item and clicking the Deactivate License button. Do this while the Indigo Server is still running (do not shutdown the Indigo Server first)
  2. Copy this folder over to the new Mac: /Library/Application Support/Perceptive Automation/Indigo 7.4/ (if restoring from a backup, you'll need to locate this folder in whatever backup system you use)
  3. Install Indigo 7.4 on the new Mac (download and run the installer - you must be logged in to your Indigo Account to see all the installers available to you)

NOTE: this is not the Library folder that's in your home directory - it's the one at the top level of your hard drive. The easiest way to get there is to select the Go→Go To Folder… menu item in the Finder and paste in this:

/Library/Application Support/

It'll open the correct folder and you'll see the “Perceptive Automation” folder - that's the one you want to copy over.

That should get all of your customizations and allow the installer to update anything as necessary.

You may also need to install the drivers for the technology you use - see the appropriate section below for details.

Uninstalling Indigo

To uninstall the Indigo Server and all of its data and configuration files, first deactivate Indigo on your Mac by selecting the Indigo 7.4→License Details… menu item and clicking the Deactivate License button. You'll get the following warning dialog:

Then make sure that you have the server and client completely shut down (select Stop Server from the Indigo 7.4 menu if the server is still running before you quit the Indigo Mac Client).

Then, delete the following files:

  • /Library/Application Support/Perceptive Automation/Indigo 7.4/
  • /System/Library/Extensions/IndigoOverrides.kext
  • ~(your user folder)/Library/LaunchAgents/com.perceptiveautomation.IndigoServer2.plist

To also uninstall the Indigo Client delete the following files:

  • /Applications/Indigo 7.4.app
  • ~(your user folder)/Library/Preferences/com.perceptiveautomation.indigo-client6.plist
  • ~(your user folder)/Library/Preferences/Indigo 7 Client Prefs.indiPref
  • ~(your user folder)/Library/Preferences/Indigo 7 Client Settings.indiPref

Note your Mac has two different Library folders. One is in your the home directory of the account Indigo runs under and the other is at the root level of the drive. In Mac OS X Lion and higher the user's home Library folder is hidden in the Finder so you'll have to use the Go to Folder… menu item in the Finder and type in the path (~/Library/Preferences) which will open a Finder window to the Preferences folder.

If you remove the Mac client application before shutting down the server, then delete the rest of the files above and reboot.

Uninstalling Older Indigo Versions

To uninstall older versions but leave 7.4 installed correctly, delete these:

  • Indigo 7.3:
    • /Library/Application Support/Perceptive Automation/Indigo 7.3/
    • /Applications/Indigo 7.3.app
  • Indigo 7.2:
    • /Library/Application Support/Perceptive Automation/Indigo 7.2/
    • /Applications/Indigo 7.2.app
  • Indigo 7.0 and 7.1:
    • /Library/Application Support/Perceptive Automation/Indigo 7/
    • /Applications/Indigo 7.app
  • Indigo 6 and prior (substitute the previous version # for 6):
    • /Library/Application Support/Perceptive Automation/Indigo 6/
    • /Applications/Indigo 6.app

Note that these (specifically the first item in each) serve as a backup in case you want to revert, so you might want to consider zipping up the folder (not the client app) and saving it off before deleting if you think you might want to revert for some reason.

Starting Indigo Server

Indigo can run as a standalone application or can be run in a client/server mode. The latter allows the server to run invisibly in the background without the client application UI showing and is the recommended option. Regardless of which you are doing, the first step after installation is to launch Indigo and configure the local server.

  1. Double click the Indigo 7.4 application (/Applications/Indigo 7.4.app).
  2. If this is the first time to run Indigo 7 on this Mac, then press the Start Local Server… button in the connection status window.
  3. If you want to reconfigure the Indigo Server on a Mac already running Indigo, then select the Indigo 7.4→Start Local Server… menu item.

Running as a Standalone Application

If you only have one Mac and do not wish to remotely access Indigo from a Web browser, iPhone, or iPod Touch, then you can choose the Run client/server as single application radio button. This will automatically run the client/server as a single application. This requires that the Indigo UI always be running on your Mac - when you quit the Indigo 7.4 Client application (Indigo 7.4→Quit) all Indigo event processing (triggers, schedules, scripts, etc.) will cease processing. This is not our recommended configuration.

NOTE: Indigo Server must be running to use Indigo Touch or to access the Indigo Web Server.

Running in Client/Server Mode

Choose the Start and connect to Indigo Server radio button to start the Indigo Server process independently of the Indigo Client. This will allow the server to run in the background on your Mac with no visible UI, even when the Indigo Client is not running. This will also start the built-in Web server, allowing remote access from Web browsers on other computers and remote access from iPhones and iPod Touches.

Use the Auto start Indigo Server on user login checkbox to have the Indigo Server automatically launched whenever your current OS X administrator user account is logged in. This option will also make sure the Indigo Server process is automatically relaunched if it crashes.

Use the Allow remote access checkbox to enable remote access from other Macs and Web browsers.

Use the Enable iPhone, iPod Touch, and remote Web browser access checkbox to allow Indigo Touch (must be downloaded from the iTunes App Store) and remote Web browser access from other computers. Any modern Web browser (Safari, Firefox, Opera) on any computer that has internet access to your server Mac will be able to control and check the state of your home.

Use the Enable remote RSS feeds checkbox to turn on the RSS and Atom server feeds, giving you RSS/Atom access to the last modified time stamp of all Indigo Devices.

Use the Override Web server (HTTP) port number: checkbox to change the TCP/IP port number that the web server uses to serve content and browsers will use to browse the web control pages.

Use the Require authentication checkbox to enable password protection for both remote Indigo Clients and Web browser access. It is highly recommended that you enable authentication and assign a strong password.

Use the Enable anywhere secure access checkbox for secure Web browser access from anywhere. This option requires a you to have configured a Reflector, which handles maintaining the secure connection to Indigo Server automatically. Reflectors are included as part of your Up-to-Date subscription.

Use the Enable remote Indigo client access checkbox to allow remote Indigo Clients on other Macs to connect to the Indigo Server.

Use the Override Indigo server port number: checkbox to change the TCP/IP port number that the Mac OS X client uses to connect to the server.

Use the Log Device state history to SQLite or PostgreSQL checkbox to efficiently save Indigo Device state changes, Variable value changes, and Event Log messages to a SQLite or PostgreSQL database. Visit the online support forum for installation and configuration instructions.

Starting the Server

Press the Start Server button, or the Restart Server button if the server is already running, to start the local Indigo Server. If Allow remote access is enabled, then the built-in Web server will also be started.

The Indigo Client will automatically connect to the Indigo Server. If this is the first time to launch the Indigo Server on this Mac, then you will be prompted to accept the License Agreement and to enter your Registration Code. The Indigo Client will then load and display the current house database file.

If you are running in client/server mode, then you can quit the Indigo Client at anytime and the Indigo Server will continue to run in the background processing your home control logic and schedules. Additionally, you can remotely access the Indigo Server from Indigo Clients on other Macs or from remote Web browsers that have internet access to the server Mac.

If you are running in standalone mode, then quitting the Indigo Client will automatically quit the Indigo Server.

If this is the first time you've started the server, you'll be prompted first to click through our Enduser License Agreement (EULA), then you'll see the Indigo Account Log In dialog:

and enter your Indigo Account username (or email) and password. The server will then continue to start up.

If you purchased a retail license from a reseller, you must follow the directions supplied by your reseller. It may be in an email or they may include a printed sheet with your shipment. Usually this will just tell you to create a new Indigo Account (click the Create New Account button) and fill out the form.

If you just want to run the client and connect to a server on a different Mac, then click the Connect to Remote Server… button.

Remote Indigo Access

After you have started the Indigo Server in client/server mode, you can remotely access it from other Macs using the Indigo Client, from your iPad, iPhone or iPod Touch using Indigo Touch, or from any modern Web browser (Safari, Firefox, Opera).

The following steps explain how to access the Indigo Server from within the local area network (LAN) of your house. Configuring your network to allow Indigo Server access from outside your home (on the other side of your router/cable modem) is more complex and will depend on your network topology, router type, and ISP features (static versus dynamic IP addresses). For this reason, we are only providing instructions on how to get local (in house) remote access to Indigo Server.

If you desire easy remote Indigo Server access from outside your home, then you will want to activate the reflector that's part of your Up-to-Date subscription. This provides secure Indigo Touch access from anywhere with no network configuration needed. As long as your Up-to-Date subscription is active you'll have remote access.

Alternatively, you can configure your network by consulting your router user manual and, if your ISP does not provide a static IP address, using a dynamic DNS mapping service like DynDNS.com. Because of the potential complexity involved in manually configuring networks and routers for this type of access, Perceptive Automation cannot provide direct support answers about router port forwarding or IP discovery issues. Users having difficulty configuring their networking hardware should post on the online support forum. Be sure and include details about the type of hardware you have and what steps you have tried.

Modifying Firewall Settings

If you are using the macOS built-in Firewall, and depending on how you have your firewall configured, you may be prompted by the firewall with the following dialogs the first time you start Indigo:


You must click the Allow button in those dialogs (if they pop up) or Indigo will not function correctly.

Discovering the Indigo Server IP Address (LAN only)

The Indigo Web Server advertises itself via Bonjour, so Indigo Touch and Safari (by clicking on the bookmarks icon, then selecting Bonjour) will automatically find any local servers. In addition to that, when connecting to a local server for the first time, Indigo Touch will also automatically fetch Reflector settings for that connection so that you'll be able to connect outside your LAN via LTE/4G/3G/Edge.

For other browsers to remotely access the Web server, we need to know the network IP address for the Mac running Indigo Server. This address will be used on the remote Mac or Web browser when connecting to the Indigo Server. By selecting the active network in the Network System Preference, you can see the IP address for your Indigo Server Mac. For WiFi, it might look something like this:

and a wired ethernet connection might look something like this:

Note the IP address under the Status section.

You now have the IP address for the Mac running Indigo Server. Depending on your home network setup, this IP address may change periodically, such as when the Indigo Server Mac or router is restarted. If this happens, then you can use the steps above to discover the IP address again, or you can configure a static (not dynamic) IP address for the Mac running Indigo Server (that is an exercise left to you as it would be totally dependent on your network configuration).

Remote Access Using the Indigo Client

  1. If you haven't already installed the client on the remote Mac, run the Indigo Installer on the remote Mac and on the Installation Type step click the Customize button. Unselect everything except the Indigo Client line and click Install.
  2. Double click the Indigo 7.4 application (inside /Applications/Indigo 7.4.app) on the remote Mac.
  3. If this is the first time to run Indigo 7 on this remote Mac, then press the Connect to Remote Server… button in the connection status window.
  4. If you are wanting to connect to a different Indigo Server, then select the Indigo 7.4→Connect to Remote Server… menu item.
  5. Enter the IP address for the Indigo Server Mac discovered in the section above.
  6. If you overrode the Indigo Server port number (default: 1176) in the Start Local Server dialog on the server Mac, then select the Override default port number checkbox and enter your custom port number.
  7. Press the Connect button.

NOTE: the Indigo Mac Client doesn't use the Indigo Reflector service. Connecting an Indigo Mac Client to a server over the internet is a complex topic that is well beyond this document – we suggest you search our online forums for others that have configured this type of access.

Remote Access Using Indigo Touch

Indigo Touch, the iPhone and iPod Touch application from Indigo Domotics, allows the user to view and control Devices, activate Action Groups, view Variables, and access custom Control Pages. One of the best features of Indigo Touch is it's ability to automatically detect and configure network connections. If your iPhone (or iPod Touch) is connected to your local wireless LAN, then it should automatically discover your server. In Indigo Touch, tap the Settings button. You should see the name of your Database in the list. Tap on it, and it will connect (it will ask for your username/password if you have one set, but it will remember it going forward so you won't have to type it in again).

At this point, Indigo Touch will also query the server to see if you have an Indigo Reflector set up for the server. This makes connecting to your home server via Indigo Touch completely seemless. If you have a reflector set up and running, then Indigo Touch will automatically attempt to connect no matter where you are or how you're connected. If you're local, it will use the local WiFi network, if you're on a remote WiFi network, it will attempt to use the reflector account. If you're iPhone is on LTE/4G/3G/Edge, it will also attempt to connect via your reflector account. This makes Indigo Touch truly location agnostic!

You can, however, configure a connection manually. Simply tap Manually Add Server on the Settings screen in Indigo Touch and you can enter your host/ip address and port number.

Remote Access Using a Web Browser

Indigo, when run in client/server mode, will automatically start its built-in Web server on launch. This allows access from remote Macs, PCs, and other internet devices like the iOS devices, Android devices, etc. Any device that can run a modern Web browser (Safari, Chrome, Firefox) will work.

To access the Indigo Web Server use the IP address you discovered in the section above along with the Indigo Web Server port number (default: 8176). The URL will look like this (substitute your server's correct IP address):

 http://192.168.1.23:8176/

See the using Control Pages section for information on how to create custom browser accessible interface pages.

Managing the Built-in Interfaces

Indigo has 4 built in interfaces: Z-Wave, Insteon, X10, and Virtual Devices.

You manage them from the Interfaces menu:

The first thing you'll notice is the dot beside the names in that menu. A green dot means that the interface is enabled. If the dot is gray, it means that it's disabled. This allows you to see what's enabled by just looking at the menu. Each interface (and it's submenu) is described below. If you select the Manage Interfaces… menu item, it will open the Preferences dialog with the Interfaces tab selected:

You can enable/disable an interface just by clicking the checkbox (rather than selecting the Enable/Disable menu item on each interface's submenu). Likewise, if an interface has any configuration options, you can open those dialogs by selecting the interface and clicking on the Configure… button (rather than selecting the Configure… menu item on each interface's submenu).

For detailed information specific to the interface, look to the appropriate guide for the technology:

Managing Plugins

Indigo includes the ability to use plugins developed by 3rd party developers (see our Plugin Store for available plugins) and includes a few useful plugins with the Indigo installation.

Installing Plugins

Installing new plugins is pretty simple. We're going to describe a couple of ways of installing them primarily based on where you get the plugin. While you may get a plugin from anywhere, we recommending getting them from our Plugin Store. To download and install a plugin from the store, this is the process (we're using Safari in these steps, so you may need to adjust accordingly if using another browser):

  1. In Safari on your Indigo Server Mac, go to the Plugin Store and navigate to the Plugin you want to install.
  2. Make sure that the plugin is supported by Indigo 7.2 (look for the Requires field).
  3. Click the Download Latest Release button, which will download the plugin.
  4. When the download is complete, click on the down arrow in the title bar which will show the plugin download.
  5. Most plugins will show the plugin directly as the above image. If it does, double click it and proceed to step 8 below.
  6. If you see a folder icon (usually with an odd name) in the download dropdown rather than the plugin icon, double-click on the folder and it'll switch to the Finder with the download folder open.
  7. In the Finder window that's now showing, you should see the plugin which will end in .indigoPlugin. Double-click that file.
  8. You will be switched to the Indigo Client app, and you'll a dialog window which asks you if you want to install and enable the plugin
  9. Click the Install and Enable button.
  10. Done!

Incompatible Plugins

Note if you see the error alert below that the “Plugin is not compatible” then the version of the plugin you installed is too new to run with your Indigo Server version. In this case the best solution is to upgrade your version of Indigo Server.

If you don’t want to upgrade Indigo Server and you had an older version of the plugin previously installed then you can reinstall it:

  1. Open the Trash folder from the Finder
  2. Move the previous (older) version of the plugin from the Trash folder to your Desktop.
  3. Lastly, follow the same instructions as above to re-install the older version of the plugin (Double-click it).

Plugin Configuration

Many plugins require some kind of configuration for the plugin itself. If that's the case, then when you click the Install and Enable button, the plugin's configuration dialog may automatically popup:

Complete the dialog as necessary (sometimes, as with the example above, you don't have to do anything) and click the Save button. Note: if you click the Cancel button, the plugin may not be fully operational until you completely fill out the dialog and save it.

That's it. As you can see, the experience using the Plugin Store in Safari is straight-forward. However, you may find plugins in other places. When you get a file that ends in .indigoPlugin on your Indigo Server Mac, you can always double-click it in the Finder and then you jump to step 8 above. We encourage all of our 3rd party plugin developers to put their plugins in the Plugin Store so it's easy to find them - you should be cautious about installing plugins that you get from other locations.

Plugin Menus in Indigo

There are a variety of menus in Indigo which will reflect plugin functionality. The first is the main Plugins menu in the Indigo menu bar.

Main Plugins Menu

This is the meta-menu for many things related to plugins.

The Reload Libraries and Attachments menu item will allow scripters to add Python libraries to specific locations and use them in Indigo (see Shared Classes and Methods in Python Files for details).

The next section of the menu is dedicated to each plugin that's installed on your system. As you can see, you can tell at a glance the status of the plugin itself:

  • a gray dot means the plugin is disabled
  • a green dot with no arrows means the plugin is enabled
  • a green dot with a black arrow means the plugin is enabled and there is an update available that will work with your Indigo version
  • a green dot with a red arrow means the plugin is enabled and there is an update available but it won't work with your version of Indigo

We'll discuss how to change/deal with those states later, but this menu provides a very simple visual dashboard for plugin status.

The Manage Plugins… menu item will open the the Plugins tab of the Indigo Preferences and is discussed below.

The Plugin Store menu item will open the Plugin Store in your default browser, and the Show Scripts Folder will open the Scripts folder (where you can install Python libraries) in the Finder (see Shared Classes and Methods in Python Files for details).

The Open Scripting Shell menu item will launch the Terminal app and open a window with a Python shell running with all the Indigo API loaded. See the Indigo Scripting Tutorial for more information.

Individual Plugin Submenu

Each plugin installed will have it's own submenu on the Plugins menu. For instance, here's the BetterEmail plugin submenu when it's enabled:

The top section will be available for every plugin

  • the first menu item will Enable/Disable a plugin and is a toggle - select Enable to enable the plugin and Disable to disable the plugin.
  • the Reload menu item will reload the plugin and will only be present if the plugin is enabled.
  • there may be a couple more menus if you have the Enable debugging menus item selected in the Plugins tab of the Indigo Preferences (and are discussed in that section).

The next section contains:

  • the Configure… menu item will open a config dialog if the plugin has plugin-specific configuration items (if not or if the plugin is disabled, it will not be present).
  • the Show in Plugin Store… menu item will open the plugin's entry in the Plugin Store in the default browser. If there is an available plugin update that will work on your version of Indigo, the menu title will be Download New Version… which will also open the plugin's entry in the Plugin Store in the default browser so you can download the new version, and if there is an incompatible version the menu title will be Incompatible Version Available… which will drop a sheet showing what version of Indigo is required to run the new plugin version. This menu item will always show, but if it's grayed out it means the plugin isn't from the Plugin Store.
  • the About… menu item will always show the current version of the plugin and will always be enabled.

Any sections below this are specific to the plugin and will contain commands that the plugin presents to the user. If the plugin is disabled, no additional sections will be displayed.

Other Menus with Plugin Items

There are several other places where plugins may insert menu items in the Indigo Mac UI. The first place is in the Device Create/Edit window:

The top half of that menu allows you to create devices from the built-in interfaces. Anything in the bottom half represents plugins that supply new device types that you can create and use in the same way you work with built-in devices (switches, thermostats, etc.). The next place is in the Trigger Create/Edit dialog:

The last section of that menu will show plugins that supply custom events that you can trigger from. The final place that plugins can add menu items is in the Action Create/Edit window:

There are actually 3 places where plugins can add menu items to the actions windows: The first is at the bottom of the Device Actions submenu: menus here are for plugin actions that act on devices. The second place is on the Notification Action submenu: plugins that supply some kind of notification action will put their actions on this submenu. Finally, at the bottom of the Action Type menu itself: this is where plugins will add actions that don't fit into the other two categories.

As you can see, plugin integration in Indigo is quite extensive.

The Plugins tab of the Indigo Preferences

You can also enable/disable a plugin and download a new plugin version from the Plugins tab in the Indigo Preferences. You open the config window choosing the Indigo 7→Preferences… menu item and clicking the Plugins tab or by selecting the Plugins→Manage Plugins… menu item discussed above.

You can enable/disable the plugin from this list (by checking the Enabled checkbox) and you can double-click on the plugin's name (or select it and click the Configure… button) to open the configuration dialog for the plugin (if there is one and the plugin is enabled). Again, if this is the first time the plugin has been enabled this will open the configuration dialog for the individual plugin if the plugin supports a one.

You can also see the current version of the plugin and the version of the most recent release if there is a newer version. If the newer version is not compatible with your version of Indigo, it will show up in red. Double click the new version number open the Plugin Store entry for that plugin in your default browser where you can download the new version and install (see Installing Plugins above for the process).

At the bottom of this tab, you'll notice a section labeled Development. There are 2 options here to help plugin developers with the various tasks needed to develop and test plugins:

  • the Enable debugging menus checkbox will add two new menus to the plugin's menus: Reload in Debugger will reload the plugin and connect to the selected debugger; Reload in Interactive Shell will open a terminal window with a Python shell that's connected to the plugin so the developer can run commands and inspect arbitrary objects in the running plugin.
  • the Use debugger popup is used to tell Indigo which debugger to start the plugin up when you use the above menu items.

See the Python Debugger Support forum post for further details on how to use these features to aid in developing a plugin.

Uninstalling a Plugin

If you would like to permanently remove/uninstall a plugin (rather than just disabling it by unchecking the Enabled button or using the menu item for the plugin), you may do so by following these steps:

  1. Shut down the Indigo Server by selecting the Indigo 7.4→Stop Server menu item in the Mac client (you can leave the client app running).
  2. Open the following folder in the Finder: /Library/Application Support/Perceptive Automation/Indigo 7.4/ (you can select the Go→Go to Folder… menu item in the Finder and paste in the path to open a Finder window). In that Finder window you'll see two folders: Plugins and Plugins (Disabled). Depending on whether the plugin is enabled or not will determine which folder it's in. Open the appropriate folder and delete the unwanted plugin.
  3. Switch back to the Indigo 7.4 Mac client and click on the Start Local Server… button in the Server Connection Status dialog.

The plugin will no longer show in the Plugins tab or in the Plugins menu.

Configuring Email Settings

Indigo has built-in support to both send and scan emails. Using this functionality, Indigo can provide remote notification of triggers, such as motion detection or power failures. You can also control Indigo remotely. For example, you could send Indigo an email from your mobile phone to turn on lights or change your home's thermostat temperature.

To provide this functionality, Indigo must connect to your email server. Indigo supports connecting with POP3 to scan emails and SMTP servers (with or without SSL/TLS) to send email. Indigo does not support communication with IMAP servers.

Typically, ISPs or other email service providers allow multiple email addresses for each customer. We recommend that you create a new email address specifically for Indigo, such as jetsons-house@myisp.com. Using a separate email address for Indigo will eliminate the possibility that Indigo might trigger an action from a personal email not intended for Indigo, and will allow you to use the Delete from server options shown below to reduce mailbox clutter.

Configuring Indigo to Communicate with Your Mail Server

To configure email sending

Be sure to have the email settings for your ISP handy before trying this configuration.

  1. Choose Indigo 7→Preferences… menu item, then make sure the Email tab is selected.
  2. Enter your SMTP server address. You probably don't need to change the SMTP server port, but if your server uses SSL (TLS) security, check that checkbox.
  3. Enter your SMTP user name and password (these may be optional)
  4. If you want the recipient of the email to reply to a different email address than the one you're sending from, enter it in the Reply-to email address field. Note that some SMTP mail servers are configured to not send emails unless the reply-to address specified matches the email address for the account. If mail sending fails, then make sure that the reply-to email address matches the email address for your account.

To configure email scanning

  1. Choose Indigo 7→Preferences… menu item, then make sure the Email tab is selected.
  2. Enter your POP server address, user (also called account) name, and password.
  3. Select the Check email every checkbox.
  4. Enter the time interval to wait between email scans (default 10 minutes).
  5. Optionally choose Delete from server emails that trigger actions to have Indigo automatically remove any email messages that cause Indigo to trigger an action from your mail server. You should only use this option if Indigo has a dedicated email account.
  6. Optionally choose Delete from server all emails to have Indigo automatically remove all email messages from your mail server. You should only use this option if Indigo has a dedicated email account.

Once the Preferences dialog is closed, Indigo will automatically connect to your mail server to scan messages. This will happen within 10 seconds from the time the Preferences dialog is closed. Watch the progress bar in the main window and look for error messages in the Event Log Window to verify that Indigo was able to correctly connect.

If Indigo failed to connect, then you can try turning on the SSL (TLS) checkbox option.

Sending Emails and Triggering Actions from Scanned Emails

To have Indigo send an email, create a Send Email action.

To execute an action based on a scanned email, create an Email Received trigger.

Specifying your Latitude and Longitude

Indigo uses your current Latitude and Longitude coordinates to calculate precisely when sunset and sunrise will occur every day. Indigo automatically extracts your location from the System Preferences.

Configuring your System Location

  1. Choose System Preferences from the Apple menu.
  2. Select the Date & Time icon.
  3. Select the Time Zone panel.
  4. If the current Closet City location is not near your location, then follow the instructions on the panel to choose your location.

If you would like to precisely specify your location, then you can override the system location from within Indigo.

Overriding the System Location

  • Choose the Indigo 7.4→Preferences… menu item, then make sure the Sunset & Sunrise tab is selected.
  • Select the Override system location checkbox.
  • Enter your exact Latitude and Longitude coordinates.

General Configuration Settings

You can configure other Indigo settings by opening the preferences dialog (selecting the Indigo 7→Preferences… menu item) and clicking on the General tab.

The first section of the tab is about update checking. The first checkbox will have the client check with our servers to see if there's an update to Indigo available when the client first starts up. If there is, it will let you know. The second checkbox will send anonymous information to us (and it really is anonymous) about your install - this helps us to better prioritize what future enhancements to add. The last checkbox will also check to see if there's a newer beta version available - if you aren't interested in getting betas then leave it unchecked.

You can have Indigo check for updates immediately by selecting the Indigo 7→Check for Updates… menu item.

The next section we talked about above - how many days of event log files to keep.

The last section is a rather technical configuration parameter - it is possible to get into an unending (infinite) loop when you're setting up your triggers. For instance, if you have a trigger the fires on a variable change, and it changes the variable to some new value each time, that would cause the trigger to fire again. Setting this value will cause it to stop eventually. Leaving it set to 5 is probably the best idea.

Modifying System Settings for Continuous Operation

Indigo requires your Mac to be on and awake for processing.

Modify Energy Saver Settings to Prevent Computer Sleep

  • Choose System Preferences from the Apple menu.
  • Select the Energy Saver icon.
  • Move the Computer sleep: slider to Never.
  • Uncheck Put the hard disk(s) to sleep when possible.
  • Select the Start up automatically after a power failure checkbox.

Where to Go Next

Congratulations! You should now have a basic functioning Indigo installation that's ready for you to start adding devices and defining your home automation logic. We suggest that you next go to the Overview of Devices, Triggers, Schedules, Action Groups, Control Pages, and Variables - that will give you the information you need to begin using the features of Indigo.


Z-Wave® is a registered trademark of Sigma Designs, Inc. Indigo's support of Z-Wave hardware is neither endorsed nor certified by Sigma Designs.

indigo_7.4_documentation/getting_started.txt · Last modified: 2022/05/05 18:02 by jay
 

© Perceptive Automation, LLC. · Privacy