jerlands Posted April 12, 2015 Posted April 12, 2015 Not really knowing what it means.. "responding," I assume, implies the controller is ON at any level? Thanks, Jon
LeeG Posted April 12, 2015 Posted April 12, 2015 The node is responding to commands. Not related to any specific command.
Mikes Posted June 17, 2015 Posted June 17, 2015 If used in a 'If', as below, what commands are used to test the responding state? How often does this occur? If Status '23.d1.7f-Sensor' is Responding
stusviews Posted June 17, 2015 Posted June 17, 2015 Status is tested each time the state of the device changes.
LeeG Posted June 17, 2015 Posted June 17, 2015 No commands are sent to the device by that statement. A "not responding" device has a Red ! next to the device node. A "responding" device does not have the red !. The If Status 'xxxx' is/is not responding is checking for the Red ! indication.
Davonavo Posted June 17, 2015 Posted June 17, 2015 So if a device is going from On to Off, Off to On, Bright to Dim, etc. it is "Responding" ?
LeeG Posted June 17, 2015 Posted June 17, 2015 (edited) Yes. The file shows a KPL that "is not responding". I removed power from the device last week for other tests. Edited June 17, 2015 by LeeG
Mikes Posted June 19, 2015 Posted June 19, 2015 I must be missing something. I would think something has to query a device to know that is not responding. If the 'If' statement does not 'query' a device how does the ISY know that a device is not responding? Is the ISY periodically querying devices? If so how often does that happen?
Michel Kohanim Posted June 19, 2015 Posted June 19, 2015 Hi Mikes, Not only query but also any other types of communication such as turning things on and off. With kind regards, Michel
LeeG Posted June 19, 2015 Posted June 19, 2015 (edited) Mikes What are you trying to accomplish with 'is responding'? Here is a simple test Program result. No command sent to device. It is looking at the information the ISY has about whether the device has responded to commands. IsResponding - [iD 0053][Parent 0001] If Status 'IOLinc I2CS-Sensor / IOLinc I2CS-Relay' is Responding Then Send X10 'A1/On (3)' Else Send X10 'A1/Off (11)' Fri 06/19/2015 06:02:15 AM : [ Time] 06:02:14 4(0) Fri 06/19/2015 06:02:15 AM : [X10-RSP ] 02 63 66 00 06 Fri 06/19/2015 06:02:15 AM : [ X10] A1 Fri 06/19/2015 06:02:15 AM : [ X10] A1/On (3) Fri 06/19/2015 06:02:16 AM : [X10-RSP ] 02 63 62 80 06 Fri 06/19/2015 06:02:17 AM : [X10-RX ] 02 52 66 00 Fri 06/19/2015 06:02:17 AM : [ X10] A1If you want to know at that instant if the device 'is responding' send some command first. On, Off, Query, whatever. You lose the ability to know if the device reacted to the last action against the device.if you issue a command. Again, what are you trying to accomplish? EDIT: Example A Program sends a command to the I/O Linc Relay to Close the garage door. The garage door does not close. A question that might be asked, did the I/O Linc Relay receive the command to Close the door? The "If 'is responding' " answers that question. If 'is responding' always sent a command you could not use the 'is responding' to know if the Close door command reached the I/O Linc Relay. If what the I/O Linc Relay did last is not important a command such as 'Off' can be sent to the device followed by an 'is responding' check. . Edited June 19, 2015 by LeeG
klundy Posted June 20, 2015 Posted June 20, 2015 So how would we use the "is responding" to determine if a device is reachable, without sending an on or off command first? I have a circuit that keeps tripping it's GFI. I haven't been able to determine the cause. I'd like to create a program to monitor a device on that circuit to alert me the circuit has tripped. This has my beer fridge on the lanai, so it is mission critical I know I need to find the root cause of why it is tripping, and I'm hoping getting a timing alert will help in that regard as well. Kevin
LeeG Posted June 20, 2015 Posted June 20, 2015 That would be the case where you want to monitor if something is possible (power available to a device). Something like Query or Off or On would be fine as you are not trying to analyze an issue with that particular device.
Mikes Posted June 22, 2015 Posted June 22, 2015 LeeG, I'm actually trying to understand how a program that I wrote sometime back is working. I have a thermostat near my woodstove that inputs to an Insteon Input device that turns a fan on when the temp gets to hot and turns it off when temp goes back down. My program is just doing an if Status 'xxx' is Responding with then turning the fan on and the else turning the fan off. Everything I read here says this should not work. I don't remember writing this or why I may have done it this way other than reading it in the forums here somewhere. Being a long time programmer it just baffles me as to when\why these If's (programs) are called. If in a true program are simple statements executed in some flow of an application that I as a programmer know when\why this code may be executing..
LeeG Posted June 22, 2015 Posted June 22, 2015 Something must be driving the 'is responding' Program as it does not run on its own initiative. Perhaps the thermostat is battery powered so that it changes to 'is not responding' to save battery life. Just a wild guess. Need more information to explain the operation.
Mikes Posted June 24, 2015 Posted June 24, 2015 I have a non Insteon thermostat switch feeding the input of a Insteon sensor. I can't believe the ISY does not tell me what type of device it is but I know it's the one folks typically use for garage door closure sensor. When the thermostat trips it closes the input Sensor. I have no other applications reading the 'Sensor' but there are some timed programs that control the 'Relay' side of the same Insteon device. Does sending a command to the 'Relay' constitute reading the 'Sensor'? One other possibility is that this doesn't actually work any longer, it was working just fine all winter. Heating season is over so I have not actually had the thermostat trip,in a while. I was actually going to refine a program, to make a 'cool' mode, to trip the sensor when temp goes below a set point. That's how I got to this question how \why does this work now.
stusviews Posted June 24, 2015 Posted June 24, 2015 The device is an I/O Linc. Sending an On to the relay is independent of the sensor. What doesn't work, the I/O Linc or the program?
LeeG Posted June 24, 2015 Posted June 24, 2015 I put this simple test Program together that has an If 'is responding' for an I/O Linc Sensor. This Program does not trigger when Sensor is switched On or Off. Notice no X10 traffic as Sensor is cycled Off, then On. AAA3 - [iD 0043][Parent 0001] If Status 'IOLinc I2CS-Sensor' is Responding Then Send X10 'A1/On (3)' Else Send X10 'A1/Off (11)' Wed 06/24/2015 04:10:20 AM : [iNST-SRX ] 02 50 1C.FD.D5 00.00.01 CB 13 00 LTOFFRR(00) Wed 06/24/2015 04:10:20 AM : [std-Group ] 1C.FD.D5-->Group=1, Max Hops=3, Hops Left=2 Wed 06/24/2015 04:10:20 AM : [D2D EVENT ] Event [1C FD D5 1] [DOF] [0] uom=0 prec=-1 Wed 06/24/2015 04:10:20 AM : [ 1C FD D5 1] DOF 0 Wed 06/24/2015 04:10:20 AM : [D2D EVENT ] Event [1C FD D5 1] [sT] [0] uom=0 prec=-1 Wed 06/24/2015 04:10:20 AM : [ 1C FD D5 1] ST 0 Wed 06/24/2015 04:10:20 AM : [D2D-CMP 0079] STS [1C FD D5 1] ST op=1 Event(val=0 uom=0 prec=-1) is Condition(val=255 uom=0 prec=-1) --> false Wed 06/24/2015 04:10:20 AM : [iNST-SRX ] 02 50 1C.FD.D5 13.00.01 CB 06 00 (00) Wed 06/24/2015 04:10:20 AM : [std-Group ] 1C.FD.D5-->13.00.01, Max Hops=3, Hops Left=2 Wed 06/24/2015 04:10:20 AM : [iNST-INFO ] Previous message ignored. Wed 06/24/2015 04:10:26 AM : [iNST-SRX ] 02 50 1C.FD.D5 00.00.01 CB 11 00 LTONRR (00) Wed 06/24/2015 04:10:26 AM : [std-Group ] 1C.FD.D5-->Group=1, Max Hops=3, Hops Left=2 Wed 06/24/2015 04:10:26 AM : [D2D EVENT ] Event [1C FD D5 1] [DON] [0] uom=0 prec=-1 Wed 06/24/2015 04:10:26 AM : [ 1C FD D5 1] DON 0 Wed 06/24/2015 04:10:26 AM : [D2D EVENT ] Event [1C FD D5 1] [sT] [255] uom=0 prec=-1 Wed 06/24/2015 04:10:26 AM : [ 1C FD D5 1] ST 255 Wed 06/24/2015 04:10:26 AM : [D2D-CMP 0079] STS [1C FD D5 1] ST op=1 Event(val=255 uom=0 prec=-1) is Condition(val=255 uom=0 prec=-1) --> true Wed 06/24/2015 04:10:27 AM : [iNST-SRX ] 02 50 1C.FD.D5 11.00.01 CB 06 00 (00) Wed 06/24/2015 04:10:27 AM : [std-Group ] 1C.FD.D5-->11.00.01, Max Hops=3, Hops Left=2 Wed 06/24/2015 04:10:27 AM : [iNST-INFO ] Previous message ignored. When the 'is responding' is changed to On the Program does trigger. AAA3 - [iD 0043][Parent 0001] If Status 'IOLinc I2CS-Sensor' is On Then Send X10 'A1/On (3)' Else Send X10 'A1/Off (11)' Wed 06/24/2015 04:13:37 AM : [iNST-SRX ] 02 50 1C.FD.D5 00.00.01 CB 13 00 LTOFFRR(00) Wed 06/24/2015 04:13:37 AM : [std-Group ] 1C.FD.D5-->Group=1, Max Hops=3, Hops Left=2 Wed 06/24/2015 04:13:37 AM : [D2D EVENT ] Event [1C FD D5 1] [DOF] [0] uom=0 prec=-1 Wed 06/24/2015 04:13:37 AM : [ 1C FD D5 1] DOF 0 Wed 06/24/2015 04:13:37 AM : [D2D EVENT ] Event [1C FD D5 1] [sT] [0] uom=0 prec=-1 Wed 06/24/2015 04:13:37 AM : [ 1C FD D5 1] ST 0 Wed 06/24/2015 04:13:37 AM : [D2D-CMP 0079] STS [1C FD D5 1] ST op=1 Event(val=0 uom=0 prec=-1) is Condition(val=255 uom=0 prec=-1) --> false Wed 06/24/2015 04:13:37 AM : [D2D-CMP 0043] STS [1C FD D5 1] ST op=1 Event(val=0 uom=0 prec=-1) is Condition(val=255 uom=0 prec=-1) --> false Wed 06/24/2015 04:13:37 AM : [ X10] A1 Wed 06/24/2015 04:13:37 AM : [X10-RSP ] 02 63 66 00 06 Wed 06/24/2015 04:13:37 AM : [ X10] A1/Off (11) Wed 06/24/2015 04:13:38 AM : [X10-RSP ] 02 63 63 80 06 Wed 06/24/2015 04:13:38 AM : [X10-RX ] 02 52 66 00 Wed 06/24/2015 04:13:38 AM : [ X10] A1 Your situation does not reproduce. There are other Programs involved or the Program described is not functional.
Mikes Posted June 30, 2015 Posted June 30, 2015 LeeG, I was finally able to take the time and test my situation and it does not work, which is what you have said. I have no idea how or why this program, that had worked all winter, comes up with the Responding in my If statement I wouldn't think I would have put in there and accidentally saved it but it was there and does not work. Thanks for your time and the above, where can I find more details on interpreting the above 'trace' you have posted?
LeeG Posted June 30, 2015 Posted June 30, 2015 (edited) Mikes Most of what is in the event trace can be understood by reading the insteondetails.pdf document that is accessed at insteon.com. Some information in that document discusses details about how Insteon works which may be interesting to some but the good stuff covers Insteon message structure and flow in detail. Also SmartLabs has released what was confidential in the past, details on device specific information under the Developer section. Some of the information in that LEVEL 3 trace is added by UDI. The Blue is the actual inbound message from device. The other information is the UDI identification of some of the data in the message; Group, Max Hops, Hops Left, that is helpful to know without having to analyze the actual message. Wed 06/24/2015 04:10:20 AM : [iNST-SRX ] 02 50 1C.FD.D5 00.00.01 CB 13 00 LTOFFRR(00) Wed 06/24/2015 04:10:20 AM : [std-Group ] 1C.FD.D5-->Group=1, Max Hops=3, Hops Left=2 It just takes time to dig out all the useful information. i've been using Insteon for some ten years. There is information that has not been necessary to understand to know what is happening. New things which SmartLabs is adding all the time which they consider confidential and do not discuss with us normal users. The release of the Developer Notes was a major advance in what SmartLabs was willing to pass on to users. Edited June 30, 2015 by LeeG
Recommended Posts