Push button action doesn’t work

Using basic button controller, push button action to push button 1 on another controller. Both devices are Vesternet Z wave

In logs:

AMerrororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: rgbGenieZW5002.push() is applicable for argument types: (java.lang.Long) values: [1]
Possible solutions: use([Ljava.lang.Object;), run(), run(), dump(), wait(long), parse(java.lang.String) (method push)

Looks like a "bug" (or likely just lack of updates) in the driver, assuming you're using the built-in "RGBgenie Z-Wave Remote ZW-5009" driver, as I can get the same error when I try the command directly from the device detail page for such a device (always a good idea to try to ensure the app calling the command isn't the problem).

A while back, button capabilities on Hubitat were updated to require implementation of these commands, one possible use being "virtual" pushes like you're trying to do. My guess is this one was never changed to add these.

Tagging @mike.maxwell since I know he did some of these, though I'm not sure about the Z-Wave ones in particular...

I’ve been using Hubitat for 1 day. I don’t know what a driver is!

I installed 55 ikea zigbee lights and 10 Vesternet wall switches. Vesternet recommended Hubitat and sold it to me.

So far it’s misidentified every device I’ve added, I have to change the device name every time. Took me most of the day to find a generic device that actually works for all the bulbs, and even then colour temperature doesn’t work on the E27 bulbs.

I thought I’d do something really simple and set up a very basic button plate to control the lights in one room with a duplicate plate on the other side of the room.

Can’t do a button press to duplicate the functions, and so o thought I’d clone the actions over to the other one only to find clone fails with an error.

So I set a third plate up from scratch. All the functions work when running the action from the phone app, and the logs show the physical button press, so why does pressing the button not run the actions?

Has anyone ever tested Hubitat before releasing it?

Lots of Ikea devices have little (or big) quirks that make them not work well with Hubitat. Your best bet is devices from the "official" list (which does include some of these), though many others can work with built-in generic drivers or custom drivers: List of Compatible Devices | Hubitat Documentation

This sounds like "driver" and is all I mean above. :smiley:

Sometimes the wrong driver matches from the device "fingerprint," and you'll need to manually switch to another. There is some information you can share for your particular device if you are interested helping this match better for future users, otherwise manually changing the driver should work.

Cloning normally works, though it's unfortunate you ran into an error. If you're interested in helping that get fixed, sharing the actual error here (from "Logs" is better than the regular UI--you should see something similar there with a bit more detail), as well as the steps you took to get there, may help.

Otherwise, the driver will probably be fixed in a future release, so you wouldn't have to use this workaround. But without needing to wait for that, recreating the actions in another rule or whatever it sounds like you're already doing is certainly one workaround.

Regarding testing: of course, but it's impossible to catch everything. There is a beta program if you are interested in joining some day... :slight_smile:

1 Like

I’m replacing a Cooper Controls iLight system that released the magic smoke a few days before my flat sale goes through.

I just wanted something vaguely powerful and easy to set up (I used to be R&D director of AMX and definitely don’t have time or budget to implement AMX/Chrestron here!!)

I’ve found that changing the wall plates to generic z wave buttons make “press button” work, but only up to button 4!! 5-8 don’t trigger remotely, but they do work from the master plate.

How do I get the other 4 to trigger?

@bryan.crotaz One more tip... if you need to manually change the Device Type (i.e. the driver), it is always a good idea to click the CONFIGURE button for that device, AFTER you've saved the driver type change. You will not see anything visually on the device page when you click configure. However, if you look in the Logs, you may see where the configure() command was called and communicated with your device. This command sends device configuration parameters to the actual device. This usually is automatically done when the device is paired with the hub. However, if the wrong driver is automatically selected, then one must click the CONFIGURE button manually after changing to the correct device driver type. Often, doing so will then cause the device to behave properly.

Yes, Hubitat has been very thoroughly tested by the Hubitat staff, Beta testers, and thousands of users. It is very challenging for a small company like Hubitat to test every single hardware device combination that exists in the world. The team doesn't actually own every smart home device ever made, and thus it relies on its users to sometimes help with testing new hardware devices, to help make sure they work properly and that the correct device type driver is chosen when a device is paired.

I have been using the Hubitat platform for 6 years now. The Hubitat staff is made up of folks who use the product every day for their own homes, and thus can relate to the vast majority of use-cases encountered by their customers. You will find the Hubitat employees here in the community on a daily basis, engaging with users to continuously improve the platform based on feedback.

If these button controller devices actually have 8 physical buttons, then one thing to check is whether or not the Button Device, in your list of Hubitat Devices, shows the proper button count.

Here is an example of a 5 button Lutron Pico remote on my system. You can see where you can change the number of buttons on this device, if the correct number of buttons was not automatically set when the device was paired with the hub.

1 Like

I got it working. But I don’t understand why

In the slave basic button app I clicked run actions. They worked from the ui, but not from the buttons.

I then came back out to the devices page and now they work on the physical buttons.

I didn’t change any config, all I did was ram the action from the ui.

Did you hit "Done" after you did any of the above? That is necessary to "save" your settings for most apps, especially ones that involve event subscriptions (like listening for button presses).

If configure MUST be sent when changing device type, then surely Hubitat could do this automatically? A new user like me doesn’t have a clue that this is needed.

Yes but Done means Close. If it means Save, then why not call it Save (especially as there are other places where there are Save buttons) - I think in device setup?

Glad to hear that!

Well, there are actually some situations where users want to temporarily change the driver on a specific device, issue some special configuration commands, and then put the original driver back in place. If the configure() command was automatically issued each time the driver was changed, then the changes from the temporary driver would be overwritten.

I am just passing on some helpful information that I have gleaned over the years. I hope you find that some of the information useful. Welcome to the Hubitat Community!

1 Like

I’d suggest that if Done is essential then there should be a warning when you leave the page without pressing it. New users wouldn’t know that this was required.

yup, driver was missing these commands, will get this sorted.