mglacey Posted April 11, 2015 Posted April 11, 2015 Hi Mike, Awesome. Thank you. Wish me luck. I see a good day or two of playing in my future. Mitch
MikeD Posted April 11, 2015 Posted April 11, 2015 Hi Mitch, I am sure you will quickly get everything configured and running this weekend. Glad I could help. ~Mike
AnthemAVM Posted November 3, 2016 Posted November 3, 2016 Hi Waketech, This will be somewhat lengthy however I hope it will be beneficial to others. I basically use two integer variables, $iSchlageLockedBy and $iSchlageUnlockedBy to track everything. The variables are change whenever an action is reported by the lock. Here is one of my user programs that sets the variables, turns on a Scene (button on a few KeypadLincs) and sends a Notification via Prowl. If Status '.Z-Wave / ZW 006 Schlage Door Lock' is Access Code 1 And Control '.Z-Wave / ZW 006 Schlage Door Lock' is switched Unlocked by Keypad Then $iSchlageLockedBy = 0 $iSchlageUnLockedBy = 1 Set Scene 'Scenes / SchlageButton-A' On Resource 'SchlageMary' Else - No Actions - (To add one, press 'Action') 'SchlageButtonA' program that controls the lock from a KeypadLinc button. If Control 'Living Room Wall / A-Schlage Lock' is switched On And Control 'Living Room Wall / A-Schlage Lock' is not switched Off Or ( Control 'Mike Bedside KPL / A-Schlage Lock' is switched On And Control 'Mike Bedside KPL / A-Schlage Lock' is not switched Off ) Then Set '.Z-Wave / ZW 006 Schlage Door Lock' Unlock $iSchlageLockedBy = 0 $iSchlageUnLockedBy = 55 Resource 'SchlageKPLUnLock' Else Set '.Z-Wave / ZW 006 Schlage Door Lock' Lock $iSchlageLockedBy = 3 Set Scene 'Scenes / SchlageUnlock' Off Stop program 'SchlageTimeout' Resource 'SchlageKPLLock' 'SchlageTimeout' (Disabled) program that locks the front door with exceptions noted. If Status '.Z-Wave / ZW 006 Schlage Door Lock' is Unlocked Then Wait 10 minutes Set '.Z-Wave / ZW 006 Schlage Door Lock' Lock $iSchlageLockedBy = 555 Set Scene 'Scenes / SchlageButton-A' Off Resource 'SchlageTimeout' Else - No Actions - (To add one, press 'Action') NOTES: *Must Remain DISABLED otherwise 10 minute time period starts as soon as door is unlocked.* Called by SchlageTimeoutEnable If LRWallKPL-B is Off. Stopped by FrontDoor program and resets upon every door closure. Stopped by SchlageLockedInside and SchlageLockedOutside programs. 'SchlageTimeoutEnable' program. I use a State variable called $sSchalgeTimeoutEnabled. (Another program is triggered when the state of this variable changes and Notifies me via Prowl.) If Status 'Living Room Wall / B-Disable Lock' is Off Then $sSchlageTimeoutEnabled = 1 Wait 5 seconds Run Program 'SchlageTimeout' (If) Else $sSchlageTimeoutEnabled = 0 Stop program 'SchlageTimeout' NOTES: Called by FrontDoor program. LRWallKPL-B Status: On: Prevents FrontDoor from locking after 10 minutes. Off: Calls SchlageTimeout(If) program, that will lock the FrontDoor unless reopened within 10 minutes. 'FrontDoor' program. If Status 'z-Door Sensors / Front Door' is 100% Then Resource 'FrontDrSensorOpen' Stop program 'SchlageTimeout' Else Resource 'FrontDrSensorClosed' Run Program 'SchlageTimeoutEnable' (If) NOTES: Stops SchlageTimeout when evaluated True and Runs SchlageTimeoutEnable when evaluated False. Front Door will automatically re-lock after closure when parameters if LRWallKPL-B is Off. LRWallKPL-B disables SchlageTimeout if On in SchlageTimeoutEnable program. 'SchlageLockedInside' program. If Control '.Z-Wave / ZW 006 Schlage Door Lock' is switched Key/Manually Locked Then $iSchlageLockedBy = 1 Set Scene 'Scenes / SchlageButton-A' Off Wait 1 second Set Scene 'Scenes / SchlageUnlock' Off Stop program 'SchlageTimeout' Resource 'SchlageLockedInside' Else - No Actions - (To add one, press 'Action') 'SchlageLockedOutside' program. If Control '.Z-Wave / ZW 006 Schlage Door Lock' is switched Locked by Keypad Then $iSchlageLockedBy = 2 Set Scene 'Scenes / SchlageButton-A' Off Wait 1 second Set Scene 'Scenes / SchlageUnlock' Off Stop program 'SchlageTimeout' Resource 'SchlageLockedOutside' Else - No Actions - (To add one, press 'Action') 'SchlageManualUnlocked' program. If Control '.Z-Wave / ZW 006 Schlage Door Lock' is switched Key/Manually Unlocked Then $iSchlageUnLockedBy = 0 $iSchlageLockedBy = 0 Set Scene 'Scenes / SchlageButton-A' On Resource 'SchlageManualUnLocked' Else - No Actions - (To add one, press 'Action') 'SchlageTamper' program. If Control '.Z-Wave / ZW 006 Schlage Door Lock' is switched Tamper Code Entry Limit Then $iSchlageLockedBy = 999 $iSchlageUnLockedBy = 999 Resource 'SchlageTamper' Send Notification to 'Michael' content 'SchlageTamper' Else - No Actions - (To add one, press 'Action') Here are my variable definitions. iSchlageUnLockedBy --------------------- 999 = Tamper Alarm 55 = Insteon Keypad 0 = Manually UNLOCKED 1 = Mary 2 = Michael 3 = Janet 4 = Tina 5 = Joe 6 = Alice iSchlageLockedBy ------------------------------------ 999 = Tamper Alarm 0 = Reset when UNLOCKed by Keypad or Manually UNLOCKED 1 = Manually LOCKED from inside 2 = LOCKED by Outside Schlage button 3 = LOCKED by Insteon Keypad 4 = LOCKED by KPLAllOffButton Program 555 = LOCKED by SchlageTimeout Program I also have two other programs to send a notification if the lock is Not Responding or Jammed. ~Mike Mike D, would you mind sharing your Scene in how you get the KPL to report the status of the locks? I am having trouble getting them to report status correctly. Thanks
stusviews Posted November 3, 2016 Posted November 3, 2016 AnthemAVM, Create a scene that has the lock and button as responders. Write a program to control the scene. Here's the scene I use: DR DeadboltIf Control 'DR / Devices / DR Side Door Light / DR Side Door G Front Off' is switched Off Or Control 'DR / Devices / DR ZW Deadbolt' is switched Key/Manually Locked Then Set 'DR / Devices / DR ZW Deadbolt' Lock Set Scene 'DR / Scenes / DR Deadbolt' Off Else Set 'DR / Devices / DR ZW Deadbolt' Unlock Set Scene 'DR / Scenes / DR Deadbolt' On
AnthemAVM Posted November 4, 2016 Posted November 4, 2016 AnthemAVM, Create a scene that has the lock and button as responders. Write a program to control the scene. Here's the scene I use: DR Deadbolt If Control 'DR / Devices / DR Side Door Light / DR Side Door G Front Off' is switched Off Or Control 'DR / Devices / DR ZW Deadbolt' is switched Key/Manually Locked Then Set 'DR / Devices / DR ZW Deadbolt' Lock Set Scene 'DR / Scenes / DR Deadbolt' Off Else Set 'DR / Devices / DR ZW Deadbolt' Unlock Set Scene 'DR / Scenes / DR Deadbolt' On Stusviews, I have the KPL-B buttons and the Schlage lock in a scene, both are responders. This is my program Front Door Status KPL If Control 'KPL Buttons / Becca KPL.B' is switched Off Or Control 'KPL Buttons / Michael KPL.B' is switched Off Or Control 'Front Door' is switched Key/Manually Locked Then Set 'Front Door' Lock Set Scene 'Front Door Deadbolt' Off Else Set 'Front Door' Unlock Set Scene 'Front Door Deadbolt' On The KPL buttons are in toggle mode, is that correct? When I hit the B button on the KPL button that lock unlocks, and only the button you pushed lights up, other KPL B do not light up. I also can't relock the door. Any suggestions on what I am doing wrong? Thanks
stusviews Posted November 4, 2016 Posted November 4, 2016 I'm out of town at a mathematics convention, so I won't be able to verify anything until early next week.
oberkc Posted November 5, 2016 Posted November 5, 2016 (edited) Stusviews, I have the KPL-B buttons and the Schlage lock in a scene, both are responders. This is my program Front Door Status KPL If Control 'KPL Buttons / Becca KPL.B' is switched Off Or Control 'KPL Buttons / Michael KPL.B' is switched Off Or Control 'Front Door' is switched Key/Manually Locked Then Set 'Front Door' Lock Set Scene 'Front Door Deadbolt' Off Else Set 'Front Door' Unlock Set Scene 'Front Door Deadbolt' On The KPL buttons are in toggle mode, is that correct? When I hit the B button on the KPL button that lock unlocks, and only the button you pushed lights up, other KPL B do not light up. I also can't relock the door. Any suggestions on what I am doing wrong? Thanks I do not see a way for your (or stusviews) program to execute the ELSE path. The program is triggered only by the OFF/LOCKED commands and, once triggered, will always evaluate TRUE. Perhaps I miss something here. I would expect you may need a couple of extra conditions in your program: If Control 'KPL Buttons / Becca KPL.B' is switched Off Or Control 'KPL Buttons / Michael KPL.B' is switched Off Or Control 'Front Door' is switched Key/Manually Locked or Control 'KPL Buttons / Becca KPL.B' is not switched On Or Control 'KPL Buttons / Michael KPL.B' is not switched On Or Control 'Front Door' is not switched Key/Manually Unlocked Then Set 'Front Door' Lock Set Scene 'Front Door Deadbolt' Off Else Set 'Front Door' Unlock Set Scene 'Front Door Deadbolt' On Edited November 5, 2016 by oberkc
G W Posted November 5, 2016 Posted November 5, 2016 If the door is manually locked why would you want a program to unlock it? B.R.I.A.D.A. Best regards, Gary Funk
larryllix Posted November 5, 2016 Posted November 5, 2016 (edited) That logic always give me some problems also. If ( Control 'KPL Buttons / Becca KPL.B' is switched Off Or Control 'KPL Buttons / Michael KPL.B' is switched Off Or Control 'Front Door' is switched Key/Manually Locked ) AND Control 'KPL Buttons / Becca KPL.B' is not switched On AND Control 'KPL Buttons / Michael KPL.B' is not switched On AND Control 'Front Door' is not switched Key/Manually Unlocked Then Set 'Front Door' Lock Set Scene 'Front Door Deadbolt' Off Else Set 'Front Door' Unlock Set Scene 'Front Door Deadbolt' On The top three conditions are always false unless one trigger is being processed. When any one triggers the whole logic becomes true. The bottom three line are always true unless a trigger is being processed. When any one triggers the whole logic becomes false. Reverse the condition and you have to reverse the logic to keep them equal (deMorgans theorem). Not(A or B or C) = Not(A) and Not(B ) and Not© It won't be nice if it rains, or snows, or sleets. = It won't be nice if it rains, and it won't be nice if it snows, and it won't be nice if it sleets. Edited November 5, 2016 by larryllix
MikeD Posted November 5, 2016 Posted November 5, 2016 If the door is manually locked why would you want a program to unlock it?1. Because I can. 2. So do not have to go to the door and physically unlock it. ~Mike
G W Posted November 5, 2016 Posted November 5, 2016 But that program would unlock it as soon as it's locked. I. S. B. S. P. Best regards, Gary Funk
MikeD Posted November 5, 2016 Posted November 5, 2016 I have the KPL-B buttons and the Schlage lock in a scene, both are responders.- My Schlage lock is not in the Scene. The lock is always controlled by one of my programs. Only the KPL buttons are in this Scene and they are both Controllers. The KPL buttons are in toggle mode, is that correct? - Yes, my KPL buttons are in toggle mode. Hope this helps! ~Mike
MikeD Posted November 5, 2016 Posted November 5, 2016 But that program would unlock it as soon as it's locked.Not in the way I wrote my programs. If unlocked my 'SchlageTimeout' program will automatically lock it unless it is stopped by another KPL button that runs my 'SchlageTimeoutEnable' program or the door is left open. ~Mike
aLf Posted November 14, 2016 Posted November 14, 2016 (edited) How can you have two KPL buttons "H" in a scene that can be turned on/off from a program? Can't seem to get an option for on/off... Can this only be done with "A"? Edited November 14, 2016 by aLf
G W Posted November 14, 2016 Posted November 14, 2016 How can you have two KPL buttons "H" in a scene that can be turned on/off from a program? Can't seem to get an option for on/off... Can this only be done with "A"? Put them in a scene. I'm Gary Funk and I approved this message.
Ajax Posted March 16, 2017 Posted March 16, 2017 AnthemAVM, Create a scene that has the lock and button as responders. Write a program to control the scene. Here's the scene I use: DR Deadbolt If Control 'DR / Devices / DR Side Door Light / DR Side Door G Front Off' is switched Off Or Control 'DR / Devices / DR ZW Deadbolt' is switched Key/Manually Locked Then Set 'DR / Devices / DR ZW Deadbolt' Lock Set Scene 'DR / Scenes / DR Deadbolt' Off Else Set 'DR / Devices / DR ZW Deadbolt' Unlock Set Scene 'DR / Scenes / DR Deadbolt' On Sorry to bring this topic back, but I am trying to do something similar below is my program, I have both the lock(be469) and KPL H(toggle only) in a scene called "Lock" as responders only. The program works but the KPL button does not light up when the door is unlocked? BackDoor - [iD 003E][Parent 000A] If Control 'MasterBedroom KeypadA / MasterBedroom KeypadH' is switched Off Or Control 'ZW 004 Schlage Door Lock' is switched Key/Manually Locked Then Set 'ZW 004 Schlage Door Lock' Lock Set Scene 'Lock' Off Else Set 'ZW 004 Schlage Door Lock' Unlock Set Scene 'Lock' On
stusviews Posted March 16, 2017 Posted March 16, 2017 You only have statements that describe what to do when the lock is locked, but noting about what to do if it's not locked.
oberkc Posted March 16, 2017 Posted March 16, 2017 To expand upon stusview response... Your program will never run the ELSE path as written. Upon what condition do you wish to run thw ELSE path?
arw01 Posted March 16, 2017 Posted March 16, 2017 (edited) Curios if someone has found a good online source for buying the BE469 units? Home depot was $199 in the store the other day and I thought they were pretty high. Wanting to get a couple for in the yard type doors so they can be locked all the time but not require a kit to get in Edited March 16, 2017 by arw01
stusviews Posted March 16, 2017 Posted March 16, 2017 Wanting to get a couple for in the yard type doors so they can be locked all the time but not require a kit to get in Note that the BE469 locks can be unlocked from the inside side. If someone can reach over the gate, then the locks are useless. I use GTO (Gates That Open) locks for all our gate locks. They remain locked (unless left unlocked using a key) and can be controlled using an I/O Linc.
Ajax Posted March 17, 2017 Posted March 17, 2017 (edited) Curios if someone has found a good online source for buying the BE469 units? Home depot was $199 in the store the other day and I thought they were pretty high. Wanting to get a couple for in the yard type doors so they can be locked all the time but not require a kit to get in Amazon had a sale a few weeks back for $175 for the black one (which I wanted) but I have also gotten one of Ebay new for $150. To expand upon stusview response... Your program will never run the ELSE path as written. Upon what condition do you wish to run thw ELSE path? OK that helps me understand why its not running, but I thought if the "IF" statement is not true then it runs the "Else" statement. So what I was trying to accomplish is, If the KPL is switched off--->then Lock the door, or if the lock is manually locked then turn off the the Scene(KPL button). If neither the above is happening then turn the scene ON (KPL button) Should i change the KPL to a controller in the scene and try use: If Control 'MasterBedroom KeypadA / MasterBedroom KeypadH' is not switched On Or Control 'ZW 004 Schlage Door Lock' is switched Key/Manually Locked That way I can change the LED in that KPL to red, so when at night I glance over I can see red and know the door is unlocked, but if everything is off I am secure. Thanks Edited March 17, 2017 by Ajax
oberkc Posted March 17, 2017 Posted March 17, 2017 Ajax. You are correct that a if statement is false it will run the ELSE path. What may be less obvious is that for a statement to be evaluated as false, it must be triggered at such times. One MUST be aware of when programs trigger an evaluation. In your case, it would trigger only at specific events: keypadH switced off and doorlock is locked. In both cases your condition evaluates TRUE. Your program has no triggers that can cause a false evaluation. Yes, try the kpl in a scene as controller with lock as responder. See if this causes the door to lock/unlock without further neednfor a program. On further review, also perform some tests to be sure the ISY reacts to the 'control...door lock" command. When I use zwave devices as program conditions, they respond to STATUS conditions only. As far as your program conditions, I pose a question for you to consider: how would your program behave differently if you used STATUS rather than CONTROL as conditions?
Ajax Posted March 17, 2017 Posted March 17, 2017 Ajax. You are correct that a if statement is false it will run the ELSE path. What may be less obvious is that for a statement to be evaluated as false, it must be triggered at such times. One MUST be aware of when programs trigger an evaluation. In your case, it would trigger only at specific events: keypadH switced off and doorlock is locked. In both cases your condition evaluates TRUE. Your program has no triggers that can cause a false evaluation. Yes, try the kpl in a scene as controller with lock as responder. See if this causes the door to lock/unlock without further neednfor a program. On further review, also perform some tests to be sure the ISY reacts to the 'control...door lock" command. When I use zwave devices as program conditions, they respond to STATUS conditions only. As far as your program conditions, I pose a question for you to consider: how would your program behave differently if you used STATUS rather than CONTROL as conditions? OK this is getting me thinking thanks for the help, appreciate the directions and actually think I have it working! Although I can only test it from work but will have to try pushing the KPL button at home and see what happends, but yes short and sweet Backdoor - [iD 0041][Parent 000A] If Status 'ZW 004 Schlage Door Lock' is Locked Then Set Scene 'Lock' Off Else Set Scene 'Lock' On
oberkc Posted March 17, 2017 Posted March 17, 2017 Did you create the scene with KPL as controller and lock as responder? If so, I am hopeful that pressing the button will control the lock.
Ajax Posted March 17, 2017 Posted March 17, 2017 Yes, and you think that would work, but I dont get a response from the lock when I push the KPL(controller) Did a test and results are below: Fri 03/17/2017 04:42:08 PM : [GRP-RX ] 02 61 29 13 00 06 Fri 03/17/2017 04:42:09 PM : [CLEAN-UP-RPT] 02 58 06 Fri 03/17/2017 04:42:09 PM : [iNST-SRX ] 02 50 3D.C3.C9 3B.96.22 E1 13 FC LTOFFRR(FC) <html><font color="red">----- Lock Test Results -----</font></html> <html><font color="red">[Failed]</font> MasterBedroom KeypadH (3D C3 C9 </html> <html><font color="red">[Failed]</font> ZW 004 Schlage Door Lock (ZW004_1)</html> <html><font color="red">----- Lock Test Results -----</font></html> Fri 03/17/2017 04:42:18 PM : [ZWAVE-TX ZW004_1] ... Fri 03/17/2017 04:42:18 PM : [ZWAVE-RX ] ACK Fri 03/17/2017 04:42:18 PM : [ZWAVE-RX ] [0104011301E8] Fri 03/17/2017 04:42:18 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:19 PM : [ZWAVE-RX ] [01050013EC0005] Fri 03/17/2017 04:42:19 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:19 PM : [ZWAVE-RX ZW004_1] ... Fri 03/17/2017 04:42:19 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:19 PM : [ZWAVE-TX ZW004_1] ... Fri 03/17/2017 04:42:19 PM : [ZWAVE-RX ] ACK Fri 03/17/2017 04:42:19 PM : [ZWAVE-RX ] [0104011301E8] Fri 03/17/2017 04:42:19 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:19 PM : [ZWAVE-RX ] [01050013ED0004] Fri 03/17/2017 04:42:19 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:20 PM : [ZWAVE-RX ZW004_1] ... Fri 03/17/2017 04:42:20 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:20 PM : [ZWAVE-TX ] ... Fri 03/17/2017 04:42:20 PM : [ZWAVE-RX ] ACK Fri 03/17/2017 04:42:20 PM : [ZWAVE-RX ] [0104011301E8] Fri 03/17/2017 04:42:20 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:20 PM : [ZWAVE-RX ] [01050013EE0007] Fri 03/17/2017 04:42:20 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:20 PM : [ZWAVE-RX ZW004_1] ... Fri 03/17/2017 04:42:20 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:20 PM : [ZWAVE-TX ZW004_1] ... Fri 03/17/2017 04:42:20 PM : [ZWAVE-RX ] ACK Fri 03/17/2017 04:42:20 PM : [ZWAVE-RX ] [0104011301E8] Fri 03/17/2017 04:42:20 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:21 PM : [ZWAVE-RX ] [01050013F00019] Fri 03/17/2017 04:42:21 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:21 PM : [ZWAVE-RX ZW004_1] ... Fri 03/17/2017 04:42:21 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:21 PM : [ZWAVE-TX ZW004_1] ... Fri 03/17/2017 04:42:21 PM : [ZWAVE-RX ] ACK Fri 03/17/2017 04:42:21 PM : [ZWAVE-RX ] [0104011301E8] Fri 03/17/2017 04:42:21 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:21 PM : [ZWAVE-RX ] [01050013F10018] Fri 03/17/2017 04:42:21 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:22 PM : [ZWAVE-RX ZW004_1] ... Fri 03/17/2017 04:42:22 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:22 PM : [ZWAVE-TX ] ... Fri 03/17/2017 04:42:22 PM : [ZWAVE-RX ] ACK Fri 03/17/2017 04:42:22 PM : [ZWAVE-RX ] [0104011301E8] Fri 03/17/2017 04:42:22 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:22 PM : [ZWAVE-RX ] [01050013F2001B] Fri 03/17/2017 04:42:22 PM : [ZWAVE-TX ] ACK Fri 03/17/2017 04:42:22 PM : [ZWAVE-RX ZW004_1] ... Fri 03/17/2017 04:42:22 PM : [ZWAVE-TX ] ACK
Recommended Posts