Advanced Button Controller (ABC)

I have an ST Button and want to control (Toggle on/off) my front lights (Hue Bulbs). I also want to make sure that the proper color temp level is set also 6500. It doesn't seem to work. Lights turn on then off.

Suggestions? Thanks

My guess is that your ST button is sending duplicate push events. This has been an issue with them in the past...especially if they are on older firmware. You can confirm by enabling debug logging on the driver and looking at your logs. If you see duplicate events, then you have the issue and you can try to update your button's firmware. The only way I know to do this, is by connecting it to a ST hub...hopefully you have one at your disposal?

Actually I still have my ST Mesh set which has ST built in. I will try that and see. Thank you.

Updated firmware. Same issue.

Are you seeing the duplicate events in the logs?
If yes, check out this post. Towards the end of the thread,, I have a link to a custom driver I edited to handle the extra events. It's pretty old but might help.

Let me ask you . Using the button with your app. If I want to toggle on/off and have the Hue bulbs to be 100% at 6500, how can I do that?

I think the way I was setting it up in your app was wrong and there was a conflict.

There isn't an option to set temp with a toggle. You can toggle and set brightness with the ToggleOnToLevel/Off option. If you also select to set a temp with Hue bulbs, this will also turn on the bulb. This is because Hue bulbs don't allow prestaging.

Do you often change the temp of the bulb?
I would recommend you simply use the ToggleOnToLevel with the button push event. Then use the hold (or doubleTap) event to set the temp when needed..this of course is assuming you don't change the temp often.

Otherwise, another option would be to create a scene using the Hubitat Groups and Scenes app. Scenes would allow you to capture the temp/color/brightness etc. You could then toggle the scene on and off with the ST button.

Not much. Thanks Stephack

New to this app, and to HE, just starting to move over from ST.

I setup this app w/Picos, the only issue is that we need to adjust dimmer level on some lights and the allowed max 15 steps per dimmer change takes to long to move between levels when dimming up or down. I'm using a Held event (used up on all the Push events on the pico w/higher priority actions) so that's already slow, combined w/only changing 15 steps it gets tedious.

Is there a better way to allow adjusting the brightness of the bulb when there isn't a specific "I want 75%" goal in mind?

I am using Held (Ramp Up) and Held (Ramp Down) and that makes it so you can hold the button until you get to the desired level, and it will stop changing once you let up.

What lights are you using? Specifically, do they support the "Start Level Change" and "Stop Level Change" commands? (Look on the device page--commands are the buttons at the top, which you should see for things like "On" and "Set Level.") If they do, you'd have to use the "Fast Pico" driver (my favorite--I know in another thread you may have mentioned reasons for preferring the other driver), but you could then use ABC's "Ramp" action to start ramping the level up or down with a push of the button and stop it on release (you don't have to worry about setting up the release part of this; ABC does it for you).

The problem with using the pushed/held driver is that there is no "released" action to stop the above. EDIT: The pushed/held driver should work fine here. As pointed out below, they will still send a "released" event after a hold.

If you're feeling adventurous and don't like any of the above solutions, a cursory glance at the code suggests there's nothing stopping you from putting in a value greater than 15 (but I also don't see anything to stop it trying to set a level <0 or >100, which will fail on many drivers, possibly not gracefully). If there is, I don't immediately see where. The author may need to comment on this to clarify (he's largely moved on to another platform but graciously hangs around here and answers questions about this app), but it seems like it might be easy enough to modify if so.

1 Like

Thanks, Neon, I found that a moment ago and it is working very well on the one bulb I set it up on. I have two buttons set when held (one to ramp up and one to ramp down) on the pico, works great. Bulb dims or grows brigher when I hold, and stops when I release (Hue bulbs).

@bertabcd1234 - I did select the Pushed/Held driver for the Picos, but the ABC Ramp action does work w/the Hue bulbs I tested it with. Is that really odd?

Not necessarily odd: the start of ramping should work fine. But without a "released" event, you won't have a way to stop it, so it will go all the way up or down. If you're seeing something else, I'd verify what events are actually coming from your Pico driver, or just accept the good luck. :laughing:

[EDIT: Nevermind, these puppies send a "released" event after a "held" event even with the regular driver, so you're good!]

1 Like

I'll play w/it some more, and re-confirm settings, etc. But what it seemed I was seeing yesterday was ramp up/down on hold, and ramp stop on release.

I'm almost never lucky, so maybe I should just keep my head down... :wink:

1 Like

Amen.

1 Like

I use held/released to increase decrease smoothly and a push to raise/lower +-25%.

The standard Lutron Pico driver (Pushed + Held) also reports Released events.

The Fast Pico driver only supports Pushed and Released.

4 Likes

I honestly can't remember all the details of the Fast Pico vs standard pico and startLevelChange() commands, so take anything I post right now with a grain of salt (a quick skim of my code would get me back up to speed but don't have the time atm).

I'm pretty sure what @ogiewon stated is accurate. They both have released events. The main difference between the 2 pico drivers is that with the fast pico, the pushed event takes place the moment the button is pushed, while with the standard pico driver, the pushed event waits to see if the button is being held before sending the event...creating a slight delay before sending pushed events.

With regard to ramp up/down as long as the driver for the light supports the changeLevel() commands, it should work fine. If the light driver does not support this, then the light should not even be an option in the drop down list.

Hopefully the above is accurate :thinking: ...and helpful.

4 Likes

Can you explain/show how you set this up in the ABC app, pretty please? :slight_smile:

Eegads! That is true. Sorry for the confusion above. :slight_smile: (So, yes, what you're trying to do would work with ABC with either driver--as it sounds like it already is.)

1 Like