???
Ok. Over the holidays, I built my core from scratch, changing the main drive to a 500G SATA disk, to allow for recordings from mythtv. Now after I had the core discover all my media drives, and set them up, everything is working great. So I figure I would get my insteon set up running again.
Rather than use my old devices, I decided to start with the new http://www.smarthome.com/2490/Lamp-Scene-Kit-INSTEON-Lighting-Starter-Kit/p.aspx (http://www.smarthome.com/2490/Lamp-Scene-Kit-INSTEON-Lighting-Starter-Kit/p.aspx) "LampLinc Starter Kit" that I received as a gift. I went through the set up, placed my access points, and the lamp modules, got them all married up, and then decided to try to get my PLM runnning.
So I followed the wiki entry here: http://wiki.linuxmce.org/index.php/Insteon_-_Setting_Up_PLM_Template (http://wiki.linuxmce.org/index.php/Insteon_-_Setting_Up_PLM_Template) , just like I did on my original install. However this time, it is not working correctly. I am getting this in the log for the device:
***):Current Command:{"Parameter1"=>"40", "Command"=>"SetCfg"}
01 01/02/09 7:15:17.409 Error while calling method: Cannot call class method: cmd_351
error: can't convert nil into String, line: 1457
backtrace:
in: (eval): 1457
from (eval):1457:in `+'
from (eval):1457:in `removecurrentcommand'
from (eval):41:in `cmd_351'
from (eval):1457
<0xb57d9b90>
(***):receive timeout=3
(***):Command Stalled! resetting and retrying
(***):Current Command:0
(***):SndIns:Queue:4
(***):out:02 6B 40 Length:3
(***):receive timeout=1
(***):receive timeout=2
(***):receive timeout=3
(***):Command Stalled! resetting and retrying
(***):Current Command:0
(***):SndIns:Queue:4
(***):out:02 6B 40 Length:3
(***):receive timeout=1
(***):receive timeout=2
(***):receive timeout=3
(***):Third attempt, Failing Command!
(***):in RemoveCurrentCommand
(***):Current Command:{"Parameter1"=>"40", "Command"=>"SetCfg"}
01 01/02/09 7:15:35.503 Error while calling method: Cannot call class method: cmd_351
error: can't convert nil into String, line: 1457
backtrace:
in: (eval): 1457
from (eval):1457:in `+'
from (eval):1457:in `removecurrentcommand'
from (eval):41:in `cmd_351'
from (eval):1457
<0xb57d9b90>
(***):receive timeout=3
(***):Command Stalled! resetting and retrying
(***):Current Command:0
(***):SndIns:Queue:4
(***):out:02 6B 40 Length:3
(***):receive timeout=1
It repeats itself over and over of course. Now It has been an eternity since I set it up with my old installation, and I am probably missing some little thing, but I just can't figure it out, so I thought I would place my findings here, in case someone else has run across this issue.
Thanks, and Regards,
Seth
If you cut and paste from a browser make sure you don't have html code in the code section.
(that happened to me once while bldg my insteon template)
Tim
we should write a c++ dce device for the new insteon driver or merge the gsd code into the existing driver.
br Hari
I had a (skeletal, rudimentry) Insteon PLC USB C++ driver built on the pluto Zwave model in the source tree a while ago. Pluto was supposed to get it into a release about a year and a half ago but for various reasons they never did that. I've been busy for a while, but now things have loosened up a bit at work (maybe less 7 day weeks), I want to go get this thing moving along once and for all.
???
Bump. Anyone have any insight.
I just can't figure it out. I have actually debated entering all the ruby codes one line at a time, but sheesh.
I can see me doing that and it still not working because of some other little buglet that I am missing.
I am even willing to take someone elses template that is working, and comparing the two, possibly utilizing the working one, and changing my template number to match.
Regards,
Seth
Quote from: seth on January 02, 2009, 04:45:59 PM
???
Ok. Over the holidays, I built my core from scratch, changing the main drive to a 500G SATA disk, to allow for recordings from mythtv. Now after I had the core discover all my media drives, and set them up, everything is working great. So I figure I would get my insteon set up running again.
Rather than use my old devices, I decided to start with the new http://www.smarthome.com/2490/Lamp-Scene-Kit-INSTEON-Lighting-Starter-Kit/p.aspx (http://www.smarthome.com/2490/Lamp-Scene-Kit-INSTEON-Lighting-Starter-Kit/p.aspx) "LampLinc Starter Kit" that I received as a gift. I went through the set up, placed my access points, and the lamp modules, got them all married up, and then decided to try to get my PLM runnning.
So I followed the wiki entry here: http://wiki.linuxmce.org/index.php/Insteon_-_Setting_Up_PLM_Template (http://wiki.linuxmce.org/index.php/Insteon_-_Setting_Up_PLM_Template) , just like I did on my original install. However this time, it is not working correctly. I am getting this in the log for the device:
***):Current Command:{"Parameter1"=>"40", "Command"=>"SetCfg"}
01 01/02/09 7:15:17.409 Error while calling method: Cannot call class method: cmd_351
error: can't convert nil into String, line: 1457
backtrace:
in: (eval): 1457
from (eval):1457:in `+'
from (eval):1457:in `removecurrentcommand'
from (eval):41:in `cmd_351'
from (eval):1457
<0xb57d9b90>
(***):receive timeout=3
(***):Command Stalled! resetting and retrying
(***):Current Command:0
(***):SndIns:Queue:4
(***):out:02 6B 40 Length:3
(***):receive timeout=1
(***):receive timeout=2
(***):receive timeout=3
(***):Command Stalled! resetting and retrying
(***):Current Command:0
(***):SndIns:Queue:4
(***):out:02 6B 40 Length:3
(***):receive timeout=1
(***):receive timeout=2
(***):receive timeout=3
(***):Third attempt, Failing Command!
(***):in RemoveCurrentCommand
(***):Current Command:{"Parameter1"=>"40", "Command"=>"SetCfg"}
01 01/02/09 7:15:35.503 Error while calling method: Cannot call class method: cmd_351
error: can't convert nil into String, line: 1457
backtrace:
in: (eval): 1457
from (eval):1457:in `+'
from (eval):1457:in `removecurrentcommand'
from (eval):41:in `cmd_351'
from (eval):1457
<0xb57d9b90>
(***):receive timeout=3
(***):Command Stalled! resetting and retrying
(***):Current Command:0
(***):SndIns:Queue:4
(***):out:02 6B 40 Length:3
(***):receive timeout=1
It repeats itself over and over of course. Now It has been an eternity since I set it up with my old installation, and I am probably missing some little thing, but I just can't figure it out, so I thought I would place my findings here, in case someone else has run across this issue.
Thanks, and Regards,
Seth
Seth
If I remember correctly I had this same problem and had to remove some of the ruby code. See this post for my added comments on the installation:
http://wiki.linuxmce.org/index.php/Setting_Up_PLM_Template
All though this fixed that problem I never got insteon fully working.
Thanks
Marty
Bump!
I am still experiencing the exact same issue.
This bit of error:
(***):Current Command:{"Parameter1"=>"40", "Command"=>"SetCfg"}
01 01/29/09 12:10:43.013 Error while calling method: Cannot call class method: cmd_351
error: can't convert nil into String, line: 1457
backtrace:
in: (eval): 1457
from (eval):1457:in `+'
from (eval):1457:in `removecurrentcommand'
from (eval):41:in `cmd_351'
from (eval):1457
<0xb5770b90>
(***):receive timeout=3
(***):Command Stalled! resetting and retrying
(***):Current Command:0
(***):SndIns:Queue:4
(***):out:02 6B 40 Length:3
(***):receive timeout=1
(***):receive timeout=2
(***):receive timeout=3
(***):Command Stalled! resetting and retrying
(***):Current Command:0
(***):SndIns:Queue:4
(***):out:02 6B 40 Length:3
(***):receive timeout=1
(***):receive timeout=2
(***):receive timeout=3
(***):Third attempt, Failing Command!
(***):in RemoveCurrentCommand
This keeps looping. I guess tonight I will try to plug the lamp dimmer module directly into the same outlet as the PLM. I would hope that using my access points that this would not be necessary. But at this point I am willing to try anything.
What I have done so far:
Switched to a USB to Serial adapter in lieu of the on board port, as it was using a header, instead of being a physical port.
Unplugged everything but the PLM and the Dimmer Module
I have pressed and held in the button on the PLM until it started blinking, then pressed the button in on the Dimmer module. The light attached to the dimmer socket blinked twice, and then the PLM stopped blinking.
The table top controller works swimmingly.
The only thing I have not tried yet was plug the Dimmer module into the same outlet as the PLM.
I have no other ideas on how to resolve this issue.
Any help at all is appreciated.
Regards,
Seth
There is a little UPDATE in wiki:
...UPDATE I had to remove the ruby code from 141 & 161. The PLM wouldn't start due to errors from these two. 8/9/08 williammanda
Make sure you do that.
???
In the ruby codes I have for the PLM I do not have a code
141 or 161
All I have is what is listed in the wiki. Are these lines inside one of the wiki codes, like say 373 or something?
I am really stumped, and have debated bringing my cm11a back on-line, as the plm so far for me has been a failure.
Please elaborate on what those number mean.
Thanks
Regards,
Seth
Weird... I did have a #141 ruby code(CD/DVD???), but not the 161. Removing the code from #141 got me an error free log, but I'm still struggling with getting PLM to work. It looks like the PLM is recognized, but it doesn't detect Insteon devices on the network. BTW, I've got the LampLinc starter kit just like you did.
Another thing I've noticed is that when I run: /usr/pluto/bin/TestSerialPort -p /dev/ttyUSB0 -P N81 -b 19200 -t "\02\60" -i 1 -s "\03\05", I'm not always getting the same results which is weird. Here is some examples: "\02`\0fB\e8\03", "\02","\06"
As far as I understand this command suppose to return an identification string from PLM. Not sure what to think.
Well the only ruby codes I added were the one's from the wiki. There was no 141 or 161.
I will have to check my template again. This is quite confusing. I am wondering if moving the PLM to a media director would make a difference.
Guess I will check when I get home later.
Thanks
BR,
Seth
Well, now I've got to the point where I get the same type of messages you do: Cannot call class method: cmd_351 etc....
Rebooting the core fixed the error messages, but I still don't have the PLM child devices showing up anywhere....
I'm having similar problems getting Insteon child devices to respond. I have a lamp module that I can't seem to get to work. I have followed the wiki, including the 'next steps' section which includes pairing the first device. I am struggling to get a grasp on Insteon and would appreciate any help.
I'm not sure if this will help you or not, but here is my experience, I got my basic Insteon setup working on my Hybrid (7.10) using PC serial port, by following the wiki instructions "http://wiki.linuxmce.org/index.php/Setting_Up_PLM_Template"
step by step and cleaning the Ruby code first before I pasted in the template, by copying the code from the wiki page to a text file, removing some html code, then I pasted the code from the text file to the template, and I removed code #141 ruby code(CD/DVD) from the template, after rebooting my Hybrid, and linking my "Insteon Outlinc" to my PLM (Serial port), another Hybrid reboot, then I added a lamp to the floor map, and I was able to turn On/Off the lamp which is connected to Insteon Outlinc "http://www.insteon.net/2473SWH-outletlinc.html".
currently i'm trying the same configuration on 8.10 hybrid using default insteon PLM template, with "USB to Serial adapter", I replaced "/dev/ttyS0" on the default template with "/dev/ttyUSB0" with no luck, I know my "/dev/ttyUSB0" is working using
Quote/usr/pluto/bin/TestSerialPort -p /dev/ttyUSB0 -P N81 -b 19200 -t "\02\60" ,
I saw the output on my protocol analyzer.
Any suggestion really appreciated,
Charlie,
I had my PLM working with 710, and about 20 insteon devices, about 40% of the time when I would restart the core which is where my PLM is connected, I would lose a device or two on the floor plan. I have looked through all of the ruby code to try and fix this problem, and also add support for the HVAC adapter and for the motion sensor. The time out errors are because the PLM cannot communicate with the device at that address. The chip inside the PLM that sends and receives commands form your power lines is about 75% as strong as the chips all other insteon devices. So even though one device commutates perfectly with another device, It might not be getting the signal to the PLM. I fix this problem in my network, and now it works 100% of the time and even the response time on sending commands is faster. A few ways you can fix this problem.
1) Access Points should be located on the 1st receptacle on the line, As close as you can get it to the actual breaker box(this fixed my problem), and make sure one on is on each phase of your power.
2) Do not plug the PLM into a surge protector.
3) It would be ideal to have the PLM as close to the breaker box as possible.
4) Move the PLM to a different line that does not have lots of electronics on it.
After you get the communication problem fixed you should not see the timeout error any more.
I did look at trying to update the driver to support more devices, and I got the HVAC half way working, but I kept running into the problem of not having any link management available. You can link every insteon device from the PLM and never have to go around and push the dumb button in for 10 seconds. I could not figure out a good way to accomplish device linking natively in LMCE, so I stopped working on the driver. I spent a lot of time looking around to see how others are handling insteon networks, and most of them have gone with ISY-99. It has a lot of advantages over using just the PLM. I just received it in the mail last week, and started working on a driver for it.
Hope this helps,
Chris
Quote from: ccoudsi on May 04, 2009, 08:56:43 PM
I'm not sure if this will help you or not, but here is my experience, I got my basic Insteon setup working on my Hybrid (7.10) using PC serial port, by following the wiki instructions "http://wiki.linuxmce.org/index.php/Setting_Up_PLM_Template" step by step and cleaning the Ruby code first before I pasted in the template, by copying the code from the wiki page to a text file, removing some html code, then I pasted the code from the text file to the template, and I removed code #141 ruby code(CD/DVD) from the template, after rebooting my Hybrid, and linking my "Insteon Outlinc" to my PLM (Serial port), another Hybrid reboot, then I added a lamp to the floor map, and I was able to turn On/Off the lamp which is connected to Insteon Outlinc "http://www.insteon.net/2473SWH-outletlinc.html".
currently i'm trying the same configuration on 8.10 hybrid using default insteon PLM template, with "USB to Serial adapter", I replaced "/dev/ttyS0" on the default template with "/dev/ttyUSB0" with no luck, I know my "/dev/ttyUSB0" is working using
Quote/usr/pluto/bin/TestSerialPort -p /dev/ttyUSB0 -P N81 -b 19200 -t "\02\60" ,
I saw the output on my protocol analyzer.
Any suggestion really appreciated,
Charlie,
Have you got the "USB to Serial adapter" issue solved yet on 810?
Thanks
Marty
No, still an open issue for me.
Do you have similar issue??
Regarding USB 2 Serial. This has been fixed since 20090515 (alpha2.20). At least we have lots of people reporting success detecting USB ZWave sticks, USB UIRT, and I myself got my USB-2-2xSerial detected.
Quote from: Michaelree on May 05, 2009, 11:03:07 PM
I had my PLM working with 710, and about 20 insteon devices, about 40% of the time when I would restart the core which is where my PLM is connected, I would lose a device or two on the floor plan. I have looked through all of the ruby code to try and fix this problem, and also add support for the HVAC adapter and for the motion sensor. The time out errors are because the PLM cannot communicate with the device at that address. The chip inside the PLM that sends and receives commands form your power lines is about 75% as strong as the chips all other insteon devices. So even though one device commutates perfectly with another device, It might not be getting the signal to the PLM. I fix this problem in my network, and now it works 100% of the time and even the response time on sending commands is faster. A few ways you can fix this problem.
1) Access Points should be located on the 1st receptacle on the line, As close as you can get it to the actual breaker box(this fixed my problem), and make sure one on is on each phase of your power.
2) Do not plug the PLM into a surge protector.
3) It would be ideal to have the PLM as close to the breaker box as possible.
4) Move the PLM to a different line that does not have lots of electronics on it.
After you get the communication problem fixed you should not see the timeout error any more.
I did look at trying to update the driver to support more devices, and I got the HVAC half way working, but I kept running into the problem of not having any link management available. You can link every insteon device from the PLM and never have to go around and push the dumb button in for 10 seconds. I could not figure out a good way to accomplish device linking natively in LinuxMCE, so I stopped working on the driver. I spent a lot of time looking around to see how others are handling insteon networks, and most of them have gone with ISY-99. It has a lot of advantages over using just the PLM. I just received it in the mail last week, and started working on a driver for it.
Hope this helps,
Chris
Any results on the ISY-99 and also have you tried 8.10 yet?
Thanks
Marty
Seth,
I attached the Ruby code I used in my 710 Insteon PLM setup for your reference.
;D
Thanks. I will give it a try this evening.
I hope it resolves my issues.
Regards,
Seth
Is that code apart in svn?
This is the same code in the wiki page, without the extra HTML characters when you use copy and paste.
BTW, I just updated my 810 to Alpha 2.21, now I see commands exchange between the host(USB2Serial adapter) and the PLM, but LMCE can not detect the "OutletLinc" light for some reason, I need to do some comparison with my 710 setup, which is working perfect.
I Just want to give an update on my status with Insteon setup, the 7.10 with direct serial port to the hybrid worked without any problem first try, my LMCE 810 Alpha 2.21 with USB2Serial adapter, now is working, with the following modifications:
1) changing default value of "#37 COM port on PC" to "/dev/ttyUSB0"
2) select "pci0000:00/0000:00:02.0+5" from the drop down list of the device data COM Port on PC
3) Created 88_InsteonPLM.sh (for Plug n Play) per Wiki instructions
I attached the data exchanged between LMCE with PLM module if someone interested.
Quote from: ccoudsi on May 04, 2009, 08:56:43 PM
I'm not sure if this will help you or not, but here is my experience, I got my basic Insteon setup working on my Hybrid (7.10) using PC serial port, by following the wiki instructions "http://wiki.linuxmce.org/index.php/Setting_Up_PLM_Template" step by step and cleaning the Ruby code first before I pasted in the template, by copying the code from the wiki page to a text file, removing some html code, then I pasted the code from the text file to the template, and I removed code #141 ruby code(CD/DVD) from the template, after rebooting my Hybrid, and linking my "Insteon Outlinc" to my PLM (Serial port), another Hybrid reboot, then I added a lamp to the floor map, and I was able to turn On/Off the lamp which is connected to Insteon Outlinc "http://www.insteon.net/2473SWH-outletlinc.html".
currently i'm trying the same configuration on 8.10 hybrid using default insteon PLM template, with "USB to Serial adapter", I replaced "/dev/ttyS0" on the default template with "/dev/ttyUSB0" with no luck, I know my "/dev/ttyUSB0" is working using
Quote/usr/pluto/bin/TestSerialPort -p /dev/ttyUSB0 -P N81 -b 19200 -t "\02\60" ,
I saw the output on my protocol analyzer.
Any suggestion really appreciated,
Charlie,
I gave your suggestion a shot and completely deleted and reconfigured the PLM for the second time, following the wiki page, Insteon - setting up the PLM template, and 'running the Insteon PLM Driver for the first time.' I'm not seeing activity in the activity log, other than this:
/var/log/pluto/153_Generic_Serial_Device.log
0000 006D 0022 0002 0157 00AC 0015 0040 0015 0016 0015 0040 0015 0016 0015 0016 0015 0016 0015 0016 0015 0040 0015 0016 0015 0016 0015 0016 0015 0016 0015 0040 0015 0040 0015 0016 0015 0016 0015 0016 0015 0040 0015 0040 0015 0040 0015 0040 0015 0016 0015 0016 0015 0016 0015 0016 0015 0016 0015 0016 0015 0016 0015 0016 0015 0040 0015 0040 0015 0040 0015 06AF 0157 0056 0015 0E42
^
(eval):13: syntax error, unexpected tINTEGER, expecting kEND
0000 006D 0022 0002 0156 00AC 0015 0040 0015 0015 0015 0040 0015 0015 0015 0015 0015 0016 0015 0015 0015 0040 0015 0015 0015 0016 0015 0015 0015 0015 0015 0040 0015 0040 0015 0015 0015 0015 0015 0040 0015 0040 0015 0040 0015 0040 0015 003F 0015 0015 0015 0016 0015 0015 0015 0016 0015 0015 0015 0015 0015 0015 0015 0015 0015 0040 0015 0040 0015 0040 0015 0680 0156 0056 0015 0E3B
^
(eval):19: syntax error, unexpected tINTEGER, expecting kEND
0000 006E 0022 0002 0156 00AB 0015 003F 0015 0015 0015 003F 0015 0015 0015 0015 0015 0015 0015 0015 0015 003F 0015 0015 0015 0015 0015 0015 0015 0015 0015 003F 0015 003F 0015 0015 0015 0015 0015 003F 0015 003F 0015 0015 0015 003F 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 003F 0015 003F 0015 003F 0015 003F 0015 06AA 0156 0055 0015 0E37
^
(eval):25: syntax error, unexpected tINTEGER, expecting kEND
0000 006E <0x42804950>
I'm at a loss. I've only got two COM ports listed, /dev/ttyS0 (which I have selected) and pci0000:00/0000:00:02.0+2 Used by USB UIRT 0038.
I'm ready to switch my automation over to Windows I'm so frustrated. I'll give anyone a look at my box that's willing and would certainly appreciate some suggestions. This one is beyond my grasp.
You got bit by the GSD IR codes bug. This has been fixed in recent 0810 releases.
-Thom
can somebody please write a c++ dce device for insteon?? Btw, we already have code in svn, just the device template needs to be recreated.
br, Hari
So there's no fix for it in 710? I really don't want to wait a year for 810 RC to come out before I can solve this problem.
You may want to go ahead and move to the 810 alpha.
-Thom
I'm not thrilled about what you're suggesting Thom. Trading one solution for potential countless other bugs on an alpha does not sound like a sane move for me.
-Keith
You have a couple of choices:
(1) re-paste the entire Insteon PLM code back into that code group, replacing the pronto codes that bled into that section.
(2) install 0810, and re-paste that code into that code group, to make sure everything is clean.
The alphas have been very stable for us, and solve a lot of problems. We are NOT doing ANY more development on 0710 at all, and no more updates will be given for it. The sqlCVS database for it has also been capped off.
-Thom
it is also possible to do a select into outfile of that command, edit it, and load infile it back..
br, Hari
Quote from: tschak909 on May 26, 2009, 04:53:29 PM
You have a couple of choices:
(1) re-paste the entire Insteon PLM code back into that code group, replacing the pronto codes that bled into that section.
(2) install 0810, and re-paste that code into that code group, to make sure everything is clean.
The alphas have been very stable for us, and solve a lot of problems. We are NOT doing ANY more development on 0710 at all, and no more updates will be given for it. The sqlCVS database for it has also been capped off.
-Thom
You guys are referring to pasting the ruby code into the various numerical sections of the template right? It's odd that I leterally just did that and I'm getting this result.
@ Hari, I have no idea what an outfile is. Can you elaborate?
Yeah, do it again, and see if the code sticks. This is a known bug in 0710.
You _really_ should migrate to 0810.
-Thom