Jump to content

Status "is Responding" ?


jerlands

Recommended Posts

  • 2 months later...

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.

Link to comment

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?

Link to comment

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.   

.

Link to comment

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

Link to comment

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.  

Link to comment

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

Link to comment

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.

Link to comment

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.

Link to comment

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?

Link to comment

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. 
 
Link to comment

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?

Link to comment

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. 
Link to comment

Archived

This topic is now archived and is closed to further replies.


  • Recently Browsing

    • No registered users viewing this page.
  • Who's Online (See full list)

    • There are no registered users currently online
  • Forum Statistics

    • Total Topics
      36.9k
    • Total Posts
      370.2k
×
×
  • Create New...