Hi all. I'm a recent adopter of Hubitat and have been linking it to the many Samotech SM323 Zigbee dimmers I have. These are standard UK dimmer plate modules - push on / push off and rotate to dim. When adding these dimmers, Hubitat reports them as 'RGBGenie Micro Zigbee Dimmer' - and that driver work really well, apart from one thing. As I've seen other users post, they don't report their level properly.
I can use the generic zigbee dimmer driver and that does work perfectly, including reporting its level. However, I really like the level pre-staging (and default transition time) which can be done with the RGBGenie Micro Zigbee dimmer driver, but can't be done with the generic driver.
My actual use case for this is for lights and a rule control of a ceiling fan in a bathroom. I'm using the rule machine to control a Zigbee switch for the fan based on the dimmer switch position and level - if the light is on and the dimmer level is at or above 10%, the fan comes on, otherwise it's off. The dimmer level section of the rule is because my kids tend to just turn the dimmers all the way down rather than switch them off, so this prevents the fan running 24/7!
I'm also using the Mode Lighting app to set the level of this same dimmer to around 8% during night mode so if someone gets up to use the bathroom at night, the light only comes on at a glow instead of blindingly bright. The 10% level in the fan control rule also stops the fan coming on at night - it's quite noisy!
This is where I have a dilemma over drivers. If I use the generic driver, all works as it should except that because it doesn't have level pre-staging, when switched on at night the dimmer comes on to its previous (bright!) level before dimming down to 8%. If I use the RGBGenie driver, the light control is perfect, so the level pre-staging makes the light come on directly on to 8%, but the fan control doesn't work because the dimmer's not reporting its level.
With the RGBGenie Micro Zigbee driver, changing level on the dimmer (physically or digitally) works perfectly, but I get this message in the logs:
[error] java.lang.NullPointerException: Cannot execute null+null on line 240 (method parse)
Which I assume is responsible for the non-reporting of its level?
Of course, all of these are 'first world problems' But I'd really like to get it working as intended. Does anyone have any thoughts on any solutions? I'm inclined to use the RGBGenie driver to keep the level pre-staging and transition time control - but the absence of full fan control and the error entries in the log every time one of these dimmers change level (I have 16 of them in the house!) would bother me!
Thanks in advance for any help you can give me.