Insteon Programming · PLM Basics · X10 · PLM Receiving · Insteon Commands · Ramp Rates · Devices

Insteon Device List


Note: most devices have gone through multiple updates and therefore have multiple versions. For example, a device with an i1 and an i2 version. Where data is available, the table above shows multiple entries for each version. The list is far from complete in this regard. If you have additional information, please contribute. Data here is collected from my own tests and postings on the Efundies, Smarthome, and Cocoontech forums.

Product ID:
the model number given by the manufacturer. Available from the manufacturer.

DevCat:
the Device Category of the device. For example, all types of dimmers are 0x01. To read this, you want a Set Button Pressed message. Some devices (possibly all i2 devices) will give one if you send an ID Request command. You can also actually push the button to put the device in linking mode, and it should send this broadcast message. The information is given in place of the To address. E.g. in a broadcast Set Button Pressed message, if the To address is 03.05.76, the device is DevCat 03, SubCat 05, Firmware 76 (which makes it a serial PLM).

Some newer devices will respond to a Product Data Request command (command1 = 0x03, command2 = 0x00). The response will be an extended message with DevCat as D5, SubCat as D6, and Firmware as D7.

Indigo Product ID: If you are using Indigo, convert the product ID into hexadecimal. The first two digits are the DevCat, and the second two are the SubCat. For example, the serial PLM is product ID 773. Converted to hexadecimal, this is 0x0305. The DevCat is 0x03, and the SubCat is 0x05.

SubCat:
the Subcategory of the device. For example, the LampLinc has a SubCat of 0x00. DevCat plus SubCat should uniquely identify the device.

i1/i2:
devices for the original Insteon specification are i1. At some point, the specification was updated and newer devices are i2. Most older devices have now been updated and current versions are also i2, although some have not been updated (e.g. the PLC, possibly the ControlLinc and Venstar thermostat). i2 devices have more support for extended messages, and generally can be linked in more elaborate ways without using Peek/Poke messages. To check, send a Get INSTEON Engine Version command (command1 = 0x0D). The response will be in command2 of the ACK message. 0x00 = i1, 0x01 = i2.

The ISY will show if a device is using the i2 engine, in the Event Viewer (you may need to choose level 2 or 3 messages), when you link a device.

Firmware:
the version number for the devices tested. Multiple versions are listed if information is available. Different firmware may have different capabilities. This information is also often available from within your automation software. If using the ISY, the version is reported as (for example) "V.35" where 35 is the version number (in hex). This is usually different than the version labeled on the device. If using Indigo, the version is reported with a dot, for example firmware 0x35 would be reported by Indigo as "3.5".

Insteon Product Key:
to give more unique device ID's, the IPK is a 3-byte identifier (whereas DevCat + SubCat is only 2-bytes), giving more room for expansion. To check this, send a Product Data Request (as above under DevCat), and the IPK will be in D2-D4.

Label on Device:
usually there is a sticker on the device giving a version number. The format varies. These should correspond to the Firmware, although not necessarily in an obvious way (for example, the PLM marked V76 logically has Firmware 76, but the LampLinc marked V4.3 has Firmware 33). For some devices a date code is also listed (e.g. 852), this is the year followed by the week number.

Fx Device Name:
I'm not really sure what this is for, but there are some commands that are specific by Fx Device Name. When known, this is listed in the comments. To check this, send a "FX Username Request" command (command1 = 0x03, command2 = 0x01). Response will be in extended data. Many devices will not respond (e.g. all i1 devices, PLM V63 through V76, IRLinc Receiver, LampLinc, LampLinc Dual-Band, ApplianceLinc, RemoteLinc, IO Linc, EZIO2x4), others may respond as if you sent a Product Data Request (e.g. KeypadLinc Dimmer V5.1, TriggerLinc) rather than giving an Fx Device Name.

Device Text String:
I'm guessing this will give the name of the device, but I have yet to test a device that gave a response for this. A device may not respond or respond as if you sent a Product Data Request (same list as for Fx Device Name). At this time I do not have data on any device responding with a Device Text String. To check this, send "Device Text String Request" (command1 = 0x03, command2 = 0x02). Response would be in extended data.


This list is far from complete, please share any additional data you acquire. Even for devices already filled in on this list, it would be useful to know whether different firmware is the same or different. For example, the LampLinc and ApplianceLincs I tested are i2, but there were earlier versions that were i1. It would be useful to know which version this changed at.