Charmed Quark Systems, Ltd. - Support Forums and Community
Timed Field Change in Lutron HW8 - Printable Version

+- Charmed Quark Systems, Ltd. - Support Forums and Community (https://www.charmedquark.com/vb_forums)
+-- Forum: General Discussion (https://www.charmedquark.com/vb_forums/forumdisplay.php?fid=3)
+--- Forum: Installation/Configuration (https://www.charmedquark.com/vb_forums/forumdisplay.php?fid=10)
+--- Thread: Timed Field Change in Lutron HW8 (/showthread.php?tid=10646)

Pages: 1 2


Timed Field Change in Lutron HW8 - avtexan - 07-28-2018

I am setting up some Motion Triggers for my lighting.
I have any that control a field working fine.
I am having an issue when I try a sim a Lutron button press which require a press & release.

This is what I tried:

Devices::TimedFldChange
    P1=LutronHW8.InvokeCmd
    P2=ButtonSim : Master, Press, ButtonSim : Master, Release
    P3=ButtonSim : Master, Press, ButtonSim : Master, Release
    P4=1

Ideas?


RE: Timed Filed Change in Lutron HW8 - Dean Roddey - 07-28-2018

Is that a typo maybe? You are doing Release in both cases. Don't you want Press in the P2, then the later value to be Release? BTW, I don't think it will go as low as 1 second. It's likely increasing that. For something that short, don't use a timed field change. Just write the value, do a System:Tongueause for a second, then write the second value.


RE: Timed Filed Change in Lutron HW8 - avtexan - 07-28-2018

So if the lights are off and I have motion this is what I was thinking:

P2 (Turn lights ON) Need a button Press AND a button Release for CQC to SIM the button press in Lutron
Now the lights for the scene are ON

After a period of time I want the lights off

P3 (Turn lights OFF) Need a button Press AND a button Release for CQC to SIM the button press in Lutron
Now the lights for the scene are OFF

P4 is set to 1 for testing (That is 1 minute. I believe 0:01 is 1 second). It will likely be 5-10 minutes in use.


RE: Timed Filed Change in Lutron HW8 - Dean Roddey - 07-28-2018

You wouldn't be able to do that since it requires two different writes in both cases, and you can only do one write and then one subsequent timed write. It seems like the driver really needs to have a press/release command that does both in one field write. That would then allow you to use the timed field write for what you want.

Sorry, on the time thing, I misread that. Yeh, that should be a minute.


RE: Timed Field Change in Lutron HW8 - avtexan - 08-05-2018

Thanks Dean.  If you ever get a chance it would be great if the Old Homeworks 8 driver would have one command for press & release.
The driver also needs a double tap  I know you always have a lot on the plate but it would be helpful.

I am continuing to work on my motion triggers.  There are a couple of them that I don't need a turn off so a basic command will work fine.  I want the trigger to turn them on and leave them on.

I am having one issue.  All of my Lutron button presses are toggles.  So if the LED is On it turn the scene OFF.  If the LED is On it turns the scene OFF
So I need to look for that or as the motion cycles it will turn the light on and then off, etc

If I look for that LED status in Fld Value Equals inside the trigger  it works fine.

I want to check for that status inside the action as all button presses that I use will need to look for this.  It also would free up one of the 4 spots for other filters.
When I try and this inside the action the scene toggles each time the motions starts.
This is what I have.  What am I missing?

// SET SCENE NAME
LocalVars::SetVariable
    P1=LVar:SceneSelected
    P2=DownPath

// CHECK LED STATUS IS OFF
LocalVars::SetVariable
    P1=LVar:LEDStatus
    P2=Off

// 
// TURN ON SELECTED SCENE
If 
Devices::FieldRead
    P1=LutronHW8.LED_%(LVar:SceneSelected)
    P2=LVar:LEDStatus
    P3=True

Devices::FieldWrite
    P1=LutronHW8.InvokeCmd
    P2=ButtonSim : %(LVar:SceneSelected), Press
    P3=True

Devices::FieldWrite
    P1=LutronHW8.InvokeCmd
    P2=ButtonSim : %(LVar:SceneSelected), Release
    P3=True

End

//


RE: Timed Field Change in Lutron HW8 - Dean Roddey - 08-05-2018

Don't use FldValueEquals. See the docs for that filter. It's dangerous and only should be used in conjunction with something else. It actually goes out and looks at the actual field, it doesn't use the value that caused the toggle (which is sent in the trigger itself.) There's another one, "New Field Value For" or something like that, which actually uses the value sent in the trigger itself.

If you have any action and the only filter is FldValueEquals, it's going to run any time any trigger occurs, and that field has that value. You normally would only use that one in conjunction with something else, to see if some other field besides the one you are triggering on has a particular value. It's often used to create suppression fields in the variables driver to stop some events from triggering for some reason.


RE: Timed Field Change in Lutron HW8 - avtexan - 08-05-2018

In this case I am trying NOT to use the Fld Value Equals.

The trigger are:
1) Is Motion Event for: Alarm.MOT#Foyer_Motion
2) Is Motion Start
3) Unused
4) Unused

Trigger If: All are True

ACTION:

// SET SCENE NAME
LocalVars::SetVariable
    P1=LVar:SceneSelected
    P2=DownPath

// CHECK LED STATUS IS OFF
LocalVars::SetVariable
    P1=LVar:LEDStatus
    P2=Off

// 
// TURN ON SELECTED SCENE
If 
Devices::FieldRead
    P1=LutronHW8.LED_%(LVar:SceneSelected)
    P2=LVar:LEDStatus
    P3=True

Devices::FieldWrite
    P1=LutronHW8.InvokeCmd
    P2=ButtonSim : %(LVar:SceneSelected), Press
    P3=True

Devices::FieldWrite
    P1=LutronHW8.InvokeCmd
    P2=ButtonSim : %(LVar:SceneSelected), Release
    P3=True

End


RE: Timed Field Change in Lutron HW8 - Dean Roddey - 08-05-2018

If I'm understanding you, the field read doesn't return the value of the field read, it returns whether the read worked or not. And even then, only if the last parameter is False, else it will cause an error and stop. You want to read the value into the variable, then compare the value in the variable to False. If so, then do the thing.

So do this instead:

Code:
Devices::FieldRead(LutronHW8.LED_%(LVar:SceneSelected), LVar:LEDStatus, True);
If  System::Equals(%(LVar:LEDStatus), False)
   // Put your stuff in here to do the press/release
EndIf



RE: Timed Field Change in Lutron HW8 - avtexan - 08-05-2018

It did not work when I compared the LVar:LEDStatus to False but it did when I compared it to Off.
Does this look correct?

LocalVars::SetVariable
P1=LVar:SceneSelected
P2=DownPath

Devices::FieldRead
P1=LutronHW8.LED_%(LVar:SceneSelected)
P2=LVar:LEDStatus
P3=True

If
System::Equals
P1=%(LVar:LEDStatus)
P2=Off
P3=Case

Devices::FieldWrite
P1=LutronHW8.InvokeCmd
P2=ButtonSim : %(LVar:SceneSelected), Press
P3=True

Devices::FieldWrite
P1=LutronHW8.InvokeCmd
P2=ButtonSim : %(LVar:SceneSelected), Release
P3=True

End


RE: Timed Field Change in Lutron HW8 - Dean Roddey - 08-06-2018

I was assuming the LEDStatus was a boolean value. Maybe it has other values than off and on, so it needed to be an enum. Oh, it has a blinking state as well, right? If so, that would be why. Anyhoo, yeh, that looks reasonable to me.