Sonoff ZBDIM transition time not working
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 15.7k
- Forks
- 2k
- Avg merge
- 18h 55m
- Merged PRs (30d)
- 35
Description
What happened?
I bought 2 dimmers, replacing my wifi moes 2-ch dimmer because I needed support for custom transition times for my automations. I set the Dimmer transition time from the exposed features and that one is working, but when I set a custom transition time, both from an mqtt payload, a zigbee command from the dev console or from the light.turn_on on home assistant from the tools menu, that custom value is not used and the Dimmer transition time is the only one that matters
What did you expect to happen?
The dimmer should respect custom transition times set in the commands
How to reproduce it (minimal and precise)
Set Dimmer transition time to 0, then send any turn on/move to level command from any platform with a dedicated transition time set
Zigbee2MQTT version
2.14.1
Adapter firmware version
8.0.2 [GA]
Adapter
Sonoff Dongle Plus MG24
Setup
Plain on docker container, both home assistant and zigbee2mqtt, running on a x86-64 linux nas.
Linux UGREEN-NAS 6.18.15 #696c5cd7dce5 SMP PREEMPT_DYNAMIC Thu Aug 20 10:59:55 UTC 2026 x86_64 GNU/Linux
UGOSPRO Linux
Device database.db entry
{"id":19,"type":"Router","ieeeAddr":"0x60b763fffe13a478","nwkAddr":14432,"manufId":4742,"manufName":"SONOFF","powerSource":"Mains (single phase)","modelId":"MINI-ZBDIM","epList":[1,242],"endpoints":{"1":{"profId":260,"epId":1,"devId":257,"inClusterList":[0,3,4,5,6,8,2820,2821,64599,64529],"outClusterList":[25],"clusters":{"64529":{"attributes":{"1":1,"16":84017152,"17":"\u0004\u0005\u0005\u0010\u0001\u0001\u0002","20":0,"21":99,"22":3,"30":0,"31":20,"32":0,"16385":2,"16386":255,"16387":4,"16388":0,"16389":0,"28676":270,"28677":223390,"28678":55830}},"genOnOff":{"attributes":{"onOff":0,"startUpOnOff":255}},"genLevelCtrl":{"attributes":{"currentLevel":0}},"haElectricalMeasurement":{"attributes":{"rmsVoltage":0,"rmsCurrent":0,"activePower":0}},"genBasic":{"attributes":{"modelId":"MINI-ZBDIM","manufacturerName":"SONOFF","powerSource":1,"zclVersion":8,"appVersion":0,"stackVersion":0,"hwVersion":0,"dateCode":"20251205","swBuildId":"1.0.5"}},"customClusterEwelink":{"attributes":{"17":"\u0004\u0005\u0005\u0010\u0001\u0001\u0002","33":0,"16388":0,"16389":0,"externalTriggerMode":1,"calibrationStatus":3,"minBrightnessThreshold":64,"maxBrightnessThreshold":179,"dimmingLightRate":3,"levelForCalibration":0,"acCurrentCurrentValue":0,"acCurrentVoltageValue":220290,"acCurrentPowerValue":80,"delayedPowerOnState":0,"delayedPowerOnTime":99,"calibrationProgress":100,"transitionTime":20,"setCalibrationAction":"\u0001\u0001\u0001","networkLed":1,"faultCode":84017152}}},"binds":[{"cluster":6,"type":"endpoint","deviceIeeeAddress":"0x348d13fffe1160b0","endpointID":1},{"cluster":8,"type":"endpoint","deviceIeeeAddress":"0x348d13fffe1160b0","endpointID":1},{"cluster":64529,"type":"endpoint","deviceIeeeAddress":"0x348d13fffe1160b0","endpointID":1}],"configuredReportings":[{"cluster":6,"attrId":0,"minRepIntval":0,"maxRepIntval":65000,"repChange":1},{"cluster":8,"attrId":0,"minRepIntval":5,"maxRepIntval":65000,"repChange":1},{"cluster":64529,"attrId":28678,"minRepIntval":10,"maxRepIntval":65000,"repChange":0}],"meta":{}},"242":{"profId":41440,"epId":242,"devId":97,"inClusterList":[],"outClusterList":[33],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":0,"stackVersion":0,"hwVersion":0,"dateCode":"20251205","swBuildId":"1.0.5","zclVersion":8,"interviewCompleted":true,"interviewState":"SUCCESSFUL","meta":{"configured":"0.0.0"},"lastSeen":1789236734170}
{"id":20,"type":"Router","ieeeAddr":"0x6ca042fffe158d21","nwkAddr":53499,"manufId":4742,"manufName":"SONOFF","powerSource":"Mains (single phase)","modelId":"MINI-ZBDIM","epList":[1,242],"endpoints":{"1":{"profId":260,"epId":1,"devId":257,"inClusterList":[0,3,4,5,6,8,2820,2821,64599,64529],"outClusterList":[25],"clusters":{"64529":{"attributes":{"1":1,"16":84017152,"17":"\u0004\u0005\u0005\u0010\u0001\u0001\u0002","20":0,"21":38,"22":3,"30":0,"31":20,"32":0,"16385":2,"16386":255,"16387":4,"16388":0,"16389":0,"28676":90,"28677":222470,"28678":18550}},"genOnOff":{"attributes":{"onOff":1,"startUpOnOff":255}},"genLevelCtrl":{"attributes":{"currentLevel":254}},"haElectricalMeasurement":{"attributes":{"rmsVoltage":0,"rmsCurrent":0,"activePower":0}},"genBasic":{"attributes":{"modelId":"MINI-ZBDIM","manufacturerName":"SONOFF","powerSource":1,"zclVersion":8,"appVersion":0,"stackVersion":0,"hwVersion":0,"dateCode":"20251205","swBuildId":"1.0.5"}},"customClusterEwelink":{"attributes":{"17":"\u0004\u0005\u0005\u0010\u0001\u0001\u0002","33":0,"16388":0,"16389":0,"externalTriggerMode":1,"calibrationStatus":3,"minBrightnessThreshold":64,"maxBrightnessThreshold":179,"dimmingLightRate":3,"levelForCalibration":0,"acCurrentCurrentValue":90,"acCurrentVoltageValue":221900,"acCurrentPowerValue":18430,"delayedPowerOnState":0,"delayedPowerOnTime":38,"calibrationProgress":100,"transitionTime":20,"setCalibrationAction":"\u0001\u0001\u0001","networkLed":1,"faultCode":84017152}}},"binds":[{"cluster":6,"type":"endpoint","deviceIeeeAddress":"0x348d13fffe1160b0","endpointID":1},{"cluster":8,"type":"endpoint","deviceIeeeAddress":"0x348d13fffe1160b0","endpointID":1},{"cluster":64529,"type":"endpoint","deviceIeeeAddress":"0x348d13fffe1160b0","endpointID":1}],"configuredReportings":[{"cluster":6,"attrId":0,"minRepIntval":0,"maxRepIntval":65000,"repChange":1},{"cluster":8,"attrId":0,"minRepIntval":5,"maxRepIntval":65000,"repChange":1},{"cluster":64529,"attrId":28678,"minRepIntval":10,"maxRepIntval":65000,"repChange":0}],"meta":{}},"242":{"profId":41440,"epId":242,"devId":97,"inClusterList":[],"outClusterList":[33],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":0,"stackVersion":0,"hwVersion":0,"dateCode":"20251205","swBuildId":"1.0.5","zclVersion":8,"interviewCompleted":true,"interviewState":"SUCCESSFUL","meta":{"configured":"0.0.0"},"lastSeen":1789236734004}
Debug log
No response
Notes
If I try to read the onOffTransitionTime from the device, it reports that it is not supported:
[12/09/2026, 20:04:37] z2m: Publish 'set' 'read' to 'Dimmer Scale' failed: 'Error: ZCL command 0x6ca042fffe158d21/1 genLevelCtrl.read(["onOffTransitionTime"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"reservedBits":0,"writeUndiv":false}) failed (Status 'UNSUPPORTED_ATTRIBUTE')'
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No source file or test is named in the issue. Reproduce with a SONOFF MINI-ZBDIM by setting Dimmer transition time to 0, then sending a level or turn-on command with a dedicated transition time; done means the command-specific transition is respected instead of the device setting.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- embedded-iot
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 58/100