[RELEASE] Dimmer Button Controller (configure Pico to emulate Hue Dimmer or any button device to easily control lights)

No worries. Anything I can do to be of assistance! I love this app and it solves a critical problem I have been attemping to solve in my eco system for years. So any support I can give you let me know. Additionally I am a software engineer and have had to brush up my groovy skills a bit so if I can help in that department too I am game!

@bertabcd1234 the Dimmer Button Controller app does not seem to respect changes to "Dimming buttons change level +/- by (unless "dim until release" enabled on supported devices)*".

I think I have found and fixed this problem in 3.1.1, just posted. Manual or HPM installation, as usual, should work (only the child app was changed).

Thank you @bertabcd1234 . I have just updated the app and will test this out today. Thanks for the fast turn around time.

@bertabcd1234 this indeed worked. Much appreciated!

@bertabcd1234 wondering if you can help, i'm at a loss for why this isn't working. I have 6 Lightify bulbs, they all work individually but I'm trying to set it up so that my Zooz72 dimmer controls them. Pics below:


That configuration looks OK to me, so the only thing I can think of is that turning on 6 bulbs at the same time without group broadcasting, especially older Sylvania/Osram/Lightify bulbs, might be too much. There are well known problems with some Zigbee bulbs, mostly older ones, on "mixed" (bulb and non-bulb) networks; I'm not sure if you're aware of that, but that's another topic, and perhaps yours aren't really subject to this problem.

My first suggestion would be to create a group or Room Lighting instance (this can/will effectively replace Groups and Scenes, besides being usable to automate the lights themselves) and enable Zigbee group broadcasting, then use the group or activator device in this app instead of the individual bulbs, to see if that helps.

The usual advice of looking for errors, etc. in the logs would also apply. Make sure you hit "Done" in the DBC app as well to actually save your settings before testing.

it's so odd, the group behaves fine, but as soon as I try and link it to the zooz switch it fails

First post. Been trying to search on here about my specific issue, but didn't come up with anything, so here it goes. I just paired a Sengled 4-button zigbee remote, and first step was to configure with the Dimmer Controller (great app, already got 7 other instances) but it's only showing up with one button. In the logs I can confirm i can get all 4 buttons, doubletap, etc.. What might be causing this, and is there a workaround to use the dimmer controller rather than have to set up the built-in button controller (ugh).

Thanks!

Look at the device detail page for the Sengled button device, and check the value of "numberOfButtons" under "Current States." My guess is you'll only see 1. The app reads this value and presents an appropriate UI accordingly. If that's wrong, I'd try to fix it first; how depends on the driver (and normally isn't something you'd have to do at all since it usually gets set correctly in the first place), but a "Configure" command or just doing a "Save Device" may help. There are more awkward workarounds if not.

@bertabcd1234
Hi, I'm new to this site so I do not know how to paste code in courier to preserve the formatting .. Anyway, are the "devies" shown in bold below typos in the code? You'll find "devies" in three places in the DimmerButtonController3.groovy file, below are two of the instances:

Boolean toggle(devices) {
logDebug "Running toggle for $devices"
if (devices.any { it.currentValue('switch') == "on" }) {
devies.each { DeviceWrapper dev ->
dev.off()
if (settings.meterDelay) pauseExecution(settings.meterDelay)
}
return false
}
else {
devies.each { DeviceWrapper dev ->
dev.on()
if (settings.meterDelay) pauseExecution(settings.meterDelay)
}
return true
}
}

This option above the message field:
2022-10-05 10_24_28-Chrome Main

image

Looks like this:

preferences {
     page name: "mainPage", title: "", install: true, uninstall: true
} 

def installed() {
    log.debug "Installed with settings: ${settings}"
    initialize()
}

1 Like

@danabw: Thank you very much! I must have been blind :smiley:

1 Like

Yes, thanks for catching this! This probably caused errors (or at least not functionality) for anyone using the "Toggle" feature and the "Set Level" one in some cases. I've released a small update, v3.1.2, with this as the only change. If you've already modified it yourself, no need to update.

Installation information is available in the first post, as usual.

1 Like

Wonder if it's just me. Whether I upgrade or repair DBC, I get the following error message in HPM:

An error occurred downloading https://raw.githubusercontent.com/RMoRobert/Hubitat/master/apps/DimmerButtonController/deprecated/DimmerButtonController3.groovy

Ideas? TIA...

Oops. I'll have to fix the manifest. Got ahead of myself and uploaded the version I was going to use for v4, when v3 was (will be) deprecated. :slight_smile: In the meantime, manually finding the file one level up in Github should work.

1 Like

The manifest has been fixed now. I assume HPM should see it shortly, and it should update successfully now.

1 Like

Robert, thank you for resolving the manifest and for this awesome app in general. Perfect when using picos to control smart bulbs!

Any chance you'd add functionality to use a variable for CT?

On my list, along with a rework of the UI to make accessing all of that easier. :slight_smile:

1 Like

I have mostly Caseta devices, but just purchased a Sengled smart light switch to see how they work compared to Picos. This app looks perfect, but it's not working. Specifically, the "dim until released" feature. When I press the up or down buttons, it keeps raising or dimming the level after I let go, until I press the button again. I confess I haven't read all 218 other messages in this thread but I did also have the problem where the Sengled driver didn't report # of buttons at first, and found that solution here, so I'm hoping there's a solution to this one too.

Unfortunately, I don't have any dimmers that aren't Lutron Casetas, so I can't test if that side is the source of the incompatibility. Is there something I'm doing wrong?