Keypad Disable for Bad Children
Got an interesting application and I'm wondering if anyone has already done this. It's a keypad button to monitor kid's rooms and optionally prevent them from turning on lights.
Keypad button should toggle and monitoring a room conventionally, but with the added function of a press-hold that toggles a 2-state variable (ENABLE/DISABLE). Function and LED logic should be as follows:
Room ON, ENABLED = LED ON, (press to toggle light off)
Room OFF, ENABLED = LED OFF, (press to toggle light on)
Room ON, DISABLED = LED RAPID FLASH, (press-hold to toggle ENABLE/DISABLE)
Room OFF, DISABLED = LED FLASH, (press-hold to toggle ENABLE/DISABLE)
Catch is that the state variable should automatically enable after 'n' minutes in the DISABLE state
Anyone care to share how to do this?
Authorized Lutron Contributor
Attached is a sample project file with the following programming along with a word document that covers the programing that was done.
The keypad in the kid’s room will toggle the light on and off until the button in the master bedroom is held. When the button in the master bedroom is help it will disable the button in the kid’s room. After a set amount of time (10 second in this example) the button on the kid’s keypad will be enabled. You can also hold the button in the master bedroom again to enable the button on the kid’s keypad as well.
The button in the master bedroom will always be able to toggle the kid’s light even if the button in the kid’s room is disabled. The LED in the master bedroom will either be on, off, slow blinking or fast blinking depending on if the button in the kid’s room is enable or disabled as well as if the light is on or off.
Why can't the MBR button have LED logic based on the Kids' Room sequence? The LED logic of that sequence appears to be what is required?
Being more of a visual learner, I'm trying to translate this code into a flowchart for better understanding. Any chance this was already done?
Authorized Lutron Contributor
Currently when using conditional programming the LED logic that is set in the sequence is ignored. This is being worked on for a future release of the software.
We do not have a flow chart for this programming.
With the new 8.0 software, it seems that implementing this feature should be simpler. I was wondering if there is now an easier way to implement this request? I figure that sequences are still required to achieve the blinking LED logic.
Disabling keypads is one of the suggested applications of the new Security Mode in version 8 - outside of the obvious security specific application. E.g. disable kps during a party as suggested in the release notes for 8.0.0
Yes, that is exactly why I posted. I figured that 8.0 software probably makes this easier, but it is still not trivial, at least to me. Remember that the button logic requires toggling the keypad disabled on the button hold not on the button press, and the flashing led logic is required depending on the four states.
my thought so far is to create an automatic sequence that triggers the keypad disable for a set time, say 10 seconds.
im not sure if the led state options with that sequence (on, off, blink, rapid blink) can be used to set the actual led on the real button. Just looking to get general guidance:
1) create a manual 4 step "tracking" sequence to track the overall state of the system and dictate the button led logic - on, off, blink, rapid blink
2) create an automatic sequence that disables the keypad for a period of time and re-enables it on the stop
3) "Normal" program type: the real button tap directly toggle the load, by set led logic to defined by sequence in step 1
4). Program the real button hold to toggle the automatic sequence in step 2.
i don't think what I wrote will work, but hopefully you get the idea. Craig's solution earlier was brilliant, and I presume it was necessarily complex at the time. So now with 8.0, I'm hoping to streamline the code, but I still find it difficult to make significant simplifications. Also should the button be conditional? If conditional, and led logic is based on say "action1", how does the LED logic of action1 get determined when sequences are involved? etc... I suppose I don't know how to approach this problem. Perhaps when Craig has some downtime he will share more brilliant ideas :)