LeeG Posted May 8, 2014 Posted May 8, 2014 Post the Program(s). ANDing multiple KeypadLinc buttons does not sound correct. More likely they need to be ORed with existing logic. Placement of parens is also important. Also how were the additional KPL buttons added to the Scene(s).
Jimbo.Automates Posted May 8, 2014 Author Posted May 8, 2014 Yes the new button status would need to be ORed with the current button inside parens , and added to the scene as a responder. I would try this, but I'm leaving on a vacation today... Sent from my Nexus 7 using Tapatalk
jdm5 Posted May 8, 2014 Posted May 8, 2014 Ok, I tried "OR"ing them and adding the additional KPL button as a responder in the scene, but it doesn't seem to work: 000 Button Off If $iGarageDoorMonitorLeft_DontWatch is 0 And ( Status 'Foyer 8KPL Island Lights / Foyer 8KPL Garage Right Butto' is Off Or Status 'Master Bedroom 8KL / Master Bedroom 8KL - Garage R' is Off ) Then Resource 'Syslog - Left Garage Program 000 ButtonOff' $iGarageDoorMonitorLeft_RequestedStatus = 0 $sGarageDoorMonitorLeft = 1 Else - No Actions - (To add one, press 'Action') 000 Button On If $iGarageDoorMonitorLeft_DontWatch is 0 And ( Status 'Foyer 8KPL Island Lights / Foyer 8KPL Garage Right Butto' is not Off Or Status 'Master Bedroom 8KL / Master Bedroom 8KL - Garage R' is not Off ) Then Resource 'Syslog - Left Garage Program 000 ButtonOn' $iGarageDoorMonitorLeft_RequestedStatus = 1 $sGarageDoorMonitorLeft = 1 Else - No Actions - (To add one, press 'Action') The Foyer button works fine alone. When I modify the programs as above nothing works - pushing either button toggles it on, but doesn't do anything to the doors. I have a syslog monitor (the Network Resource) and you can see the output here (this was me pushing one of them on at 18:25:35, then turning it off at 18:25:45).
LeeG Posted May 8, 2014 Posted May 8, 2014 These Programs are not set up to handle multiple KPL buttons. One Program concludes the button is On, the other concludes the button is Off. That does not relate to having multiple buttons where one button is On and the other button is Off. I suggest waiting until the original author comes back from vacation and can redesign the Programs.
oberkc Posted May 8, 2014 Posted May 8, 2014 Much can depend on how you have your buttons configured. Are they in "Non-toggle" mode? Are you using the same button to show status and to control? As far as the buttons showing status, i assume putting them in the same scene, as responders, would accomplish this. I must admit that your use of "resources" is beyond my experience, so I am not getting a handle on how these programs are supposed to execute and how they interface with your garage door opener. Still, have you tried "control" versus "status" in the conditions? I am wondering aloud if you have some keypad conditions which are changing as a result of the program execution.
jdm5 Posted May 9, 2014 Posted May 9, 2014 I had it configured exactly as jimsearle had originally posted. The only exception I made was I have two sensors - one for door closed and one for door open, and I used them to verify the status (not relevent here). I was successful in implementing this through 'brute force'. I left the original programs exactly as described, and programmatically had the additional KPL button toggle the original garage door scene and update it's own status. Here are my four programs if they are helpful for someone. I'm hoping someone has thoughts on how to incorporate the additional KPL button into the original program, but this works for now (I accept this is inelegant / ugly). Program one: Master Bedroom Off - if the status of the additional Master Bedroom KPL button gets set to off, trigger the scene in the original set of programs to off. This closes the garage door. If Status 'Master Bedroom 8KL / Master Bedroom 8KL - Garage R' is Off Then Set Scene 'Garage Door Monitors / GarageDoorLeft' Off Else - No Actions - (To add one, press 'Action') Program two: Master Bedroom On - if the status of the additional Master Bedroom KPL button gets set to On (=not off), set the original garage door scene to on; opens the door. If Status 'Master Bedroom 8KL / Master Bedroom 8KL - Garage R' is not Off Then Set Scene 'Garage Door Monitors / GarageDoorLeft' On Else - No Actions - (To add one, press 'Action') Program three: Master Bedroom Status Closed - if the status of the garage door is closed, turn off the light on the additional KPL button. This was accomplished by adding just the additional KPL button to its own scene as a responder, and setting that scene to off. If Status 'Garage Door IOLincs / Garage Door Left / Garage Door Left Closed' is On Then Set Scene 'Garage Master Bed KPL Right B' Off Else - No Actions - (To add one, press 'Action') Program four: Master Bedroom Status Open - if the status of the garage door is open, turn on the light on the additional KPL button. This was accomplished by adding just the additional KPL button to its own scene as a responder, and setting that scene to on. If Status 'Garage Door IOLincs / Garage Door Left / Garage Door Left Open' is On Then Set Scene 'Garage Master Bed KPL Right B' On Else - No Actions - (To add one, press 'Action')
Jimbo.Automates Posted May 26, 2014 Author Posted May 26, 2014 I am back from vacation and can try to look into this tomorrow. I just wanted to verify that this was your final status before I looked at it. Sent from my Nexus 7 using Tapatalk
jdm5 Posted May 27, 2014 Posted May 27, 2014 I am back from vacation and can try to look into this tomorrow. I just wanted to verify that this was your final status before I looked at it. Here's where I landed - I stopped touching the scenes themselves and just used the KPL's as independent switches. They still don't work 100% reliably - would appreciate your feedback on the best way to approach this. Program 1: Master Bedroom off If Control 'Master Bedroom 8KL / Master Bedroom 8KL - Garage R' is switched Off Then Run Program 'Garage Left Door Close' (If) Else - No Actions - (To add one, press 'Action') Program 2: Master Bedroom On: If Control 'Master Bedroom 8KL / Master Bedroom 8KL - Garage R' is not switched Off Then Run Program 'Garage Left Door Open' (If) Else - No Actions - (To add one, press 'Action') Program 3: Master Bedroom Status Closed: If Status 'Garage Door IOLincs / Garage Door Left / Garage Door Left Closed' is On Then Set Scene 'Garage Master Bed KPL Right B' Off Else - No Actions - (To add one, press 'Action') Program 4: Master Bedroom Status Open: If Status 'Garage Door IOLincs / Garage Door Left / Garage Door Left Open' is On Then Set Scene 'Garage Master Bed KPL Right B' On Else - No Actions - (To add one, press 'Action') As I said, I still don't think this is working reliably (though not sure why).
oberkc Posted May 28, 2014 Posted May 28, 2014 There are, I notice, a couple of other programs referenced: 'Garage Left Door Close', and 'Garage Left Door Open'. It might help to post those, as well. It is hard to picture what you are trying to accomplish with some of the pieces missing. Is 'Master Bedroom 8KL / Master Bedroom 8KL - Garage R' part of the scene 'Garage Master Bed KPL Right B'? would appreciate your feedback on the best way to approach this. I have looked back at the thread, and I am a little uncertain what "this" is. If your intention is to see the status and control a garage door from the same keypad button, or from several buttons around the house, I prefer scenes. I find the method in the wiki to be the best approach. - Locate the sensor in such a way that ON = Open. The location should be such that it is OFF only when fully closed, otherwise ON. - configure the keypad button (or buttons, if more than one) as NON-TOGGLE ON - configure the IOLinc relay to respond to ON commands - create a scene with the button (or buttons) as controller and relay as responder - create another scene with sensor as controller and button (or buttons) as responder Everything works together in such a way that if you don't have the IOLinc configured properly, the keypad configured properly, the sensor mounted in the correct location, the correct sensor, and the controller/responder relationship properly set up, it will not work well. Using programs is likely just as dependent on attention to these details.
Jimbo.Automates Posted May 28, 2014 Author Posted May 28, 2014 oberck, the difference between this setup and the one on the wiki is detailed in the op. I will try to find time later this week or this weekend to add a second button to one of my doors and test it. Jim Sent from my Nexus 5 using Tapatalk
oberkc Posted May 28, 2014 Posted May 28, 2014 oberck, the difference between this setup and the one on the wiki is detailed in the op. I will try to find time later this week or this weekend to add a second button to one of my doors and test it. Jim Sent from my Nexus 5 using Tapatalk I looked back upon your original post. Unfortunately, the problem you describe (false OFF conditions) is not one that I experience. If set up as described (with the KPL in non-toggle ON mode), there is only one way for the keypad to be off (barring comm problems)...if the sensor tells it to be so. So...I remain a little confused as to what problem is being solved here. Of course, there is more risk of false OPEN indications, but I consider this the lesser of two problems. Another thing I am struggling with is the evolving approach of jdm5. As I read through the various posts, I start to suspect I am unsure what he is trying to accomplish and what problem is being solved here.
jdm5 Posted May 28, 2014 Posted May 28, 2014 Overall goal: have 2 KPL's in the house control the same garage door. One tied to the original (OP's) program, other function similarly (open/close indicator + pushing button toggles open/close, and the original program function accurately. Does that make sense? I wonder if I'm overthinking it, but not sure how to get this working in a good/logical way.
Jimbo.Automates Posted May 28, 2014 Author Posted May 28, 2014 Oberck, if you say yours solve both 1 and 2 from the op, that would make this simpler Sent from my Nexus 5 using Tapatalk
oberkc Posted May 28, 2014 Posted May 28, 2014 I can tell you both that I have not two, but three, keypad buttons which both control my garage doors, with all three providing an indicator regarding status (ON= OPEN). I did it just as I described, just as the wiki described. The suggested approach handles just fine the condition where one tried to close a door, but the door automatically reverses itself. Overall goal: have 2 KPL's in the house control the same garage door. No problem. One tied to the original (OP's) program, other function similarly (open/close indicator + pushing button toggles open/close, and the original program function accurately. I use NO programs, so if your goal is specifically to use a given program rather than rely exclusively on scenes, then my suggested approach will fail to meet such a given "need". If, however, your goal is simply to have an indication of door status with the same button that controls the door, I continue to recommend the wiki approach. Does that make sense? I wonder if I'm overthinking it, but not sure how to get this working in a good/logical way. I suspect you are thinking in terms of solutions rather than requirements. I think you should think of your needs in terms of function and interface (press button, door closes/opens. same button displays status.) rather than solution (use a program). Yes, I think you are making it harder than it needs to be.
stusviews Posted May 3, 2015 Posted May 3, 2015 (edited) Disable the garage door program(s). What's the result? Wrong forum Edited May 3, 2015 by stusviews
mgs24 Posted July 17, 2015 Posted July 17, 2015 I had been using Jimbo's programs successfully for several months then they stopped working. I have been working non-stop to fix. I have completely re-entered them. I then felt I may have some communication issues. I added 2 Range extenders. Nothing is working at this point. Is this still working for everyone? Has there been any updates or changes to the programs? Any help would be appreciated. I not sure how to read the logs but this is when it fails: Thu 07/16/2015 05:17:55 PM : [iNST-TX-I1 ] 02 62 00 00 1B CF 11 00 Thu 07/16/2015 05:17:55 PM : [iNST-ACK ] 02 62 00.00.1B CF 11 00 06 LTONRR (00) Thu 07/16/2015 05:17:55 PM : [D2D EVENT ] Event [34 DD 16 5] [sT] [255] uom=0 prec=-1 Thu 07/16/2015 05:17:55 PM : [ 34 DD 16 5] ST 255 Thu 07/16/2015 05:17:55 PM : [D2D-CMP 001E] STS [34 DD 16 5] ST op=6 Event(val=255 uom=0 prec=-1) != Condition(val=0 uom=0 prec=-1) --> true Thu 07/16/2015 05:17:55 PM : [D2D-CMP 001D] STS [34 DD 16 5] ST op=1 Event(val=255 uom=0 prec=-1) is Condition(val=0 uom=0 prec=-1) --> false Thu 07/16/2015 05:18:01 PM : [iNST-TX-I1 ] 02 62 00 00 1B CF 11 00 Thu 07/16/2015 05:18:01 PM : [iNST-ACK ] 02 62 00.00.1B CF 11 00 06 LTONRR (00) Thu 07/16/2015 05:18:18 PM : [iNST-TX-I1 ] 02 62 00 00 1B CF 13 00 Thu 07/16/2015 05:18:18 PM : [iNST-ACK ] 02 62 00.00.1B CF 13 00 06 LTOFFRR(00) Thu 07/16/2015 05:18:18 PM : [D2D EVENT ] Event [34 DD 16 5] [sT] [0] uom=0 prec=-1 Thu 07/16/2015 05:18:18 PM : [ 34 DD 16 5] ST 0 Thu 07/16/2015 05:18:18 PM : [D2D-CMP 001E] STS [34 DD 16 5] ST op=6 Event(val=0 uom=0 prec=-1) != Condition(val=0 uom=0 prec=-1) --> false Thu 07/16/2015 05:18:18 PM : [D2D-CMP 001D] STS [34 DD 16 5] ST op=1 Event(val=0 uom=0 prec=-1) is Condition(val=0 uom=0 prec=-1) --> true Thu 07/16/2015 05:18:27 PM : [iNST-TX-I1 ] 02 62 00 00 1B CF 11 00 Thu 07/16/2015 05:18:27 PM : [iNST-ACK ] 02 62 00.00.1B CF 11 00 06 LTONRR (00) Thu 07/16/2015 05:18:27 PM : [D2D EVENT ] Event [34 DD 16 5] [sT] [255] uom=0 prec=-1 Thu 07/16/2015 05:18:27 PM : [ 34 DD 16 5] ST 255 Thu 07/16/2015 05:18:27 PM : [D2D-CMP 001E] STS [34 DD 16 5] ST op=6 Event(val=255 uom=0 prec=-1) != Condition(val=0 uom=0 prec=-1) --> true Thu 07/16/2015 05:18:27 PM : [D2D-CMP 001D] STS [34 DD 16 5] ST op=1 Event(val=255 uom=0 prec=-1) is Condition(val=0 uom=0 prec=-1) --> false Thanks, Mike
Jimbo.Automates Posted July 17, 2015 Author Posted July 17, 2015 Hi Mike, sorry I am not very good at debugging the logs, but I would first try triggering the IoLinc manually to see if that works, the trigger it thru the ISY.
mgs24 Posted July 17, 2015 Posted July 17, 2015 If I trigger manually or thru ISY it works. Have you changed your programing at all since you began this tread 8/2013? I just at a loss why it worked so well and now all kinds of problems.
oberkc Posted July 18, 2015 Posted July 18, 2015 I am unaware of anything that would cause a program, once working, to stop. I would focus on communications, corrupt link records, or device failure.
Jimbo.Automates Posted July 18, 2015 Author Posted July 18, 2015 I haven't changed my programming since the original post. I would try triggering the scene manually the same way the programs do. I can try to review the programs and see if I have any other suggestions. Sent from my Nexus 7 using Tapatalk
mgs24 Posted July 18, 2015 Posted July 18, 2015 Here's the fix for the power outage issue, read the comments for more info. Also, like I mention in the comments, I did change the '000 ButtonOn' to use '100%' instead of of 'not Off' which probably would fix it as well, but I didn't test it. If $i.GDM_DontWatch is -1 And ( Status 'ZZ-Buttons / Front House D (GDM)' is Off Or Status 'ZZ-Buttons / Front House D (GDM)' is 100% ) Then $s.GDM = 10 Function: Make sure everything is correct after a reboot. Details: Since I have to monitor the "status" of buttons and not "control", both of the 000 Button On or Off programs will be triggered on boot up of the ISY, and one of them should be true. On a normal reboot of just the ISY it all works properly because the button states are correct. But for some reason during a power outage the button status has not been correct. I think this is because the button is neither off nor on since the KPL is also rebotting, but I am not sure since I don't want to really force a power outage to the ISY & KPL at the exact same time. Originally the ButtonOn program used 'not Off' (because I don't like seeing 100%) so I think that was the root cause, but either way this program makes me feel better... So, the i.GDM_DontWatch has it's init value as -1, so when the ISY boots up, the 000 Button Off and On will not ever be true. This program runs the 010 Done, which resets the state. Hopefully the door was not in motion during the power outage, but I don't think I need to worry about that. Also, set the 'Init To' in '010 Done': If $s.GDM is 10 Then $i.GDM_DontWatch = 0 $s.GDM = 0 $i.GDM_DontWatch Init To -1 State machine is all done so start watching again. Jimbo, the above change is to the 000 ButtonOff correct? Thought I was getting somewhere but still not working. When setting up the variables for first time all values are 0 to begin with? Thanks again, Mike
BCreekDave Posted October 22, 2015 Posted October 22, 2015 (edited) I have had this running for several months now and have only one small problem. Perhaps it is my particular implementation, but the keypadlinc button is not updating its state when the original manual push button is used. This button is mounted in the garage on the wall and is therefore the most convenient method of closing-opening the door when I am in the garage. I think based on this statement in the original post by the author this function was intended: "Of course, it also properly handles everything when the door is manually opened or closed..." It seems like it may have at one time worked for me, but I had to re-cap my PLM a month or so ago and some switches got kind of flaky afterward and the link table had to be somewhat re-built. I am not sure if it did ever work and I have rebuilt the iolinc and keypadlinc (deleted and replaced) and the PLM link table shows them to be OK. My install is maybe somewhat different in that I am using a limit switch (normally open contacts) mounted on top of the opener that is tripped by a cam-block attached to the openers chain near the trolley. Functionally, I am sensing when the door is open instead of the typical magnetic switch which is usually mounted near the floor and senses when the door is closed. I have changed the program slightly (003 Doorstatusclosed -> sensor on and 003 Doorstatusopen ->sensor off) to compensate for this. Was this the original intention of the program? If so, can you point me in the direction of how to debug this? It may be a timing issue as my method does not immediately update the door open until it is fully open due to the switch location. The door has to be fully open for the limit switch to change states. Conversely, my install does immediately sense when the door is closing. I can't say I am really happy about using the IOlinc in this type of install. It seems that due to only having one input, the doors position can only be positively sensed either fully open or fully shut. I have a EZIO 2x4 that I am thinking about re-purposing due to this. Thanks for any help anyone can provide. Dave Edited October 22, 2015 by BCreekDave
Xathros Posted October 22, 2015 Posted October 22, 2015 (edited) Hi Dave- Assuming a link table problem, try a Restore Device on both the KPL and the IOLinc and test again. If it were me, I would relocate the limit switch to the door closed end of the track to have a positive indication that the door is closed. -Xathros Edited October 22, 2015 by Xathros
BCreekDave Posted October 22, 2015 Posted October 22, 2015 Thanks for the quick reply, Xathros. I tried again the restore device but it didn't help. I had tried this at least twice already, but wanted to be sure. For just a bit more info, the keypadlinc does not update when the in-car button is used either. This is not a surprise, but I just tried it to verify. I agree about the position of the door. I am looking into changing either the placement of the chain-cam or going to the EZIO unit. Dave
Xathros Posted October 22, 2015 Posted October 22, 2015 (edited) Post your programs. I will see whats going on. Normally, the IOLinc sensor would be a scene controller with the KPL LED(s) as responders. Why not just move your switch to the other end of the track to sense when the cam is in the closed position? At worst all you would need to do is extend the wire. -Xathros Edited October 22, 2015 by Xathros
Recommended Posts