How to simply control a set of dimmer bulbs with the "button device" triggers

Okay I feel like I really should know how to do this with RM4 or maybe just in general but for some reason I am having trouble figuring out how to handle this.

I have 2 different button controllers - an Eria Dimming Switch and a Lightify Dimming Switch. I would like to use one of these to control dimming on a set of sengled color plus recessed lights.

Don't need to change colors or anything else just dim. I have the on/off working of course but not sure how to go about dimming. Tried using button devices in a rule - and configured the push/release but that did not work.

With the Eria - I have these defined in a simple rule:

1 - pushed = sengled bulbs switched "on"
2 - pushed = "Start Raising" the sengled bulbs
2 - released = "Stop Changing" the sengled bulbs
3 - pushed = "Start Lowering" the sengled bulbs
3 - released = "Stop Changing" the sengled bulbs
4 - pushed = sengled bulbs switched "off" the sengled bulbs

"Stop changing ..." does not seem to work on release. Lights will go dim to off or turn on. Do I have to do something else like increment levels via some sort of repeat action?

Any advice would be appreciated... thx


That should work. What the "Start raising dimmer level" and "Start lowering dimmer level" actions will do is call startLevelChange(up) and startLevelChange(down) on the selected devices. The "Stop changing dimmer level" action (assuming that's the one you choose) will call stopLevelChange(). You could try going to the device page for the Sengleds and manually running these commands yourself to see if you get the desired behavior. I've tried this with Sengleds and it worked for me. I haven't used RM for this purpose, at least not recently, but my custom Dimmer Button Controller app that I wrote for this purpose calls the same commands and works fine with the Sengleds I've used (aside from the fact that I don't like how startLevelChange(down) will turn them all the way off instead of stopping at the lowest level, but that's just how they work).

I'd also make sure the Eria is sending the events you think it is. Viewing live logging while you press the buttons should show you (if you have info/description logging turned on for the device). If you're using the correct driver (there's a dedicated one for the Eria), it should do this, but clicking the Configure button can't hurt, especially if you manually changed the driver at some point.

If the button events look good and manually running the commands works but RM still doesn't, you could try turning on (at least) trigger and action logging for your rule. That may provide clues into what is happening--or what isn't, as the case may be.

1 Like

Those are great ideas and I will do some further testing. will also take a look at your Dimmer button controller app..

Thank you!!


Your Sengled bulbs are paired directly to Hubitat and are using the Sengled driver?

Personally, I would switch the bulbs on with button 1. That will switch them on to the previous level. I would set them to a predefined level.

Also, with your sengled bulbs, do you have level pre-staging turned on or no? If you do, that is going to be an issue with the ramping of start changing and stop changing. I would try disabling that and see how the rule behaves.

Yes directly to HE (my main floor hub) and using the Sengled driver - I have 7 bulbs. Pre-staging is off (just checked). The bulbs don't all respond at the same time unless I group them with Zigbee messaging. If I do that and use the group in the rule I lose dimming ability ("Start Raising" etc).. I can set the level for the group if I want.

Note: for testing the rule I am selecting the bulbs individually not using a group. Ideally the group would be better I think.

As you noted though, you will lose the capability to dim/brighten with startLevelChange with the group device however.

But I can set the level - seems like there should be a programmatic way to handle.

The only thing you can do is try to create a virtual dimmer that will respond to the startLevelChange and stopLevelChange and will publish it's dimmer level at each change event. You can then try to pair that device with the group device through something like switch bindings or mirror. I have had very inconsistent results when trying to do this. The device sometimes "runs away" while ramping and doesn't stop when the stop is received.

1 Like

Okay thanks for the heads up - I was looking at doing exactly that... I wonder if I can hack up @bertabcd1234's Dimmer Controller app to use looped level settings with cancel on release event or something...

You will still need a device to issue the startLevelChange and stopLevelChange commands to, as the group device doesn't support them. You can't issue commands directly to an app.

Sending a bunch of repeated setLevel commands to simulate startLevelChange, if that's what you mean, would likely overburden your network or at least the bulbs and lead to inconsistent behavior--if any at all. I have bad enough luck with just one setLevel sometimes. :rofl: (This is part of why I kept my Hue Bridge and didn't proceed with my one-time experiment of using bulbs directly paired to Hubitat, which, yes, was its own "bulb hub.") That is not something I'd recommend.

If you only have a few bulbs, you might be ok using them individually instead of in a group. If you have more or find the group to work better, I might suggest the more practical but less sexy workaround of just using a press to adjust the dimmer a little (maybe +/- 10 or 15%?) and a hold to adjust it more or set it to some predefined level (say, 2 hold = 66% and 3 hold = 33%, or whatever looks good on Sengleds, which look about the same to me until you get down to single digits...).

1 Like

Mmm that sounds better - I noticed your app does this if you don't set "dimming while held". Maybe that is the good enough answer for now.

I've been away from things HE for a little while so am a bit rusty but always willing to play and learn. It's too bad there is no straightforward solution though but given the diversity of the hardware it's understandable I guess.

I had a set of rules that used several different dimmer levels to "bump" the value. I found that I wanted 2 or 3 options below 50% but once I got to 50%, the only real level I wanted after that was 100%. Using the adjust by % wasn't granular enough below 50 but too granular above 50. So, I used a conditional rule to compare the current level to a set of ranges and changed the dimmer accordingly.

1 Like

That's an interesting idea. I guess thinking about how we use the dimmer is a good start.

Maybe I could fake it for now just set level to 50 on held with a slower fade time to give the illusion of control or something like that.

1 Like

Absolutely! I found that I really didn't need the ramping. I removed it from a couple pico rules because I would always miss the bottom and they would turn off. And when I started to look at how I used them. I found that I really didn't need the ramping as much as I thought I did. Just had to get a little creative.

1 Like