-
Notifications
You must be signed in to change notification settings - Fork 130
Insteon Redux
- NOTE
- This page initially discussed a new code base for Insteon which has since been merged into the master branch. While older references note a distinction between an "Insteon Branch" and the main Insteon code, that distinction no longer exists. Please see the Insteon page for more details. This page is in the process of being cleaned up and eventually will be deleted.
John wrote some info on how the Insteon code inside MH works: https://github.com/hollie/misterhouse/wiki/Design-details
Here are links to Insteon programming documentation that will help anyone else who would like to work on this:
- http://www.smarthome.com/manuals/2412sdevguide.pdf
- http://www.insteon.net/pdf/INSTEON_Command_Tables_20070925a.pdf
- http://www.madreporite.com/insteon/commands.htm
- Insteon Developer's Guide 2005
WARNING: Support for the Insteon thermostat and irrigation code has not yet been ported. If you rely on this functionality, do NOT attempt to use this code base until the corresponding code has been ported.
The prior use of a separate module called insteon_item_commands has been permanently deprecated. The equivalent functionality is now automatically included in the new libraries. You no longer have to manually include this module.
The insteon config syntax has changed from the old IPLD and IPLL tags which you may see in older references.
The following guidelines should be to convert a set of mht declarations which used the old format. The easiest way to convert an old insteon.mht file to a new one is to use convert_insteon_config as a guide.
- Remove all references to the "plm" item name and any devcat declarations at the end of each insteon-specific entry. These changes apply to the IPLL and IPLD declarations only.
- Look for all of your IPLL entries that use the plm as the controller. In general, they would look something like: "IPLL, plm:A1, myTestScene". Replace the "IPLL" tag with "INSTEON_ICONTROLLER". In addition, remove the plm reference and colon: "plm:". The above example should now look like: "INSTEON_ICONTROLLER, A1, myTestScene".
- All of the remaining IPLL and IPLD tags must be replaced with the new set of tags:
- INSTEON_LAMPLINC
- INSTEON_APPLIANCELINC
- INSTEON_SWITCHLINC
- INSTEON_SWITCHLINCRELAY
- INSTEON_KEYPADLINC
- INSTEON_KEYPADLINCRELAY
- INSTEON_MOTIONSENSOR
- INSTEON_REMOTELINC
WARNING: Because you will be changing the object definition for each insteon item, all previously stored data will now be lost. At a minimum, this includes all in-memory mirroring of device links. As a result, you will have to either wait for the automatic memory scan or perform manual memory scans.