What event is 'Button is pushed or held' looking for?

I have created a device handler for some push buttons that trigger via IR but am having an issue with using these buttons to trigger Routines. I have the routine set to trigger when ‘Button is pushed or held’ and the button is selected in the ‘Which button?’ field, yet when I trigger the button the routine is not triggered.

They are working fine for other events/apps that use buttons, just not to fire the built in routines. I assume I need to add another sendEvent to the device handler but can’t find any documentation on which events are needed to do what.

It’s a very powerful thing this SmartThings stuff, but bugger me the documentation is bloody awful!


If you use the quick browse lists in the community – created wiki, look in the device type handler section, there’s a list for remotes with several different DTHs for button controllers that might be of help. Look at the ones that specifically say they are for Minimotes. Some of the others are using central scene commands, which probably isn’t what you’re looking for.


1 Like

I think it is in the doc under capabilities, look for Button. You will find that if you send a button event with pushed as value for the state it should do the trick. below the doc and an event from my Ring…

A device with one or more buttons

Preferences Reference
button: ENUM
The state of the button
The value if the button is pushed

1 Like

The Button Capability has been perverted because it has an insufficient API.

  1. It doesn’t handle multi-button Devices like the Aeon Minimote. i.e., it doesn’t include a “buttonNumber” attribute and “numButtons” or similar.

  2. It doesn’t distinguish between “Pushed” and “Held” (though, IMHO, Held buttons, especially on the Minimote, are actually just virtual buttons 5 through 8 (where pushed = 1 through 4).

Anyhow … the Community DTHs for Aeon Minimote use the perversions pretty consistently, I believe, so SmartApps are able to rely on them.

1 Like

Yea I’m sending a button.pushed event but the routine doesn’t seem to be running. My button device is also a switch (that turns itself off after an on) to allow triggering via IFTTT so I have just changed the routine to listen for a switch on trigger which works fine.