Jump to content

Device controlled by ISY status


mcrean

Recommended Posts

I posted this in the middle of another topic, but I want to bring it up separately.

 

I found is that if I change a device status from the ISY, that programs do not see it correctly. I turned off a device earlier tonight from the ISY and this program (which is in a time restrained folder) still shows 'True', having run tonight at 10:01, even though the Icon 2 is Off:


If

       Time is 10:01:00PM

   And Status  'Icon 2' is On

Then

       Run Program 'Test 2 Pager'

Else

  - No Actions - (To add one, press 'Action')

 

 

 

Is this how it is supposed to be?

Link to comment

mccrean,

 

This bug was identified in another forum, here's the link:

 

http://forum.universal-devices.com/viewtopic.php?t=1189

 

Yes, the problem you mention is a bug.

 

Basically, when a Folder is disabled, the programs within it are not run, and further, the conditions are not evaluated. Therefore, when you turned everything Off, all those events were essentially lost for the programs in the disabled folder because the state of the conditions were not being updated.

 

This will be fixed in the code drop.

 

Thanks for the detailed explanations of the problems you are experiencing, they are great help!

Link to comment

Michael,

The specific problem with your program below (and in the other thread we were working on) is the following -

 

1) On the previous day, your Folder became disabled with your ICON 2 Status as ON.

 

2) On the current day, the Folder became re-enabled and the ICON 2 Status was not updated. Your folder considered this device to be ON (last observed condition) even though your ISY program tree understood the status was OFF.

 

3) At 10:01 the program enabled (time condition) and operated on the Old status - calling your pager program.

 

I've tried a number of methods for updating the status within the folder (queries etc.) but have been unsuccessful to date.

 

For the time being, I believe the workaround is to remove the folder condition when using Status conditions. This should not be a problem if you are using strictly Time Based, or Control conditions as these do not depend on the current status of the device.

 

IM

 

I posted this in the middle of another topic, but I want to bring it up separately.

 

I found is that if I change a device status from the ISY, that programs do not see it correctly. I turned off a device earlier tonight from the ISY and this program (which is in a time restrained folder) still shows 'True', having run tonight at 10:01, even though the Icon 2 is Off:


If

       Time is 10:01:00PM

   And Status  'Icon 2' is On

Then

       Run Program 'Test 2 Pager'

Else

  - No Actions - (To add one, press 'Action')

 

 

 

Is this how it is supposed to be?

Link to comment
Michael,

The specific problem with your program below (and in the other thread we were working on) is the following -

 

1) On the previous day, your Folder became disabled with your ICON 2 Status as ON.

 

2) On the current day, the Folder became re-enabled and the ICON 2 Status was not updated. Your folder considered this device to be ON (last observed condition) even though your ISY program tree understood the status was OFF.

 

3) At 10:01 the program enabled (time condition) and operated on the Old status - calling your pager program.

 

I've tried a number of methods for updating the status within the folder (queries etc.) but have been unsuccessful to date.

 

For the time being, I believe the workaround is to remove the folder condition when using Status conditions. This should not be a problem if you are using strictly Time Based, or Control conditions as these do not depend on the current status of the device.

 

IM

 

I posted this in the middle of another topic, but I want to bring it up separately.

 

I found is that if I change a device status from the ISY, that programs do not see it correctly. I turned off a device earlier tonight from the ISY and this program (which is in a time restrained folder) still shows 'True', having run tonight at 10:01, even though the Icon 2 is Off:


If

       Time is 10:01:00PM

   And Status  'Icon 2' is On

Then

       Run Program 'Test 2 Pager'

Else

  - No Actions - (To add one, press 'Action')

 

 

 

Is this how it is supposed to be?

 

I have not really done any heavy programming with this yet since I just resolved the majprity of the hardware issues. Looking at this why cant the device that needs the correct status for this prgram to rum be queried forst and then run the program? Or am I missing something?

Link to comment

Digger,

Actually I think we're both missing something (I thought the same thing). The problem is, I tried issuing a status request once the folder became enabled and things still did not update properly. I am not sure why.

 

We probably need Chris for this, but I'd prefer not to overload him with questions when he is already working the issue.

 

IM

 

I have not really done any heavy programming with this yet since I just resolved the majprity of the hardware issues. Looking at this why cant the device that needs the correct status for this prgram to rum be queried forst and then run the program? Or am I missing something?

Link to comment

The query program is the part the failed to work correctly in my deck spots program. I had the query run after the folder enabled and the program would not call the "Then' statement intermittently.

 

Actually I think we're both missing something (I thought the same thing). The problem is, I tried issuing a status request once the folder became enabled and things still did not update properly. I am not sure why.

 

IndyMike,

Did you move the query program outside the folder? Did that help? That was Chris Jahn's suggestion at the beginning of my Deck Spots post.

 

Also, thank you for the clarification of the original question.

 

Michael,

The specific problem with your program below (and in the other thread we were working on) is the following -

 

1) On the previous day, your Folder became disabled with your ICON 2 Status as ON.

 

2) On the current day, the Folder became re-enabled and the ICON 2 Status was not updated. Your folder considered this device to be ON (last observed condition) even though your ISY program tree understood the status was OFF.

 

3) At 10:01 the program enabled (time condition) and operated on the Old status - calling your pager program.

 

I've tried a number of methods for updating the status within the folder (queries etc.) but have been unsuccessful to date.

 

For the time being, I believe the workaround is to remove the folder condition when using Status conditions. This should not be a problem if you are using strictly Time Based, or Control conditions as these do not depend on the current status of the device.

 

IM

 

mcrean wrote:

I posted this in the middle of another topic, but I want to bring it up separately.

 

I found is that if I change a device status from the ISY, that programs do not see it correctly. I turned off a device earlier tonight from the ISY and this program (which is in a time restrained folder) still shows 'True', having run tonight at 10:01, even though the Icon 2 is Off:

Code:

 

 

If

 

Time is 10:01:00PM

 

And Status 'Icon 2' is On

 

Then

 

Run Program 'Test 2 Pager'

 

Else

 

- No Actions - (To add one, press 'Action')

 

 

 

 

Is this how it is supposed to be?

 

Can you tell me where conditional folders differ than putting the conditional in the program? Is there a scenario where the folder has to be the conditional?

Link to comment
The query program is the part the failed to work correctly in my deck spots program. I had the query run after the folder enabled and the program would not call the "Then' statement intermittently.

 

IndyMike,

Did you move the query program outside the folder? Did that help? That was Chris Jahn's suggestion at the beginning of my Deck Spots post.

 

Michael,

 

I think we're mixing terms here. Your program is set to trigger at 10:01 PM if the Icon status is true. The Icon status condition is not a query. It is either a current "logged status" of the device or it can be an event (a status change in the device). Since you are using the time condition with the status your Icon 2 is operating on the "logged status" of the device only.

 

Chris's comment was that this program did not need to be within a conditional folder. That comment is still valid - the program is already time constrained, putting it in a (time) conditional folder doesn't add anything. On the flip side, having this in the conditional folder shouldn't hurt anything either. Unfortunately, due to the status bug, having this within the conditional folder makes it intermittent.

 

When I referred to "querying" the status of the device within the folder I was using a separate program. This program ran immediately after the folder was enabled and specifically queried the status of the devices. Unfortunately this didn't work either.

 

Can you tell me where conditional folders differ than putting the conditional in the program? Is there a scenario where the folder has to be the conditional?

 

Conditional folders are a nice "feature" afforded by the ISY. It allows you to group programs that run according to a particular condition. If also speeds program execution since the folder condition need only be evaluated once.

 

I do not know of a scenario where a folder "has" to be a conditional. All of the programs that you've posted should function if you place the conditions within the program itself.

Link to comment

Archived

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


×
×
  • Create New...