Wouldn’t you be able to do a double-press in Webcore? With almost any button? Set up your button routines such that if the button is pressed once, Wait… if button not pressed again within X milliseconds, do X. If button pressed again within that time, do Y
First press could set a variable, say @button, to B. The piston then counts 200 milliseconds, and resets the variable to Q.
Meanwhile, the piston also includes the following: If button pressed while @button = B, do ACTION B
Most devices that have a built-in double press are not sending two separate presses to the hub. Instead, they do the timing in the device itself and then send a single code to the hub based on whether the button was pressed once or twice. For example, the homeseer switches and The Fibaro button use Central scene commands to indicate which press pattern was detected.
Trying to process millisecond separations on a mesh network is hardly ever reliable.
Has anyone figured out how to use the double press on this button? I see in the thread it says resolved but I don’t see that anywhere I’m using the classic app and smartthings hub v2 and I have press and I have hold how do I use press twice? the button itself shows all three: pressed, pressed twice and held.
but when i ad a smart app to do something the press twice or even second button dont show up to program. Im using the smarthings button controller app.
*My button is supposed to trigger a switch on a single press, and then on a double press it is supposed to reset the button.
The button was not manufactured with a double press function.
I tried to logistically copy your method above to simulate a second button press, but it didnt work. can you see what i may be doing wrong?
Your while statement should be an if statement just checking the variable. The piston will run for each press, so in the second iteration of the piston’s execution, it just needs to see if the variable is 1.
That being said, WebCore runs in the cloud and timing can be very iffy. Catching double clicks like this will be unreliable at best.