RA2 keypad, is it possible to run events when buttons are held, or double tapped?

Thanks held is preferred over double tap anynway. Was wondering if adding it as a Pico would work so I'll give that a try and mess around with that.

How many buttons does your keypad have? Not counting the raise/lower buttons.

They are all different, the kitchen one has 6 at the moment as I haven't ordered the custom engraving but soon it will have 5 in total (the 4 space and then 1). The front foyer one is the same, but some of the others just have 3 in total.

Up to 5 will work fine as a Pico. You may want to play around with the held timing on the device page.

Great thanks so much I'll give it a try now and see how it goes. I'll never have more than 5 as I try to keep the keypads with as minimum number of buttons as possible as I prefer the bottom one always being All Off, so I find it looks better when there's at least 1 space between the top buttons and the All Off one. 6 looks too cluttered, harder to quickly hit one without paying attention. :slight_smile:

Hi, came on this thread searching for how to implement 'held' on a 6-button +R/L Lutron Keypad. Is it possible to duplicate the keypad as a Pico but only for the buttons I need to work off the 'held' command? I'd like to map buttons 1, 2, 3, 18 and 19 to held commands but leave the other buttons alone (on the original device) as there are some pretty lengthy rules operating them that I'd rather not have to re-create. Guessing this is a stretch but thought I'd try. Thanks

Not possible with the built-in drivers. Pico's have weird button number mapping, while a keypad does not. This would require a custom driver.

This is the reason I still keep HomeSeer running at the same time as Hubitat as I just use it for any held, or double tap type actions. Not sure why Hubitat doesn't support it as it's definitely a Hubitat limitation as even Indigo supports this.

Not so much a "limitation" as it is something that (a) Lutron doesn't support natively, and (b) no one as ever asked for before. The latter is more significant than the former, because obviously we implemented things for Pico that Lutron doesn't support.

We can add this to the feature request list for Lutron drivers.

1 Like

I would kindly add my name to the list of those asking for both items to be added to the feature request for the Lutron Driver:

  1. Held Button functionality for Lutron Keypads,
  2. Keypad Button Double Click with in a specific amount of time (I understand that this will be more complicated and involved).

In the mean time I am trying the workaround of setting up the Lutron Keypad device as a pico device ('p') yet it does not seem to be working. I have tried various values of set delay for hold under the device preferences yet it seems with the latest version even a momentary button press (under ~50 ms) is being counted as a held button despite having the delay time for hold set much higher. I am using the current log viewer to see this. Does the workaround of setting up the Keypad (at least for button component numbers 2,3,4,5,6) as a pico no longer work?

I also am seeing a strange error show up three times in the log when this 'held' without being held occurs (but might just be related to an LED status from a Keypad not matching a pico):

dev:1302021-12-19 01:39:55.286 am infoGallery Main Keypad button 1 was held
dev:372021-12-19 01:39:54.870 am inforcvd: DEVICE,82,86,9,0
dev:372021-12-19 01:39:54.838 am inforcvd: DEVICE,82,82,9,1
dev:372021-12-19 01:39:54.774 am inforcvd: DEVICE,82,81,9,1
dev:1302021-12-19 01:39:54.755 am errorjava.lang.NullPointerException: Cannot invoke method toInteger() on null object on line 70 (method parse)
dev:372021-12-19 01:39:54.742 am inforcvd: DEVICE,81,86,9,0
dev:1302021-12-19 01:39:54.672 am errorjava.lang.NullPointerException: Cannot invoke method toInteger() on null object on line 70 (method parse)
dev:372021-12-19 01:39:54.659 am inforcvd: DEVICE,81,82,9,1
dev:1302021-12-19 01:39:54.567 am errorjava.lang.NullPointerException: Cannot invoke method toInteger() on null object on line 70 (method parse)
dev:372021-12-19 01:39:54.552 am inforcvd: DEVICE,81,81,9,1

1 Like

This won't work, ever. Picos have odd button number mappings, so drivers can't be used with Lutron keypads.

Is there any idea or update as to when double tap (or even multitap) for Lutron RA2 Keypads might be added? I understand that such a feature will need to be implemented through timing within the Hubitat, as the RA2 devices don't report double (or multitap) natively.

Basically I just would like a way to Trigger a rule if a particular button is pressed two times with in a set period of time (say 1 second or even 500ms).

Or maybe this is something that could be implemented through the rule machine (or something else that exists today)? I am a novice on using Rules and if/how timing of multiple events within a specific period is something that can be accomplished (something like a delay and wait after the first press).

Any insight or update would be appreciated!

We are still working on it. Double tap for Picos is in the upcoming 2.3.1 release. Keypads will take a bit longer.

1 Like

What are your goals with the multiple presses? If it's turning on/off lights, I wrote a custom app that can do this. If you want to perform arbitrary actions (turn on/off lights, change mode, whatever), then this won't help, though some people in the past have written rules to handle this kind of thing. You can do basically anything in a rule, though it's a bit more effort.

Here's one example, though nowadays you'd need a Rule with a "Button" trigger for each button number/event (e.g., "button 1 pushed") that you want to keep track of--the "Button Device" trigger in this screenshot no longer exists, and the otherwise similar Button Controller app does not (currently?) support conditional actions. But similar idea:

Or you could wait for support in the driver. :smiley: In the meantime, some app-level workarounds like this are certainly possible.

Your reply is extremely helpful. Thank you.

So here is what I am trying to do:

I want to use a button on a Lutron RA2 Keypad to call different RA2 Scenes based on the number of presses of that button with in a fixed time period. I am an expert with regards to RA2 commands/programming (I know the RA2 Integration Protocol and system behavior extremely well).

So for a particular RA2 Keypad where I want to implement multi press functionality via Hubitat I first would strip away any programming with in RA2 system design software for the particular button.

Then I simply want Hubitat to detect how many times a specific RA2 Keypad button is press with in a fixed amount of time (say 1/2 a second) and act accordingly based on the number of detected presses. Clearly I understand the lag time implications in that single press scenes would experience (ie a half a second plus processing/communication time of RA2 and Hubitat).

If the keypad button is pressed only once then Hubitat would call a specific RA2 scene either by calling (ie pressing) a virtual phantom/button on the RA2 Main Repeater that is programmed with the scene OR by a calling (ie pressing) a button on a virtual/phantom RA2 Keypad that is programmed with the desired scene.

But if the button is pressed twice then Hubitat would call (ie press) a different RA2 virtual/phantom button programmed with desire scene for two presses.

This would be would go up to maybe three or four presses within a half second.

Does that make sense? As you can probably tell I am not much of a programmer or scripter but am willing to learn and experiment. I understand simple IF ELSEIF but the hard part is the timing component!

Also, can you please let me know where I could find the custom app you wrote?

Can do it in Node Red too

2 Likes

So I upgraded to 2.3.1 a few days back. I see "Double Tap" as a command for my Pico remote, but my existing Button Controller does not have it that I can find. Do I have to remove that Button Controller and begin again? Or is there a way to add it and keep what's already been set up?

Thanks

Which version of Button Controller? Also, which driver do you have for the Pico?

Button Controller 5.1. Device type just says "Lutron Pico". But somewhere along the way I stumbled upon a button that let me upgrade and get the "double tap" options added. I wish I had paid more attention to how I got there, but I'm just glad I didn't have to re-do everything for my Pico.

Thanks

1 Like