Difference between revisions of "Insteon - Setting Up PLM Template"

From LinuxMCE
Jump to: navigation, search
Line 15: Line 15:
  
 
::with the Add Manufacturer popup:
 
::with the Add Manufacturer popup:
:::* type 'Smarthome' and click Add
+
::* type 'Smarthome' and click Add
:::* Click Close
+
::* Click Close
  
::* press F5 to refresh the page.
+
:* press F5 to refresh the page.
::* In the Manufacturer field, select 'Smarthome'.
+
:* In the Manufacturer field, select 'Smarthome'.
::* Under Device Category, select 'Lighting Interface < Interfaces'.
+
:* Under Device Category, select 'Lighting Interface < Interfaces'.
::* Click Add device Template (popup changes to Add model)
+
:* Click Add device Template (popup changes to Add model)
::* select the LAST option:
+
:* select the LAST option:
  
 
<nowiki>"It's a simple, generic serial device controlled by RS232, Ethernet or USB, which you'll control with Pluto's GSD and embedded Ruby snippets (very easy). Examples: Lighting control, alarm panels, surveillance cameras, thermostats, weather stations, a/v equipment with RS232 ports, etc"</nowiki>
 
<nowiki>"It's a simple, generic serial device controlled by RS232, Ethernet or USB, which you'll control with Pluto's GSD and embedded Ruby snippets (very easy). Examples: Lighting control, alarm panels, surveillance cameras, thermostats, weather stations, a/v equipment with RS232 ports, etc"</nowiki>
  
::* Type in 'Insteon PLM' in the name or model#.
+
:* Type in 'Insteon PLM' in the name or model#.
::* Click Add
+
:* Click Add
::* Close the Add device Template window.
+
:* Close the Add device Template window.
  
:* In Webadmin, Select Advanced, Configuration, Device Templates (from the top menu)
+
* In Webadmin, Select Advanced, Configuration, Device Templates (from the top menu)
:* In the Device Template field, select 'Insteon PLM'
+
* In the Device Template field, select 'Insteon PLM'
:* click 'Pick Device Template' (loads Edit Device Template Popup)
+
* click 'Pick Device Template' (loads Edit Device Template Popup)
::* NOTE the Template Number!  write this down. (it will be needed for Plug N Play)
+
:* NOTE the Template Number!  write this down. (it will be needed for Plug N Play)
::* Make sure 'Implements DCE' is checked (should be)
+
:* Make sure 'Implements DCE' is checked (should be)
::* In the Comm Method, select RS232
+
:* In the Comm Method, select RS232
::* Click 'Edit Ruby Codes' ( loads Edit Ruby Codes Popup)
+
:* Click 'Edit Ruby Codes' ( loads Edit Ruby Codes Popup)
:::* In the field to the LEFT of 'Create new group', type in 'Insteon PLM'
+
::* In the field to the LEFT of 'Create new group', type in 'Insteon PLM'
:::* click 'Create new group'
+
::* click 'Create new group'
:::* If the 'Uses Group/Codeset' does not change to 'Insteon PLM', repeat the previous 2 steps again.
+
::* If the 'Uses Group/Codeset' does not change to 'Insteon PLM', repeat the previous 2 steps again.
:::* Once the 'Uses Group/Codeset' says 'Insteon PLM' Check 'Discoverable Interfaces'
+
::* Once the 'Uses Group/Codeset' says 'Insteon PLM' Check 'Discoverable Interfaces'
:::* Check 'Ruby Insternal Commands'
+
::* Check 'Ruby Insternal Commands'
:::* click Update
+
::* click Update
  
:::* In the #756 Report Child Devices field (the big one) copy and paste this code:
+
::* In the #756 Report Child Devices field (the big one) copy and paste this code:
::::[[Insteon PLM Ruby Code 756]]
+
:::[[Insteon PLM Ruby Code 756]]
:::* In the #776 Reset field, copy and paste this code:
+
::* In the #776 Reset field, copy and paste this code:
::::[[Insteon PLM Ruby Code 776]]
+
:::[[Insteon PLM Ruby Code 776]]
:::* In the #760 Send Command to Child field, copy and paste this code:
+
::* In the #760 Send Command to Child field, copy and paste this code:
::::[[Insteon PLM Ruby Code 760]]
+
:::[[Insteon PLM Ruby Code 760]]
:::* In the #788 StatusReport field, copy and paste this code:
+
::* In the #788 StatusReport field, copy and paste this code:
::::[[Insteon PLM Ruby Code 788]]
+
:::[[Insteon PLM Ruby Code 788]]
:::* In the #373 Private Method Listing field, copy and paste this code:
+
::* In the #373 Private Method Listing field, copy and paste this code:
::::[[Insteon PLM Ruby Code 373]]
+
:::[[Insteon PLM Ruby Code 373]]
:::* In the #351 Process IDLE field, copy and paste this code:
+
::* In the #351 Process IDLE field, copy and paste this code:
::::[[Insteon PLM Ruby Code 351]]
+
:::[[Insteon PLM Ruby Code 351]]
:::* In the #350 Process Incoming Data field, copy and paste this code:
+
::* In the #350 Process Incoming Data field, copy and paste this code:
::::[[Insteon PLM Ruby Code 350]]
+
:::[[Insteon PLM Ruby Code 350]]
:::* In the #355 Process Initialize field, copy and paste this code:
+
::* In the #355 Process Initialize field, copy and paste this code:
::::[[Insteon PLM Ruby Code 355]]
+
:::[[Insteon PLM Ruby Code 355]]
:::* In the #384 Process Receive Command for Child field, copy and paste this code:
+
::* In the #384 Process Receive Command for Child field, copy and paste this code:
::::[[Insteon PLM Ruby Code 384]]
+
:::[[Insteon PLM Ruby Code 384]]
:::* In the #356 Process Release, leave it blank. (no code for now)
+
::* In the #356 Process Release, leave it blank. (no code for now)
 +
::* Click Update
 +
::* Click Close
 +
:* Press F5 for refresh the 'Edit Device Template' popup
 +
:* In the 'Device data' section, in 'Add a New Parameter' select 'COM Port on PC' and click Add.
 +
:* in the Comments Field, type 'COM Port'
 +
:* in the Default Value field, type '/dev/ttyS0'
 +
:* check the 'Required' and 'Allowed to Modify' boxes
 +
:* In the 'Device data' section, in 'Add a New Parameter' select 'COM Port BaudRate' and click Add.
 +
:* in the Comments Field, type 'Baud Rate'
 +
:* in the Default Value field, type '38400'
 +
:* check the 'Required' and 'Use Master Device List Defaults' boxes
 +
:* In the 'Device data' section, in 'Add a New Parameter' select 'Only One Per PC' and click Add.
 +
:* in the Comments Field, type 'Only One Per PC'
 +
:* in the Default Value field, type '1'
 +
:* In the 'Device data' section, in 'Add a New Parameter' select 'Auto-assign to parents room' and click Add.
 +
:* in the Comments Field, type 'Assign to Parents Room'
 +
:* in the Default Value field, type '1'
 +
:* Scroll down to the 'Plug & Play' Section
 +
:* Enter These values:
 +
::From = '0', To = '0'
 +
::Vendor Model ID = '2412S' PNP protocol = 'Proprietary'
 +
::Serial Number = 'Insteon PLM' Parms is blank
 +
::PNP detection script is '88_InsteonPLM.sh'
 +
::Comment is 'Insteon PLM'
  
:::* Click Update
+
:* Scroll down to the bottom of the popup window and click Save
:::* Click Close
+
:* Click Close
::* Press F5 for refresh the 'Edit Device Template' popup
+
:* Modify the SECOND LAST LINE of this script (88_InsteonPLM.sh) and change the LAST number to your Template ID.
::* In the 'Device data' section, in 'Add a New Parameter' select 'COM Port on PC' and click Add.
+
:* add this script file to /usr/pluto/pnp (88_InsteonPLM.sh)
::* in the Comments Field, type 'COM Port'
+
::* in the Default Value field, type '/dev/ttyS0'
+
::* check the 'Required' and 'Allowed to Modify' boxes
+
::* In the 'Device data' section, in 'Add a New Parameter' select 'COM Port BaudRate' and click Add.
+
::* in the Comments Field, type 'Baud Rate'
+
::* in the Default Value field, type '38400'
+
::* check the 'Required' and 'Use Master Device List Defaults' boxes
+
::* In the 'Device data' section, in 'Add a New Parameter' select 'Only One Per PC' and click Add.
+
::* in the Comments Field, type 'Only One Per PC'
+
::* in the Default Value field, type '1'
+
::* In the 'Device data' section, in 'Add a New Parameter' select 'Auto-assign to parents room' and click Add.
+
::* in the Comments Field, type 'Assign to Parents Room'
+
::* in the Default Value field, type '1'
+
 
+
::* Scroll down to the 'Plug & Play' Section
+
::* Enter These values:
+
:::From = '0', To = '0'
+
:::Vendor Model ID = '2412S' PNP protocol = 'Proprietary'
+
:::Serial Number = 'Insteon PLM' Parms is blank
+
:::PNP detection script is '88_InsteonPLM.sh'
+
:::Comment is 'Insteon PLM'
+
 
+
 
+
::* Scroll down to the bottom of the popup window and click Save
+
::* Click Close
+
::* Modify the SECOND LAST LINE of this script (88_InsteonPLM.sh) and change the LAST number to your Template ID.
+
::* add this script file to /usr/pluto/pnp (88_InsteonPLM.sh)
+
 
<pre>
 
<pre>
 
#!/bin/bash
 
#!/bin/bash
Line 108: Line 105:
 
fi
 
fi
 
</pre>
 
</pre>
::* chmod 755 /usr/pluto/pnp/88_InsteonPLM.sh (make it executable)
+
:* chmod 755 /usr/pluto/pnp/88_InsteonPLM.sh (make it executable)
  
:You are Done!  go to [[Running the Insteon PLM Driver for the First Time]]
+
You are Done!  go to [[Running the Insteon PLM Driver for the First Time]]

Revision as of 20:33, 6 January 2008

Category:Tutorials

Bear with me, this is my first wiki..
--ddamron 02:52, 6 January 2008 (MST)

Here are the steps to create an Insteon PLM Template. This driver is written entirely in Ruby. Please consider this driver Complete, but beta. I'm sure there are still a few bugs.. The more people testing this code, the more bugs we can find, and get this to a release state. Once it's in release state, it will be added to sqlcvs and offered via a 'quick' update. (unless it makes it into the 0710 release!)

Ok, here are the steps:
  • Log into the webadmin
  • select Interfaces(under Devices)
  • click Add device (loads Pick Device Template popup)
with the Pick Device Template Popup:
  • click Add Manufacturer (loads Add Manufacturer popup)
with the Add Manufacturer popup:
  • type 'Smarthome' and click Add
  • Click Close
  • press F5 to refresh the page.
  • In the Manufacturer field, select 'Smarthome'.
  • Under Device Category, select 'Lighting Interface < Interfaces'.
  • Click Add device Template (popup changes to Add model)
  • select the LAST option:

"It's a simple, generic serial device controlled by RS232, Ethernet or USB, which you'll control with Pluto's GSD and embedded Ruby snippets (very easy). Examples: Lighting control, alarm panels, surveillance cameras, thermostats, weather stations, a/v equipment with RS232 ports, etc"

  • Type in 'Insteon PLM' in the name or model#.
  • Click Add
  • Close the Add device Template window.
  • In Webadmin, Select Advanced, Configuration, Device Templates (from the top menu)
  • In the Device Template field, select 'Insteon PLM'
  • click 'Pick Device Template' (loads Edit Device Template Popup)
  • NOTE the Template Number! write this down. (it will be needed for Plug N Play)
  • Make sure 'Implements DCE' is checked (should be)
  • In the Comm Method, select RS232
  • Click 'Edit Ruby Codes' ( loads Edit Ruby Codes Popup)
  • In the field to the LEFT of 'Create new group', type in 'Insteon PLM'
  • click 'Create new group'
  • If the 'Uses Group/Codeset' does not change to 'Insteon PLM', repeat the previous 2 steps again.
  • Once the 'Uses Group/Codeset' says 'Insteon PLM' Check 'Discoverable Interfaces'
  • Check 'Ruby Insternal Commands'
  • click Update
  • In the #756 Report Child Devices field (the big one) copy and paste this code:
Insteon PLM Ruby Code 756
  • In the #776 Reset field, copy and paste this code:
Insteon PLM Ruby Code 776
  • In the #760 Send Command to Child field, copy and paste this code:
Insteon PLM Ruby Code 760
  • In the #788 StatusReport field, copy and paste this code:
Insteon PLM Ruby Code 788
  • In the #373 Private Method Listing field, copy and paste this code:
Insteon PLM Ruby Code 373
  • In the #351 Process IDLE field, copy and paste this code:
Insteon PLM Ruby Code 351
  • In the #350 Process Incoming Data field, copy and paste this code:
Insteon PLM Ruby Code 350
  • In the #355 Process Initialize field, copy and paste this code:
Insteon PLM Ruby Code 355
  • In the #384 Process Receive Command for Child field, copy and paste this code:
Insteon PLM Ruby Code 384
  • In the #356 Process Release, leave it blank. (no code for now)
  • Click Update
  • Click Close
  • Press F5 for refresh the 'Edit Device Template' popup
  • In the 'Device data' section, in 'Add a New Parameter' select 'COM Port on PC' and click Add.
  • in the Comments Field, type 'COM Port'
  • in the Default Value field, type '/dev/ttyS0'
  • check the 'Required' and 'Allowed to Modify' boxes
  • In the 'Device data' section, in 'Add a New Parameter' select 'COM Port BaudRate' and click Add.
  • in the Comments Field, type 'Baud Rate'
  • in the Default Value field, type '38400'
  • check the 'Required' and 'Use Master Device List Defaults' boxes
  • In the 'Device data' section, in 'Add a New Parameter' select 'Only One Per PC' and click Add.
  • in the Comments Field, type 'Only One Per PC'
  • in the Default Value field, type '1'
  • In the 'Device data' section, in 'Add a New Parameter' select 'Auto-assign to parents room' and click Add.
  • in the Comments Field, type 'Assign to Parents Room'
  • in the Default Value field, type '1'
  • Scroll down to the 'Plug & Play' Section
  • Enter These values:
From = '0', To = '0'
Vendor Model ID = '2412S' PNP protocol = 'Proprietary'
Serial Number = 'Insteon PLM' Parms is blank
PNP detection script is '88_InsteonPLM.sh'
Comment is 'Insteon PLM'
  • Scroll down to the bottom of the popup window and click Save
  • Click Close
  • Modify the SECOND LAST LINE of this script (88_InsteonPLM.sh) and change the LAST number to your Template ID.
  • add this script file to /usr/pluto/pnp (88_InsteonPLM.sh)
#!/bin/bash

echo "Insteon Powerline Modem Detection Script queue $2"
/usr/pluto/bin/TestSerialPort -p $3 -P N81 -b 19200 -t "\02\60"  -i 1 -s "\03\05"
if [[ "$?" -ne 0 ]]; then
echo "It's not an Insteon Powerline Modem"
/usr/pluto/bin/MessageSend dcerouter -r 0 $1 1 806 224 $2 13 "$4" 44 0
else
echo "It is an Insteon Powerline Modem"
/usr/pluto/bin/MessageSend dcerouter -r 0 $1 1 806 224 $2 13 "$4" 44 1901
fi
  • chmod 755 /usr/pluto/pnp/88_InsteonPLM.sh (make it executable)

You are Done! go to Running the Insteon PLM Driver for the First Time