Jump to content

Set On Level doesn't actually set ...


khisanthax

Recommended Posts

I'm trying to do something very simple but it doesn't seem to work right. I just want the lights dimmed after a time. I followed the following code but it still doesn't work. The log shows as true when the time comes but the lights still don't dim. The only difference in the code below and what I have on the isy is that the "then" statement has 5 more scenes and the "else" statement also has 5 more scenes.

 

If someone could point me in the right direction I would greatly appreciate it.

 

If
       From    5:00:00PM
       To      Sunrise -  1 hours (next day)

Then
       In Scene 'Living room' Set 'Living Room Light Switch' 20% (On Level)


Else
       In Scene 'Living room' Set 'Living Room Light Switch'  100% (On Level)

Link to comment

The Adjust Scene statements do not physically change a device On Level or Ramp Rate. They establish the conditions desired for the next time the value being changed is used.

 

After issuing the Adjust Scene statement(s) turn the Scene On so the new values take affect.

Link to comment

Also note that the ISY Scene responder value is being changed which affects when the ISY Scene itself is referenced in a Program or invoked from the Admin Console. If the action of a controller paddle press should be affected more Adjust Scene statements are needed using the Controller device in the In Scene parameter. In Insteon the action of a responder is unique to each Controller.

Link to comment

Thanks guys. I just figured out about changes to the scene only work with changes made to the scene itself and not the device.

 

But I find it frustrating because I made three programs, one for the time range, one for after hour lights and one for regular lights. Then in the motion sensing program in the if, then and else section I called on the appropriate program but found that the if and then section would work but not the else section. I thought this would make for easier changes down the road ... but it didn't work ... so I'm defaulting on just doing it simpler unless someone can point me in right direction.

Link to comment

The other On Level values can be changed with the Adjust Scene. However, only one value can be changed for each Adjust Scene statement so it can take several Adjust Scene statements to get all the various values Insteon may use.

 

Post the actual Program where the Else would not execute. Right click on Program name and select Copy to Clipboard. Paste into post.

Link to comment

SMH I didn't see the copy to clipboard ...

 

Below is the whole code that I used in one program. I took that code and made the IF, THEN and ELSE it's own program.

 

If
       From     9:30:00PM
       To      Sunrise -  1 hour  (next day)

Then
       In Scene 'Living Room' Set 'living room light switch' 20% (On Level)
       In Scene 'Kitchen' Set '' 20% (On Level)
       In Scene 'Hallway' Set 'Hallway Light Switch' 20% (On Level)
       In Scene 'Guest Bedroom' Set 'Guest Room Light Switch' 20% (On Level)
       In Scene 'Dining Room' Set 'Dining Room Light Switch' 20% (On Level)
       In Scene 'Master Bedroom' Set 'Master Bedroom Light Switch' 20% (On Level)

Else
       In Scene 'Living Room' Set 'living room light switch' 100% (On Level)
       In Scene 'Kitchen' Set '' 100% (On Level)
       In Scene 'Hallway' Set 'Hallway Light Switch' 100% (On Level)
       In Scene 'Guest Bedroom' Set 'Guest Room Light Switch' 100% (On Level)
       In Scene 'Dining Room' Set 'Dining Room Light Switch' 100% (On Level)
       In Scene 'Master Bedroom' Set 'Master Bedroom Light Switch' 100% (On Level)



 

I then used the following code for the hallway conditions.

 

If
       Control 'Hallway Motion Sensor-Sensor' is switched On
   And Program 'After Hours Lights' is True

Then
       Run Program 'After Hours Lights' (Then Path)
       Set Scene 'Hallway' On

Else
       Run Program 'After Hours Lights' (Else Path)



Link to comment

This Program checks that the Then clause of 'After Hours Lights' was the clause run and then runs the same clause again. Also ISY Programs do not run serially. The Run of the Then clause does not wait for the Then clause to complete. There is no assurance that any of the Then statements have executed before the Set Scene 'Hallway' On statement executes.

 

If

Control 'Hallway Motion Sensor-Sensor' is switched On

And Program 'After Hours Lights' is True

 

Then

Run Program 'After Hours Lights' (Then Path)

Set Scene 'Hallway' On

 

Else

Run Program 'After Hours Lights' (Else Path)

Link to comment

Archived

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


×
×
  • Create New...