For now I use 10 of zbmini2r and they works great. Sometimes hubitat is not getting properly status update (after pushing phisical button) but it's random. Perhaps its because it runs on zbminil2 driver however units looks really solid and cost very low money..
I googled ZBMINIR2 quickly, and it turns out that this device also supports a detached relay mode!
That's very interesting, I will look deeper into it during the incoming holidays when I will have more time.
As ZBMINIR2 fingerprint is currently not in this custom driver, it is normal to show ' * deviceProfile : UNKNOWN'.
The Status: message should also change to 'clear' after a minute.
Hi. After a few minutes this message went off and now I can observe:
Current States
- Status : clear
- healthStatus : online
- powerOnBehavior : Turn power Off
- rtt : 104
- switch : off
But problem is that switch status (on/off) will not refresh. I can refresh it by manually using "Refresh" option however it's not automatic. They homekit/hubitat will not see real state of switch and "toogle" function will not work as intended.
Please see some logs:
Summary
This text will be hidden
dev:1432024-12-15 15:21:05.454debugKitchen LED and Hood sendZigbeeCommands: sent cmd=[he raw 03EE 0 0 0x8006 {00 00 00 00 00} {0x0000}]
dev:1432024-12-15 15:21:05.452debugKitchen LED and Hood Received ZDO Match Descriptor Request (0x0006) status Success, data=[54, 00, 00, FF, FF, 01, 25, 00, 00] (Sequence Number:54, Input cluster count:01 Input cluster: 0x0025)
dev:1432024-12-15 15:21:05.448debugKitchen LED and Hood parse: descMap = [raw:catchall: 0000 0006 00 00 0040 00 03EE 00 00 0000 00 00 540000FFFF01250000, profileId:0000, clusterId:0006, clusterInt:6, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:03EE, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[54, 00, 00, FF, FF, 01, 25, 00, 00]] description=catchall: 0000 0006 00 00 0040 00 03EE 00 00 0000 00 00 540000FFFF01250000
dev:1432024-12-15 15:20:17.581debugKitchen LED and Hood clearing the Status event
dev:1432024-12-15 15:19:37.435debugKitchen LED and Hood zigbee ON_OFF_CLUSTER command 0x01 response: Success
dev:1432024-12-15 15:19:37.432debugKitchen LED and Hood parse: descMap = [raw:catchall: 0104 0006 01 01 0040 00 03EE 00 00 0000 0B 01 0100, profileId:0104, clusterId:0006, clusterInt:6, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:03EE, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:0B, direction:01, data:[01, 00]] description=catchall: 0104 0006 01 01 0040 00 03EE 00 00 0000 0B 01 0100
dev:1432024-12-15 15:19:37.349debugKitchen LED and Hood sendZigbeeCommands: sent cmd=[he cmd 0x03EE 0x01 6 1 {}, delay 2000]
dev:1432024-12-15 15:19:37.295debugKitchen LED and Hood on() currentState=off
dev:1432024-12-15 15:19:19.771infoKitchen LED and Hood powerOnBehavior is Turn power Off (raw:0) [refresh]
dev:1432024-12-15 15:19:19.770traceKitchen LED and Hood event powerOnBehavior sent w/ value Turn power Off
dev:1432024-12-15 15:19:19.768traceKitchen LED and Hood value=0 foundItem.scale=1 divider=1 valueCorrected=0.0
dev:1432024-12-15 15:19:19.768traceKitchen LED and Hood isRefresh = true - continue and send an event, although there was no change...
dev:1432024-12-15 15:19:19.767debugKitchen LED and Hood powerOnBehavior is Turn power Off (raw:0) [refresh] (no change)
dev:1432024-12-15 15:19:19.766traceKitchen LED and Hood compareAndConvertTuyaToHubitatEventValue: after compareAndConvertStrings: isEqual=true hubitatEventValue=Turn power Off
dev:1432024-12-15 15:19:19.765traceKitchen LED and Hood compareAndConvertStrings: scaling: foundItem.scale=1 tuyaValue=Turn power Off hubitatValue=Turn power Off
dev:1432024-12-15 15:19:19.764traceKitchen LED and Hood latestEvent is dataType is ENUM
dev:1432024-12-15 15:19:19.763traceKitchen LED and Hood compareAndConvertTuyaToHubitatEventValue: enum: foundItem.scale=1, fncmd=0, device.currentValue(powerOnBehavior)=Turn power Off map=[0:Turn power Off, 1:Turn power On, 255:Restore previous state]
dev:1432024-12-15 15:19:19.762debugKitchen LED and Hood processFoundItem: no change: preference 'powerOnBehavior' existingPrefValue 0 equals scaled value 0 (clusterAttribute raw value 0)
dev:1432024-12-15 15:19:19.760traceKitchen LED and Hood processFoundItem: preference 'powerOnBehavior' exists with existingPrefValue 0 (type enum) -> isEqual=true preferenceValue=0
dev:1432024-12-15 15:19:19.759traceKitchen LED and Hood compareAndConvertTuyaToHubitatPreferenceValue: enum: preference = 0 type=enum foundItem=powerOnBehavior isEqual=true preferenceValue=0 tuyaValueScaled=0 fncmd=0
dev:1432024-12-15 15:19:19.758traceKitchen LED and Hood processFoundItem: name=powerOnBehavior, isAttribute=true, preferenceExists=true, existingPrefValue=0 (type enum, rw=rw) value is 0 (description: Power On Behavior)
dev:1432024-12-15 15:19:19.757traceKitchen LED and Hood processFoundItem: no preProc for powerOnBehavior
dev:1432024-12-15 15:19:19.755traceKitchen LED and Hood processClusterAttributeFromDeviceProfile: descMap = [raw:03EE0100060A03403000, dni:03EE, endpoint:01, cluster:0006, size:0A, attrId:4003, encoding:30, command:01, value:00, clusterInt:6, attrInt:16387]
dev:1432024-12-15 15:19:19.752traceKitchen LED and Hood customParseOnOffCluster: zigbee received cluster 0x0006 attribute 0x4003 value 0 (raw 00)
dev:1432024-12-15 15:19:19.750debugKitchen LED and Hood parse: descMap = [raw:03EE0100060A03403000, dni:03EE, endpoint:01, cluster:0006, size:0A, attrId:4003, encoding:30, command:01, value:00, clusterInt:6, attrInt:16387] description=read attr - raw: 03EE0100060A03403000, dni: 03EE, endpoint: 01, cluster: 0006, size: 0A, attrId: 4003, encoding: 30, command: 01, value: 00
dev:1432024-12-15 15:19:19.672infoKitchen LED and Hood Kitchen LED and Hood is off [Refresh]
dev:1432024-12-15 15:19:19.654traceKitchen LED and Hood value=off lastSwitch=off
dev:1432024-12-15 15:19:19.653traceKitchen LED and Hood customParseOnOffCluster: unprocessed 0x0006 attribute 0x0000 (value 00)
dev:1432024-12-15 15:19:19.652traceKitchen LED and Hood processClusterAttributeFromDeviceProfile: clusterAttribute 0x0006:0x0000 was not found in the attributes list for this deviceProfile Sonoff ZBMini L2 Switch
dev:1432024-12-15 15:19:19.650traceKitchen LED and Hood processClusterAttributeFromDeviceProfile: descMap = [raw:03EE0100060A00001000, dni:03EE, endpoint:01, cluster:0006, size:0A, attrId:0000, encoding:10, command:01, value:00, clusterInt:6, attrInt:0]
dev:1432024-12-15 15:19:19.649traceKitchen LED and Hood customParseOnOffCluster: zigbee received cluster 0x0006 attribute 0x0000 value 0 (raw 00)
dev:1432024-12-15 15:19:19.647debugKitchen LED and Hood parse: descMap = [raw:03EE0100060A00001000, dni:03EE, endpoint:01, cluster:0006, size:0A, attrId:0000, encoding:10, command:01, value:00, clusterInt:6, attrInt:0] description=read attr - raw: 03EE0100060A00001000, dni: 03EE, endpoint: 01, cluster: 0006, size: 0A, attrId: 0000, encoding: 10, command: 01, value: 00
dev:1432024-12-15 15:19:19.609debugKitchen LED and Hood sendZigbeeCommands: sent cmd=[he raw 0x03EE 1 0x01 0x0006 {10 00 00 00 00}, delay 100, he raw 0x03EE 1 0x01 0x0006 {10 00 00 03 40}, delay 100]
dev:1432024-12-15 15:19:19.569debugKitchen LED and Hood refresh() cmds=[he raw 0x03EE 1 0x01 0x0006 {10 00 00 00 00}, delay 100, he raw 0x03EE 1 0x01 0x0006 {10 00 00 03 40}, delay 100]
dev:1432024-12-15 15:19:19.568debugKitchen LED and Hood customRefresh() : [he raw 0x03EE 1 0x01 0x0006 {10 00 00 00 00}, delay 100, he raw 0x03EE 1 0x01 0x0006 {10 00 00 03 40}, delay 100]
dev:1432024-12-15 15:19:19.565debugKitchen LED and Hood refreshFromDeviceProfileList()
dev:1432024-12-15 15:19:19.563debugKitchen LED and Hood onOffRefresh()
dev:1432024-12-15 15:19:19.561debugKitchen LED and Hood refresh()... DEVICE_TYPE is Switch model=ZBMINIR2 manufacturer=SONOFF
dev:1432024-12-15 15:19:17.598debugKitchen LED and Hood zigbee response write ON_OFF_CLUSTER attribute response: Success
dev:1432024-12-15 15:19:17.591debugKitchen LED and Hood parse: descMap = [raw:catchall: 0104 0006 01 01 0040 00 03EE 00 00 0000 04 01 00, profileId:0104, clusterId:0006, clusterInt:6, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:03EE, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:04, direction:01, data:[00]] description=catchall: 0104 0006 01 01 0040 00 03EE 00 00 0000 04 01 00
dev:1432024-12-15 15:19:17.563infoKitchen LED and Hood updated
dev:1432024-12-15 15:19:17.546debugKitchen LED and Hood sendZigbeeCommands: sent cmd=[null]
dev:1432024-12-15 15:19:17.544warnKitchen LED and Hood sendZigbeeCommands it: no commands to send! it=null (cmd=[null])
dev:1432024-12-15 15:19:17.542debugKitchen LED and Hood sendZigbeeCommands: sent cmd=[he wattr 0x03EE 0x01 0x0006 0x4003 0x30 {00} {}, delay 200]
dev:1432024-12-15 15:19:17.539infoKitchen LED and Hood setPar: (3) successfluly executed setPar customSetPowerOnBehavior(0)
dev:1432024-12-15 15:19:17.530debugKitchen LED and Hood cluster:attribute 0x0006:0x4003 is read-write, but no data type (dt) is defined! Assuming 0x30
dev:1432024-12-15 15:19:17.508debugKitchen LED and Hood setPar: found at=0x0006:0x4003 dt=null mapMfCode=null scaledValue=0 (val=0)
dev:1432024-12-15 15:19:17.506traceKitchen LED and Hood validateAndScaleParameterValue: enum parameter 0. dpMap=[at:0x0006:0x4003, name:powerOnBehavior, type:enum, rw:rw, min:0, max:255, defVal:255, scale:1, map:[0:Turn power Off, 1:Turn power On, 255:Restore previous state], title:Power On Behavior, description:Power On Behavior]
dev:1432024-12-15 15:19:17.503debugKitchen LED and Hood setPar(powerOnBehavior, 0)
dev:1432024-12-15 15:19:17.503traceKitchen LED and Hood preferenceValue = 0
dev:1432024-12-15 15:19:17.502debugKitchen LED and Hood updateAllPreferences: foundMap = [at:0x0006:0x4003, name:powerOnBehavior, type:enum, rw:rw, min:0, max:255, defVal:255, scale:1, map:[0:Turn power Off, 1:Turn power On, 255:Restore previous state], title:Power On Behavior, description:Power On Behavior]
dev:1432024-12-15 15:19:17.500debugKitchen LED and Hood updateAllPreferences: preferences=[powerOnBehavior:0x0006:0x4003]
dev:1432024-12-15 15:19:17.499debugKitchen LED and Hood current state.deviceProfile=SWITCH_SONOFF_ZBMINIL2, settings.forcedProfile=Sonoff ZBMini L2 Switch, getProfileKey()=SWITCH_SONOFF_ZBMINIL2
dev:1432024-12-15 15:19:17.498debugKitchen LED and Hood customUpdated()
dev:1432024-12-15 15:19:17.497debugKitchen LED and Hood deviceHealthCheck is scheduled every 240 minutes
dev:1432024-12-15 15:19:17.463infoscheduling health check every 240 minutes by Activity check method
dev:1432024-12-15 15:19:17.442traceKitchen LED and Hood [voltageToPercent:false, turboMode:9, tempThreshold:50, txtEnable:true, logEnable:true, advancedOptions:true, healthCheckMethod:1, healthCheckInterval:240, traceEnable:true, powerOnBehavior:0, forcedProfile:Sonoff ZBMini L2 Switch, ignoreDuplicated:true, alwaysOn:false, threeStateEnable:false]
dev:1432024-12-15 15:19:17.421traceKitchen LED and Hood [voltageToPercent:false, turboMode:9, tempThreshold:50, txtEnable:true, logEnable:true, advancedOptions:true, healthCheckMethod:1, healthCheckInterval:240, traceEnable:true, powerOnBehavior:0, forcedProfile:Sonoff ZBMini L2 Switch, ignoreDuplicated:true, alwaysOn:false, threeStateEnable:false]
dev:1432024-12-15 15:19:17.401infoKitchen LED and Hood driver version 3.2.1 2024/06/05 2:46 PM (ZBMINIR2 SONOFF) (C-8 Pro 2.3.9.201)
dev:1432024-12-15 15:19:17.399infoKitchen LED and Hood updated()...
dev:1432024-12-15 15:18:35.412infoKitchen LED and Hood powerOnBehavior is Turn power Off [refresh]
dev:1432024-12-15 15:18:35.385infoKitchen LED and Hood Kitchen LED and Hood is off [Refresh]
dev:1432024-12-15 15:18:21.025infoKitchen LED and Hood powerOnBehavior is 0 [refresh]
dev:1432024-12-15 15:18:20.924infoKitchen LED and Hood Kitchen LED and Hood is on [Refresh]
dev:1432024-12-15 15:18:18.837infoKitchen LED and Hood updated
dev:1432024-12-15 15:18:18.814infoKitchen LED and Hood press F5 to refresh the page
dev:1432024-12-15 15:18:18.813infoKitchen LED and Hood Preferences reset to default values
dev:1432024-12-15 15:18:18.802infosetting par powerOnBehavior defVal = 255 (type:enum)
dev:1432024-12-15 15:18:18.792tracepowerOnBehavior 0x0006:0x4003
dev:1432024-12-15 15:18:18.772infoKitchen LED and Hood changing the device profile from UNKNOWN to SWITCH_SONOFF_ZBMINIL2
dev:1432024-12-15 15:18:18.728infoscheduling health check every 240 minutes by Activity check method
dev:1432024-12-15 15:18:18.722infoKitchen LED and Hood driver version 3.2.1 2024/06/05 2:46 PM (ZBMINIR2 SONOFF) (C-8 Pro 2.3.9.201)
dev:1432024-12-15 15:18:18.720infoKitchen LED and Hood updated()...
dev:1432024-12-15 15:17:49.764infoKitchen LED and Hood Kitchen LED and Hood is on [Refresh]
dev:1432024-12-15 15:17:38.820infoKitchen LED and Hood Round-trip time is 104 ms (min=72 max=103 average=76)
dev:1432024-12-15 15:17:38.540infoKitchen LED and Hood Round-trip time is 81 ms (min=72 max=92 average=74)
dev:1432024-12-15 15:17:37.794infoKitchen LED and Hood Round-trip time is 92 ms (min=72 max=92 average=74)
dev:1432024-12-15 15:17:36.369infoKitchen LED and Hood Round-trip time is 77 ms (min=72 max=75 average=72)
dev:1432024-12-15 15:17:35.178infoKitchen LED and Hood Round-trip time is 81 ms (min=72 max=72 average=72)
dev:1432024-12-15 15:17:28.914infoKitchen LED and Hood Kitchen LED and Hood is off [Refresh]
dev:1432024-12-15 15:17:07.147infoKitchen LED and Hood Kitchen LED and Hood is on [Refresh]
dev:1432024-12-15 15:17:02.968infoKitchen LED and Hood is now online!
dev:1432024-12-15 15:17:02.967infoKitchen LED and Hood healthStatus changed to online
dev:1432024-12-15 15:16:45.188infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:16:42.271infoKitchen LED and Hood was turned off [digital]
dev:1432024-12-15 15:13:29.970infoKitchen LED and Hood was turned on [physical]
dev:1432024-12-15 15:13:29.868infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:13:27.920infoKitchen LED and Hood was turned off [physical]
dev:1432024-12-15 15:13:27.819infoKitchen LED and Hood is on [digital]
dev:1432024-12-15 15:13:20.688infoKitchen LED and Hood is on [physical]
dev:1432024-12-15 15:13:20.587infoKitchen LED and Hood was turned on [digital]
dev:1432024-12-15 15:13:14.976infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:13:12.159infoKitchen LED and Hood was turned off [physical]
dev:1432024-12-15 15:13:12.060infoKitchen LED and Hood is on [digital]
dev:1432024-12-15 15:13:09.193infoKitchen LED and Hood was turned on [physical]
dev:1432024-12-15 15:13:09.092infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:13:07.152infoKitchen LED and Hood is off [physical]
dev:1432024-12-15 15:13:07.051infoKitchen LED and Hood was turned off [digital]
dev:1432024-12-15 15:13:04.799infoKitchen LED and Hood is on [digital]
dev:1432024-12-15 15:12:31.267infoKitchen LED and Hood was turned on [physical]
dev:1432024-12-15 15:12:31.165infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:12:29.206infoKitchen LED and Hood was turned off [physical]
dev:1432024-12-15 15:12:29.108infoKitchen LED and Hood is on [digital]
dev:1432024-12-15 15:12:26.588infoKitchen LED and Hood is on [physical]
dev:1432024-12-15 15:12:26.489infoKitchen LED and Hood was turned on [digital]
dev:1432024-12-15 15:12:21.761infoKitchen LED and Hood was turned off [physical]
dev:1432024-12-15 15:12:21.661infoKitchen LED and Hood is on [digital]
dev:1432024-12-15 15:12:19.745infoKitchen LED and Hood was turned on [physical]
dev:1432024-12-15 15:12:19.640infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:12:18.350infoKitchen LED and Hood was turned off [physical]
dev:1432024-12-15 15:12:18.248infoKitchen LED and Hood is on [digital]
dev:1432024-12-15 15:12:16.328infoKitchen LED and Hood was turned on [physical]
dev:1432024-12-15 15:12:16.221infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:12:14.851infoKitchen LED and Hood was turned off [physical]
dev:1432024-12-15 15:12:14.751infoKitchen LED and Hood is on [digital]
dev:1432024-12-15 15:12:13.271infoKitchen LED and Hood was turned on [physical]
dev:1432024-12-15 15:12:13.156infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:12:11.743infoKitchen LED and Hood was turned off [physical]
dev:1432024-12-15 15:12:11.647infoKitchen LED and Hood is on [digital]
dev:1432024-12-15 15:12:10.035infoKitchen LED and Hood is on [physical]
dev:1432024-12-15 15:12:09.943infoKitchen LED and Hood was turned on [digital]
dev:1432024-12-15 15:11:20.292infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:11:18.286infoKitchen LED and Hood was turned off [digital]
dev:1432024-12-15 15:11:16.070infoKitchen LED and Hood is on [digital]
dev:1432024-12-15 15:11:13.893infoKitchen LED and Hood was turned on [digital]
dev:1432024-12-15 15:11:10.752infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:11:09.345infoKitchen LED and Hood was turned off [digital]
dev:1432024-12-15 15:11:08.059infoKitchen LED and Hood is on [digital]
dev:1432024-12-15 15:10:35.247infoKitchen LED and Hood was turned on [digital]
dev:1432024-12-15 15:10:08.483infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:10:08.273infoKitchen LED and Hood was turned off [digital]
dev:1432024-12-15 15:10:06.729infoKitchen LED and Hood is on [digital]
dev:1432024-12-15 15:10:06.554infoKitchen LED and Hood was turned on [digital]
dev:1432024-12-15 15:10:04.928infoKitchen LED and Hood is off [digital]
dev:1432024-12-15 15:10:04.704infoKitchen LED and Hood was turned off [digital]
dev:1432024-12-15 15:10:03.133infoKitchen LED and Hood was turned on [digital]
dev:1432024-12-15 15:09:30.215infoKitchen LED and Hood was turned off [digital]
dev:1432024-12-15 15:09:23.538infoKitchen LED and Hood was turned on [digital]
dev:1432024-12-15 13:05:07.212inforeporting configuration for Power Configuration (cluster 0x0001), attribute 0x0020 failed, unsupported attribute
dev:1432024-12-15 13:05:05.614inforeporting configuration for Temperature Measurement (cluster 0x0402), attribute 0x0000 failed, unsupported attribute
dev:1432024-12-15 13:05:04.724warndescription logging is: true
dev:1432024-12-15 13:05:04.724warndebug logging is: false
dev:1432024-12-15 13:05:04.723infoupdated...
dev:1432024-12-15 13:03:52.939warndescription logging is: true
dev:1432024-12-15 13:03:52.939warndebug logging is: false
dev:1432024-12-15 13:03:52.938infoupdated...
dev:1432024-12-15 13:03:01.849errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: sonoffZigbeeButton.clearInfoEvent() is applicable for argument types: () values: (method clearInfoEvent)
dev:1432024-12-15 13:02:34.311errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: sonoffZigbeeButton.off() is applicable for argument types: () values:
Possible solutions: run(), run(), any(), hold(java.lang.Object), is(java.lang.Object), use([Ljava.lang.Object;) (method off)
dev:1432024-12-15 13:02:34.311errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: sonoffZigbeeButton.off() is applicable for argument types: () values:
Possible solutions: run(), run(), any(), hold(java.lang.Object), is(java.lang.Object), use([Ljava.lang.Object;) (method off)
dev:1432024-12-15 13:02:34.307errororg.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: sonoffZigbeeButton.on() is applicable for argument types: () values:
Possible solutions: run(), run(), any(), is(java.lang.Object), any(groovy.lang.Closure), run(java.io.File, [Ljava.lang.String;) (method on)
dev:1432024-12-15 13:00:55.719errorjava.lang.NullPointerException: Cannot set property 'isDigital' on null object on line 3475 (method off)
dev:1432024-12-15 13:00:55.211errorjava.lang.NullPointerException: Cannot set property 'isDigital' on null object on line 3509 (method on)
dev:1432024-12-15 13:00:54.695errorjava.lang.NullPointerException: Cannot set property 'isDigital' on null object on line 3475 (method off)
dev:1432024-12-15 13:00:54.114errorjava.lang.NullPointerException: Cannot set property 'isDigital' on null object on line 3509 (method on)
dev:1432024-12-15 13:00:53.289errorjava.lang.NullPointerException: Cannot set property 'isDigital' on null object on line 3475 (method off)
dev:1432024-12-15 13:00:51.810errorjava.lang.NullPointerException: Cannot set property 'isDigital' on null object on line 3509 (method on)
dev:1432024-12-15 12:59:37.699infoZigbee parsed:[raw:catchall: 0000 0006 00 00 0040 00 03EE 00 00 0000 00 00 07FDFF040101190000, profileId:0000, clusterId:0006, clusterInt:6, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:03EE, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[07, FD, FF, 04, 01, 01, 19, 00, 00]]
dev:1432024-12-15 12:59:24.034infofingerprint profileId:"0104", endpointId:"01", inClusters:"0000,0003,0004,0006,0B05,FC57,FC11", outClusters:"0003,0006,0019", model:"ZBMINIR2", manufacturer:"SONOFF", controllerType: "ZGB"
dev:1432024-12-15 12:59:23.944traceZCL version:03
dev:1432024-12-15 12:59:23.943traceSoftware Build Id:1.0.2
dev:1432024-12-15 12:59:23.942traceModel:ZBMINIR2
dev:1432024-12-15 12:59:23.942traceManufacturer:SONOFF
dev:1432024-12-15 12:59:23.839debuggetting info for unknown Zigbee device...
dev:1432024-12-15 12:59:22.934infoZigbee parsed:[raw:catchall: 0000 0006 00 00 0040 00 03EE 00 00 0000 00 00 0600000401000157FC, profileId:0000, clusterId:0006, clusterInt:6, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:03EE, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[06, 00, 00, 04, 01, 00, 01, 57, FC]]
dev:1432024-12-15 12:59:18.910infoZigbee parsed:[raw:catchall: 0000 0006 00 00 0040 00 03EE 00 00 0000 00 00 0400000401000157FC, profileId:0000, clusterId:0006, clusterInt:6, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:03EE, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[04, 00, 00, 04, 01, 00, 01, 57, FC]]
dev:1432024-12-15 12:59:18.870infoZigbee parsed:[raw:catchall: 0000 0005 00 00 0040 00 03EE 00 00 0000 00 00 030000, profileId:0000, clusterId:0005, clusterInt:5, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:03EE, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[03, 00, 00]]
dev:1432024-12-15 12:59:17.053infoZigbee parsed:[raw:catchall: 0000 0006 00 00 0040 00 03EE 00 00 0000 00 00 0200000401000157FC, profileId:0000, clusterId:0006, clusterInt:6, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:03EE, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[02, 00, 00, 04, 01, 00, 01, 57, FC]]
dev:1432024-12-15 12:59:13.853infoZigbee parsed:[raw:catchall: 0000 0013 00 00 0040 00 03EE 00 00 0000 00 00 81EE03A82F49FEFF9CC5708E, profileId:0000, clusterId:0013, clusterInt:19, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:03EE, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[81, EE, 03, A8, 2F, 49, FE, FF, 9C, C5, 70, 8E]]
dev:1432024-12-15 12:59:13.827debuggetting device info in 10 seconds...
dev:1432024-12-15 12:58:54.718infofingerprint profileId:"0104", endpointId:"01", inClusters:"0000,0003,0004,0006,0B05,FC57,FC11", outClusters:"0003,0006,0019", model:"ZBMINIR2", manufacturer:"SONOFF", controllerType: "ZGB"
dev:1432024-12-15 12:58:54.648traceZCL version:03
dev:1432024-12-15 12:58:54.647traceSoftware Build Id:1.0.2
dev:1432024-12-15 12:58:54.646traceModel:ZBMINIR2
dev:1432024-12-15 12:58:54.645traceManufacturer:SONOFF
dev:1432024-12-15 12:58:54.565debuggetting info for unknown Zigbee device...
dev:1432024-12-15 12:58:53.676infoZigbee parsed:[raw:catchall: 0000 0006 00 00 0040 00 2B74 00 00 0000 00 00 0600000401000157FC, profileId:0000, clusterId:0006, clusterInt:6, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:2B74, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[06, 00, 00, 04, 01, 00, 01, 57, FC]]
dev:1432024-12-15 12:58:51.153infoZigbee parsed:[raw:catchall: 0000 0006 00 00 0040 00 2B74 00 00 0000 00 00 0500000401000157FC, profileId:0000, clusterId:0006, clusterInt:6, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:2B74, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[05, 00, 00, 04, 01, 00, 01, 57, FC]]
dev:1432024-12-15 12:58:49.893infoZigbee parsed:[raw:catchall: 0000 0005 00 00 0040 00 2B74 00 00 0000 00 00 030000, profileId:0000, clusterId:0005, clusterInt:5, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:2B74, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[03, 00, 00]]
dev:1432024-12-15 12:58:46.998infoZigbee parsed:[raw:catchall: 0000 0006 00 00 0040 00 2B74 00 00 0000 00 00 0200000401000157FC, profileId:0000, clusterId:0006, clusterInt:6, sourceEndpoint:00, destinationEndpoint:00, options:0040, messageType:00, dni:2B74, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:00, direction:00, data:[02, 00, 00, 04, 01, 00, 01, 57, FC]]
dev:1432024-12-15 12:58:44.555debuggetting device info in 10 seconds...
Enable the 'Advanced Options' and click 'Save'.
Then, from the 'Device Profile' dropdown list select 'Sonoff ZBMini L2 Switch'. Although your device is a newer model, I suppose this profile will work for it as well :
Will the switch on/off status be updated automatically now?
I did it. So it generally works but I could observe that devices are not sending feedback to system after switched by physical switch (btw on R you can setup many types of switches, really nice).
However after certain time it started to work and now it send's feedbacks to the system. I will observe.
Can someone please move the messages realted to Sonoff ZBMINIR2 from the last 3 hours to a new thread?
Done!
That's very interesting.
Here's some info for those that are curious.
SONOFF ZBMINI Extreme Zigbee Smart Switch (Neutral Wire Required)
I'm trying to figure out problem with ZBMINIr2 and refreshing status in hubitat after phisical button pressed.
I have some modules that works great and some (the same model/batch/firmware) that don't.
Maybe someone could help/have idea.
Thi is log from good one.
Summary
dev:1782025-01-27 14:20:31.051
info
Gate light Gate light is off [physical]
dev:1782025-01-27 14:20:31.033
debug
Gate light switch state changed from on to off
dev:1782025-01-27 14:20:31.031
debug
Gate light parse: descMap = [raw:5AAC0100060800001000, dni:5AAC, endpoint:01, cluster:0006, size:08, attrId:0000, encoding:10, command:0A, value:00, clusterInt:6, attrInt:0] description=read attr - raw: 5AAC0100060800001000, dni: 5AAC, endpoint: 01, cluster: 0006, size: 08, attrId: 0000, encoding: 10, command: 0A, value: 00
dev:1782025-01-27 14:20:29.851
info
Gate light Gate light is on [physical]
dev:1782025-01-27 14:20:29.835
debug
Gate light switch state changed from off to on
dev:1782025-01-27 14:20:29.833
debug
Gate light parse: descMap = [raw:5AAC0100060800001001, dni:5AAC, endpoint:01, cluster:0006, size:08, attrId:0000, encoding:10, command:0A, value:01, clusterInt:6, attrInt:0] description=read attr - raw: 5AAC0100060800001001, dni: 5AAC, endpoint: 01, cluster: 0006, size: 08, attrId: 0000, encoding: 10, command: 0A, value: 01
dev:1782025-01-27 14:20:28.705
info
Gate light Gate light is off [physical]
dev:1782025-01-27 14:20:28.690
debug
Gate light switch state changed from on to off
dev:1782025-01-27 14:20:28.687
debug
Gate light parse: descMap = [raw:5AAC0100060800001000, dni:5AAC, endpoint:01, cluster:0006, size:08, attrId:0000, encoding:10, command:0A, value:00, clusterInt:6, attrInt:0] description=read attr - raw: 5AAC0100060800001000, dni: 5AAC, endpoint: 01, cluster: 0006, size: 08, attrId: 0000, encoding: 10, command: 0A, value: 00
dev:1782025-01-27 14:20:27.399
info
Gate light Gate light is on [physical]
dev:1782025-01-27 14:20:27.383
debug
Gate light switch state changed from off to on
dev:1782025-01-27 14:20:27.380
debug
Gate light parse: descMap = [raw:5AAC0100060800001001, dni:5AAC, endpoint:01, cluster:0006, size:08, attrId:0000, encoding:10, command:0A, value:01, clusterInt:6, attrInt:0] description=read attr - raw: 5AAC0100060800001001, dni: 5AAC, endpoint: 01, cluster: 0006, size: 08, attrId: 0000, encoding: 10, command: 0A, value: 01
dev:1782025-01-27 14:20:26.094
info
Gate light Gate light is off [physical]
dev:1782025-01-27 14:20:26.077
debug
Gate light switch state changed from on to off
dev:1782025-01-27 14:20:26.075
debug
Gate light parse: descMap = [raw:5AAC0100060800001000, dni:5AAC, endpoint:01, cluster:0006, size:08, attrId:0000, encoding:10, command:0A, value:00, clusterInt:6, attrInt:0] description=read attr - raw: 5AAC0100060800001000, dni: 5AAC, endpoint: 01, cluster: 0006, size: 08, attrId: 0000, encoding: 10, command: 0A, value: 00
dev:1782025-01-27 14:20:10.622
info
Gate light Gate light is on [physical]
dev:1782025-01-27 14:20:10.605
debug
Gate light switch state changed from off to on
dev:1782025-01-27 14:20:10.602
debug
Gate light parse: descMap = [raw:5AAC0100060800001001, dni:5AAC, endpoint:01, cluster:0006, size:08, attrId:0000, encoding:10, command:0A, value:01, clusterInt:6, attrInt:0] description=read attr - raw: 5AAC0100060800001001, dni: 5AAC, endpoint: 01, cluster: 0006, size: 08, attrId: 0000, encoding: 10, command: 0A, value: 01
dev:1782025-01-27 14:19:37.670
debug
Gate light clearing the Status event
dev:1782025-01-27 14:18:39.864
info
Gate light powerOnBehavior is Turn power Off (raw:0) [refresh]
dev:1782025-01-27 14:18:39.862
debug
Gate light powerOnBehavior is Turn power Off (raw:0) [refresh] (no change)
dev:1782025-01-27 14:18:39.861
debug
Gate light processFoundItem: no change: preference 'powerOnBehavior' existingPrefValue 0 equals scaled value 0 (clusterAttribute raw value 0)
dev:1782025-01-27 14:18:39.858
debug
Gate light parse: descMap = [raw:5AAC0100060A03403000, dni:5AAC, endpoint:01, cluster:0006, size:0A, attrId:4003, encoding:30, command:01, value:00, clusterInt:6, attrInt:16387] description=read attr - raw: 5AAC0100060A03403000, dni: 5AAC, endpoint: 01, cluster: 0006, size: 0A, attrId: 4003, encoding: 30, command: 01, value: 00
And this is log from bad one:
Summary
dev:1802025-01-27 14:19:28.653
debug
Light Section 1 clearing the Status event
dev:1802025-01-27 14:18:30.856
info
Light Section 1 powerOnBehavior is Turn power Off (raw:0) [refresh]
dev:1802025-01-27 14:18:30.855
debug
Light Section 1 powerOnBehavior is Turn power Off (raw:0) [refresh] (no change)
dev:1802025-01-27 14:18:30.853
debug
Light Section 1 processFoundItem: no change: preference 'powerOnBehavior' existingPrefValue 0 equals scaled value 0 (clusterAttribute raw value 0)
dev:1802025-01-27 14:18:30.850
debug
Light Section 1 parse: descMap = [raw:A3BF0100060A03403000, dni:A3BF, endpoint:01, cluster:0006, size:0A, attrId:4003, encoding:30, command:01, value:00, clusterInt:6, attrInt:16387] description=read attr - raw: A3BF0100060A03403000, dni: A3BF, endpoint: 01, cluster: 0006, size: 0A, attrId: 4003, encoding: 30, command: 01, value: 00
dev:1802025-01-27 14:18:30.767
info
Light Section 1 Light Section 1 is off [Refresh]
dev:1802025-01-27 14:18:30.753
debug
Light Section 1 parse: descMap = [raw:A3BF0100060A00001000, dni:A3BF, endpoint:01, cluster:0006, size:0A, attrId:0000, encoding:10, command:01, value:00, clusterInt:6, attrInt:0] description=read attr - raw: A3BF0100060A00001000, dni: A3BF, endpoint: 01, cluster: 0006, size: 0A, attrId: 0000, encoding: 10, command: 01, value: 00
dev:1802025-01-27 14:18:30.698
debug
Light Section 1 sendZigbeeCommands: sent cmd=[he raw 0xA3BF 1 0x01 0x0006 {10 00 00 00 00}, delay 100, he raw 0xA3BF 1 0x01 0x0006 {10 00 00 03 40}, delay 100]
dev:1802025-01-27 14:18:30.673
debug
Light Section 1 refresh() cmds=[he raw 0xA3BF 1 0x01 0x0006 {10 00 00 00 00}, delay 100, he raw 0xA3BF 1 0x01 0x0006 {10 00 00 03 40}, delay 100]
dev:1802025-01-27 14:18:30.672
debug
Light Section 1 customRefresh() : [he raw 0xA3BF 1 0x01 0x0006 {10 00 00 00 00}, delay 100, he raw 0xA3BF 1 0x01 0x0006 {10 00 00 03 40}, delay 100]
dev:1802025-01-27 14:18:30.668
debug
Light Section 1 refreshFromDeviceProfileList()
dev:1802025-01-27 14:18:30.666
debug
Light Section 1 onOffRefresh()
dev:1802025-01-27 14:18:30.664
debug
Light Section 1 refresh()... DEVICE_TYPE is Switch model=ZBMINIR2 manufacturer=SONOFF
dev:1802025-01-27 14:18:28.726
debug
Light Section 1 zigbee response write ON_OFF_CLUSTER attribute response: Success
dev:1802025-01-27 14:18:28.723
debug
Light Section 1 parse: descMap = [raw:catchall: 0104 0006 01 01 0040 00 A3BF 00 00 0000 04 01 00, profileId:0104, clusterId:0006, clusterInt:6, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:A3BF, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:04, direction:01, data:[00]] description=catchall: 0104 0006 01 01 0040 00 A3BF 00 00 0000 04 01 00
dev:1802025-01-27 14:18:28.641
info
Light Section 1 updated
dev:1802025-01-27 14:18:28.624
debug
Light Section 1 sendZigbeeCommands: sent cmd=[null]
dev:1802025-01-27 14:18:28.622
warn
Light Section 1 sendZigbeeCommands it: no commands to send! it=null (cmd=[null])
dev:1802025-01-27 14:18:28.621
debug
Light Section 1 sendZigbeeCommands: sent cmd=[he wattr 0xA3BF 0x01 0x0006 0x4003 0x30 {00} {}, delay 200]
dev:1802025-01-27 14:18:28.618
info
Light Section 1 setPar: (3) successfluly executed setPar customSetPowerOnBehavior(0)
dev:1802025-01-27 14:18:28.616
debug
Light Section 1 cluster:attribute 0x0006:0x4003 is read-write, but no data type (dt) is defined! Assuming 0x30
dev:1802025-01-27 14:18:28.577
debug
Light Section 1 setPar: found at=0x0006:0x4003 dt=null mapMfCode=null scaledValue=0 (val=0)
dev:1802025-01-27 14:18:28.575
debug
Light Section 1 setPar(powerOnBehavior, 0)
dev:1802025-01-27 14:18:28.574
debug
Light Section 1 updateAllPreferences: foundMap = [at:0x0006:0x4003, name:powerOnBehavior, type:enum, rw:rw, min:0, max:255, defVal:255, scale:1, map:[0:Turn power Off, 1:Turn power On, 255:Restore previous state], title:Power On Behavior, description:Power On Behavior]
dev:1802025-01-27 14:18:28.572
debug
Light Section 1 updateAllPreferences: preferences=[powerOnBehavior:0x0006:0x4003]
dev:1802025-01-27 14:18:28.571
debug
Light Section 1 current state.deviceProfile=SWITCH_SONOFF_ZBMINIL2, settings.forcedProfile=Sonoff ZBMini L2 Switch, getProfileKey()=SWITCH_SONOFF_ZBMINIL2
dev:1802025-01-27 14:18:28.569
debug
Light Section 1 customUpdated()
dev:1802025-01-27 14:18:28.568
debug
Light Section 1 deviceHealthCheck is scheduled every 240 minutes
dev:1802025-01-27 14:18:28.549
info
scheduling health check every 240 minutes by Periodic polling method
dev:1802025-01-27 14:18:28.518
info
Light Section 1 driver version 3.2.1 2024/06/05 2:46 PM (ZBMINIR2 SONOFF) (C-8 Pro 2.4.0.148)
dev:1802025-01-27 14:18:28.517
info
Light Section 1 updated()...
I was pressing several times physical button ON/OFF.
The bad one is not reporting events:
Gate light Gate light is on [physical]
Gate light switch state changed from off to on
Configuration etc looks the same. I have around 10 modules that works great and around 5 that don't.
FWIW, I’ve seen this issue with these modules on Hubitat and z2m. When it happens, I just reset and re-pair them.
It helps. Thanks.
I have installed 2 ZBMINIR2s about a month ago and I really liked them, specially because they are not chatty like most of the latest Zigbee devices. And as promised, their signal is really much stronger than most (if not all) devices I own!
After 3 weeks of testing I have decided to buy 5 more. Well, they have arrived, and today I installed one of them.
To my surprise, this one is very chatty! It sends messages every minute give or take.
The majority of the messages are ZDO Match Descriptor Request
, but it also sends some ZDO Active Endpoints Request
and ZDO Device announce
.
I've tried reseting/re-pairing it as suggested by @aaiyar, but it didn't help.
@kkossev, do you know of a way to stop or reduce these unwanted messages?
It also would be great if the driver could recognize the device.
I've tried to get the fingerprint using the Zigbee - Generic Device Toolbox
driver, but it says that the fingerprint is incomplete:
INCOMPLETE - DO NOT SUBMIT THIS - TRY AGAIN: fingerprint model:"ZBMINIR2", manufacturer:"SONOFF", profileId:"0104", endpointId:"01", inClusters:"0000,0003,0004,0006,0B05,FC57,FC11", outClusters:"0003,0006,0019", application:"10"
@eduardo try using the SWITCH_SONOFF_ZBMINIL2 deviceProfile in the Tuya driver :
I will try adding a dedicated new profile for the R2 In the next days.
EDIT: Actually, after reading your post, it seems to me that you were already using this driver?
I tried that, but in the end, what worked was having a good night of sleep and checking it again today
Roughly 12 hours after pairing it for the first time, it stopped with the nonsense chattiness and now it is only sending a ZDO Active Endpoints Request
every hour, which is totally acceptable.
The only odd thing now is that of the 3 devices installed, 2 of them are having the behavior above (a message every 1 hour), and the other is even less talkative, it sends a message every 3 or 5 hours, and it is a different one Basic cluster: ZCLVersion = 03
.
Maybe it is because I don't use this one daily, actually it is sitting there, without being turned on or off for more than 3 weeks.
This is a repetitive pattern in other environments as well - probably 12 hours after the first pairing with the Tuya driver, the ZBMINI's will calm down and will stop leaving the network. I have no explanation and idea what happens during this time period..
@kkossev, is it possible to add the "turbo mode" feature to this new profile?
I would add it myself if I had the knowledge/tools, I've tried to find the code that does that on z2m, but I couldn't.
Hi @eduardo ,
I have added a dedicated 'SWITCH_SONOFF_ZBMINIR2' profile in the new 'Tuya Zigbee Switch' driver version '3.3.0' '2025/03/09 10:09 PM' . Update manually : https://raw.githubusercontent.com/kkossev/Hubitat/development/Drivers/Tuya%20Zigbee%20Switch/Tuya_Zigbee_Switch_lib_included.groovy
I don't have the R2 switch, so we may need several itterations until it works as expected.
Click on the Configure button with 'LOAD ALL DEFAULTS' option. This should also configure the device properly.
Please test also the 'Network Indicator' option - does it control the LED ?
Just for a test, enable the 'Advanced Options', only then you should see the 'Detached Relay Mode' option
For a test, set it enabled - what will happen?
I will need the debug logs that follow pressing the physical switch of the R2 in detached mode. The relay should not switch on/off in detached mode, but the device must send some zigbee messages in the debug logs (I expect to be the OnOff cluster 'toggle' command)
I have done that, it selected the correct profile. Before that I've cleared current states and state variables.
Turbo Mode
It didn't work, checked with Zigbee Map and the connection's LQI didn't improve.
I've also got these messages below related to cluster FC11 on the logs, I'm not sure if they are all related to turbo mode.
Logs
2025-03-10 17:57:00.456warnTerrace Top Lights zigbee read private cluster 0xFC11 attribute 0x0014 error: Unsupported Attribute
2025-03-10 17:57:00.454debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 01 1286 01 01 140086, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:true, manufacturerId:1286, command:01, direction:01, data:[14, 00, 86]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 01 1286 01 01 140086
2025-03-10 17:57:00.369warnTerrace Top Lights zigbee read private cluster 0xFC11 attribute 0x0002 error: Unsupported Attribute
2025-03-10 17:57:00.368debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 01 1286 01 01 020086, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:true, manufacturerId:1286, command:01, direction:01, data:[02, 00, 86]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 01 1286 01 01 020086
2025-03-10 17:57:00.298warnTerrace Top Lights zigbee read private cluster 0xFC11 attribute 0x0001 error: Unsupported Attribute
2025-03-10 17:57:00.294debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 01 01 010086, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:01, direction:01, data:[01, 00, 86]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 01 01 010086
2025-03-10 17:57:00.194warnTerrace Top Lights zigbee read private cluster 0xFC11 attribute 0x0012 error: Unsupported Attribute
2025-03-10 17:57:00.193debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 01 1286 01 01 120086, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:true, manufacturerId:1286, command:01, direction:01, data:[12, 00, 86]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 01 1286 01 01 120086
2025-03-10 17:56:58.084warnTerrace Top Lights zigbee response write private cluster 0xFC11 attribute error: Invalid Data Type
2025-03-10 17:56:58.080debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 8D1700, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:04, direction:01, data:[8D, 17, 00]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 8D1700
2025-03-10 17:56:58.039warnTerrace Top Lights zigbee response write private cluster 0xFC11 attribute error: Unsupported Attribute
2025-03-10 17:56:58.036debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 860100, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:04, direction:01, data:[86, 01, 00]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 860100
2025-03-10 17:56:57.977warnTerrace Top Lights zigbee response write private cluster 0xFC11 attribute error: Unsupported Attribute
2025-03-10 17:56:57.975debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 01 1286 04 01 861200, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:true, manufacturerId:1286, command:04, direction:01, data:[86, 12, 00]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 01 1286 04 01 861200
2025-03-10 17:56:58.084warnTerrace Top Lights zigbee response write private cluster 0xFC11 attribute error: Invalid Data Type
2025-03-10 17:56:58.080debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 8D1700, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:04, direction:01, data:[8D, 17, 00]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 8D1700
2025-03-10 17:56:58.039warnTerrace Top Lights zigbee response write private cluster 0xFC11 attribute error: Unsupported Attribute
2025-03-10 17:56:58.036debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 860100, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:04, direction:01, data:[86, 01, 00]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 860100
2025-03-10 17:56:57.977warnTerrace Top Lights zigbee response write private cluster 0xFC11 attribute error: Unsupported Attribute
2025-03-10 17:56:57.975debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 01 1286 04 01 861200, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:true, manufacturerId:1286, command:04, direction:01, data:[86, 12, 00]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 01 1286 04 01 861200
Detached Relay Mode
I couldn't turn on this mode, after enabling and saving, if I refresh the page, it is back to disabled.
Logs
2025-03-10 18:40:46.341infoTerrace Top Lights updating the preference 'detachRelayMode' from 1 to 0 (scaledPreferenceValue=0, type=enum)
2025-03-10 18:40:46.339debugTerrace Top Lights processFoundItem: preference 'detachRelayMode' value 1 differs from the new scaled value 0 (clusterAttribute raw value 0)
2025-03-10 18:40:46.337debugTerrace Top Lights compareAndConvertTuyaToHubitatPreferenceValue: preference = 1 type=enum foundItem=detachRelayMode isEqual=false tuyaValueScaled=0 (scale=null) fncmd=0
2025-03-10 18:40:46.334debugTerrace Top Lights parse: descMap = [raw:464B01FC110A17001000, dni:464B, endpoint:01, cluster:FC11, size:0A, attrId:0017, encoding:10, command:01, value:00, clusterInt:64529, attrInt:23] description=read attr - raw: 464B01FC110A17001000, dni: 464B, endpoint: 01, cluster: FC11, size: 0A, attrId: 0017, encoding: 10, command: 01, value: 00
Network Indicator
The LED is on regardless of the value set.
Question: Shouldn't these preferences also show on the device's Current States?
Thank you for the logs!
Yes, the preferences should show up in the Current States in this driver, but only when successfully reported back from the device. In the previous version the parameters data types were wrong, hopefully in this update we will have some progress.
Update again - same 3.3.0 version, but the TimeStamp is '2025/03/09 11:59 PM'
Tested again with the new version.
Turbo mode goes back to disabled after enabling and saving, but it now shows on the Current States.
Detached Relay Mode is on Current States but still pressing the physical button turns on an off. Maybe it works just with a switch connected to S1-S2?!
Network Indicator is not on Current Sates, the LED is always on.
Here are the logs when saving preferences.
Turbo Mode enabled
Detach Mode enabled
Network Indicator disabled
Logs
2025-03-11 08:13:40.245debugTerrace Top Lights clearing the Status event
2025-03-11 08:12:42.961infoTerrace Top Lights detachRelayMode is Enabled (raw:1) [refresh]
2025-03-11 08:12:42.957debugTerrace Top Lights detachRelayMode is Enabled (raw:1) [refresh] (no change)
2025-03-11 08:12:42.955debugTerrace Top Lights processFoundItem: no change: preference 'detachRelayMode' existingPrefValue 1 equals scaled value 1 (clusterAttribute raw value 1)
2025-03-11 08:12:42.952debugTerrace Top Lights parse: descMap = [raw:464B01FC110A17001001, dni:464B, endpoint:01, cluster:FC11, size:0A, attrId:0017, encoding:10, command:01, value:01, clusterInt:64529, attrInt:23] description=read attr - raw: 464B01FC110A17001001, dni: 464B, endpoint: 01, cluster: FC11, size: 0A, attrId: 0017, encoding: 10, command: 01, value: 01
2025-03-11 08:12:42.853infoTerrace Top Lights delayedPowerOnTime is 55 (raw:55) [refresh]
2025-03-11 08:12:42.851debugTerrace Top Lights delayedPowerOnTime is 55 (raw:55) [refresh] (no change)
2025-03-11 08:12:42.850debugTerrace Top Lights parse: descMap = [raw:464B01FC110C1500213700, dni:464B, endpoint:01, cluster:FC11, size:0C, attrId:0015, encoding:21, command:01, value:0037, clusterInt:64529, attrInt:21] description=read attr - raw: 464B01FC110C1500213700, dni: 464B, endpoint: 01, cluster: FC11, size: 0C, attrId: 0015, encoding: 21, command: 01, value: 3700
2025-03-11 08:12:42.752infoTerrace Top Lights delayedPowerOnState is Disabled (raw:0) [refresh]
2025-03-11 08:12:42.750debugTerrace Top Lights delayedPowerOnState is Disabled (raw:0) [refresh] (no change)
2025-03-11 08:12:42.747debugTerrace Top Lights parse: descMap = [raw:464B01FC110A14001000, dni:464B, endpoint:01, cluster:FC11, size:0A, attrId:0014, encoding:10, command:01, value:00, clusterInt:64529, attrInt:20] description=read attr - raw: 464B01FC110A14001000, dni: 464B, endpoint: 01, cluster: FC11, size: 0A, attrId: 0014, encoding: 10, command: 01, value: 00
2025-03-11 08:12:42.653warnTerrace Top Lights zigbee read private cluster 0xFC11 attribute 0x0001 error: Unsupported Attribute
2025-03-11 08:12:42.652debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 01 01 010086, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:01, direction:01, data:[01, 00, 86]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 01 01 010086
2025-03-11 08:12:42.563infoTerrace Top Lights turboMode is Disabled (raw:9) [refresh]
2025-03-11 08:12:42.558infoTerrace Top Lights updating the preference 'turboMode' from 20 to 9 (scaledPreferenceValue=9, type=enum)
2025-03-11 08:12:42.556debugTerrace Top Lights processFoundItem: preference 'turboMode' value 20 differs from the new scaled value 9 (clusterAttribute raw value 9)
2025-03-11 08:12:42.555debugTerrace Top Lights compareAndConvertTuyaToHubitatPreferenceValue: preference = 20 type=enum foundItem=turboMode isEqual=false tuyaValueScaled=9 (scale=null) fncmd=9
2025-03-11 08:12:42.552debugTerrace Top Lights parse: descMap = [raw:464B01FC110C1200290900, dni:464B, endpoint:01, cluster:FC11, size:0C, attrId:0012, encoding:29, command:01, value:0009, clusterInt:64529, attrInt:18] description=read attr - raw: 464B01FC110C1200290900, dni: 464B, endpoint: 01, cluster: FC11, size: 0C, attrId: 0012, encoding: 29, command: 01, value: 0900
2025-03-11 08:12:42.462infoTerrace Top Lights powerOnBehavior is Restore previous state (raw:255) [refresh]
2025-03-11 08:12:42.460debugTerrace Top Lights powerOnBehavior is Restore previous state (raw:255) [refresh] (no change)
2025-03-11 08:12:42.453debugTerrace Top Lights processFoundItem: no change: preference 'powerOnBehavior' existingPrefValue 255 equals scaled value 255 (clusterAttribute raw value 255)
2025-03-11 08:12:42.445debugTerrace Top Lights parse: descMap = [raw:464B0100060A034030FF, dni:464B, endpoint:01, cluster:0006, size:0A, attrId:4003, encoding:30, command:01, value:FF, clusterInt:6, attrInt:16387] description=read attr - raw: 464B0100060A034030FF, dni: 464B, endpoint: 01, cluster: 0006, size: 0A, attrId: 4003, encoding: 30, command: 01, value: FF
2025-03-11 08:12:42.372infoTerrace Top Lights Terrace Top Lights is off [Refresh]
2025-03-11 08:12:42.348debugTerrace Top Lights parse: descMap = [raw:464B0100060A00001000, dni:464B, endpoint:01, cluster:0006, size:0A, attrId:0000, encoding:10, command:01, value:00, clusterInt:6, attrInt:0] description=read attr - raw: 464B0100060A00001000, dni: 464B, endpoint: 01, cluster: 0006, size: 0A, attrId: 0000, encoding: 10, command: 01, value: 00
2025-03-11 08:12:42.288debugTerrace Top Lights sendZigbeeCommands: sent cmd=[he raw 0x464B 1 0x01 0x0006 {10 00 00 00 00}, delay 100, he raw 0x464B 1 0x01 0x0006 {10 00 00 03 40}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 12 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 01 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 14 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 15 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 17 00}, delay 100]
2025-03-11 08:12:42.267debugTerrace Top Lights refresh() cmds=[he raw 0x464B 1 0x01 0x0006 {10 00 00 00 00}, delay 100, he raw 0x464B 1 0x01 0x0006 {10 00 00 03 40}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 12 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 01 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 14 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 15 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 17 00}, delay 100]
2025-03-11 08:12:42.265debugTerrace Top Lights customRefresh() : [he raw 0x464B 1 0x01 0x0006 {10 00 00 00 00}, delay 100, he raw 0x464B 1 0x01 0x0006 {10 00 00 03 40}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 12 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 01 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 14 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 15 00}, delay 100, he raw 0x464B 1 0x01 0xFC11 {10 00 00 17 00}, delay 100]
2025-03-11 08:12:42.224debugTerrace Top Lights refreshFromDeviceProfileList()
2025-03-11 08:12:42.222debugTerrace Top Lights onOffRefresh()
2025-03-11 08:12:42.220debugTerrace Top Lights refresh()... DEVICE_TYPE is Switch model=ZBMINIR2 manufacturer=SONOFF
2025-03-11 08:12:40.428debugTerrace Top Lights zigbee response write private cluster 0xFC11 attribute response: Success
2025-03-11 08:12:40.427debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 00, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:04, direction:01, data:[00]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 00
2025-03-11 08:12:40.366warnTerrace Top Lights zigbee response write private cluster 0xFC11 attribute error: Unsupported Attribute
2025-03-11 08:12:40.364debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 860100, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:04, direction:01, data:[86, 01, 00]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 860100
2025-03-11 08:12:40.333warnTerrace Top Lights zigbee response write private cluster 0xFC11 attribute error: Invalid Data Type
2025-03-11 08:12:40.331debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 8D1200, profileId:0104, clusterId:FC11, clusterInt:64529, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:04, direction:01, data:[8D, 12, 00]] description=catchall: 0104 FC11 01 01 0040 00 464B 00 00 0000 04 01 8D1200
2025-03-11 08:12:40.329debugTerrace Top Lights zigbee response write ON_OFF_CLUSTER attribute response: Success
2025-03-11 08:12:40.321debugTerrace Top Lights parse: descMap = [raw:catchall: 0104 0006 01 01 0040 00 464B 00 00 0000 04 01 00, profileId:0104, clusterId:0006, clusterInt:6, sourceEndpoint:01, destinationEndpoint:01, options:0040, messageType:00, dni:464B, isClusterSpecific:false, isManufacturerSpecific:false, manufacturerId:0000, command:04, direction:01, data:[00]] description=catchall: 0104 0006 01 01 0040 00 464B 00 00 0000 04 01 00
2025-03-11 08:12:40.318infoTerrace Top Lights is now online!
2025-03-11 08:12:40.317infoTerrace Top Lights healthStatus changed to online
2025-03-11 08:12:40.229infoTerrace Top Lights updated
2025-03-11 08:12:40.207debugTerrace Top Lights sendZigbeeCommands: sent cmd=[null]
2025-03-11 08:12:40.206warnTerrace Top Lights sendZigbeeCommands it: no commands to send! it=null (cmd=[null])
2025-03-11 08:12:40.204debugTerrace Top Lights sendZigbeeCommands: sent cmd=[he wattr 0x464B 0x01 0xFC11 0x0017 0x10 {01} {}, delay 50]
2025-03-11 08:12:40.201infoTerrace Top Lights setPar: (3) successfluly executed setPar customSetDetachRelayMode(1)
2025-03-11 08:12:40.200debugTerrace Top Lights setPar: found at=0xFC11:0x0017 dt=0x10 mfgCode=null scaledValue=1 (val=1)
2025-03-11 08:12:40.198debugTerrace Top Lights setPar(detachRelayMode, 1)
2025-03-11 08:12:40.196debugTerrace Top Lights updateAllPreferences: foundMap = [at:0xFC11:0x0017, name:detachRelayMode, type:enum, dt:0x10, advanced:true, rw:rw, defVal:0, map:[0:Disabled, 1:Enabled], title:Detach Relay Mode, description:Enable/Disable detach relay mode]
2025-03-11 08:12:40.194debugTerrace Top Lights sendZigbeeCommands: sent cmd=[he wattr 0x464B 0x01 0xFC11 0x0001 0x10 {00} {}, delay 50]
2025-03-11 08:12:40.191infoTerrace Top Lights setPar: (3) successfluly executed setPar customSetNetworkIndicator(0)
2025-03-11 08:12:40.189debugTerrace Top Lights setPar: found at=0xFC11:0x0001 dt=0x10 mfgCode=null scaledValue=0 (val=0)
2025-03-11 08:12:40.187debugTerrace Top Lights setPar(networkIndicator, 0)
2025-03-11 08:12:40.186debugTerrace Top Lights updateAllPreferences: foundMap = [at:0xFC11:0x0001, name:networkIndicator, type:enum, dt:0x10, rw:rw, defVal:0, map:[0:Disabled, 1:Enabled], title:Network Indicator., description:Enable/disable network indicator.]
2025-03-11 08:12:40.184debugTerrace Top Lights sendZigbeeCommands: sent cmd=[he wattr 0x464B 0x01 0xFC11 0x0012 0x21 {0014} {}, delay 50]
2025-03-11 08:12:40.182infoTerrace Top Lights setPar: (3) successfluly executed setPar customSetTurboMode(20)
2025-03-11 08:12:40.180debugTerrace Top Lights setPar: found at=0xFC11:0x0012 dt=0x21 mfgCode=null scaledValue=20 (val=20)
2025-03-11 08:12:40.177debugTerrace Top Lights setPar(turboMode, 20)
2025-03-11 08:12:40.176debugTerrace Top Lights updateAllPreferences: foundMap = [at:0xFC11:0x0012, name:turboMode, type:enum, dt:0x21, rw:rw, min:9, max:20, defVal:9, map:[9:Disabled, 20:Enabled], title:Zigbee Radio Power Turbo Mode., description:Enable/disable Zigbee radio power Turbo mode.]
2025-03-11 08:12:40.173debugTerrace Top Lights sendZigbeeCommands: sent cmd=[he wattr 0x464B 0x01 0x0006 0x4003 0x30 {FF} {}, delay 50]
2025-03-11 08:12:40.170infoTerrace Top Lights setPar: (3) successfluly executed setPar customSetPowerOnBehavior(255)
2025-03-11 08:12:40.168debugTerrace Top Lights cluster:attribute 0x0006:0x4003 is read-write, but no data type (dt) is defined! Assuming 0x30
2025-03-11 08:12:40.160debugTerrace Top Lights setPar: found at=0x0006:0x4003 dt=null mfgCode=null scaledValue=255 (val=255)
2025-03-11 08:12:40.158debugTerrace Top Lights setPar(powerOnBehavior, 255)
2025-03-11 08:12:40.156debugTerrace Top Lights updateAllPreferences: foundMap = [at:0x0006:0x4003, name:powerOnBehavior, type:enum, rw:rw, min:0, max:255, defVal:255, map:[0:Turn power Off, 1:Turn power On, 255:Restore previous state], title:Power On Behavior, description:Power On Behavior]
2025-03-11 08:12:40.152debugTerrace Top Lights updateAllPreferences: preferences=[powerOnBehavior:0x0006:0x4003, turboMode:0xFC11:0x0012, networkIndicator:0xFC11:0x0001, detachRelayMode:0xFC11:0x0017]
2025-03-11 08:12:40.151debugTerrace Top Lights current state.deviceProfile=SWITCH_SONOFF_ZBMINIR2, settings.forcedProfile=Sonoff ZBMINI R2 Switch, getProfileKey()=SWITCH_SONOFF_ZBMINIR2
2025-03-11 08:12:40.147debugTerrace Top Lights customUpdated()
2025-03-11 08:12:40.145infoHealth Check is disabled!
2025-03-11 08:12:40.144warnTerrace Top Lights device health check is disabled!
2025-03-11 08:12:40.103infoTerrace Top Lights driver version 3.3.0 2025/03/09 11:59 PM (ZBMINIR2 SONOFF) (C-8 Pro 2.4.0.151)
2025-03-11 08:12:40.100infoTerrace Top Lights updated()...