Jump to content

Status "is Responding" ?


jerlands

Recommended Posts

Posted

Not really knowing what it means.. "responding," I assume, implies the controller is ON at any level?

 

Thanks,

 

Jon

  • 2 months later...
Posted

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

Posted

Status is tested each time the state of the device changes.

Posted

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.

Posted (edited)

Yes.

 

The file shows a KPL that "is not responding".   I removed power from the device last week for other tests. 

post-707-0-35883200-1434513148_thumb.jpg

Edited by LeeG
Posted

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?

Posted (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]       A1

If 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 by LeeG
Posted

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  :mrgreen:   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

Posted

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.  

Posted

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..

Posted

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.

Posted

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.

Posted

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?

Posted

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. 
 
Posted

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?

Posted (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 by LeeG
Guest
This topic is now closed to further replies.

×
×
  • Create New...