Koenkk / Koenkk/zigbee2mqtt

[Feature request]: SONOFF MINI-ZB2GS — add genGroups (and genScenes) to endpoint 2 so the second gang can join Zigbee groups/scenes

Open
#32,534 8 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
15.7k
Forks
2k
Avg merge
18h 55m
Merged PRs (30d)
35

Description

Is your feature request related to a problem? Please describe

Yeah. I've got several SONOFF MINI-ZB2GS 2-gang switches (with neutral) and I want to add both gangs to Zigbee groups so I can control lights that are spread across a few of these switches with one group command. Trouble is, only the first gang works. Endpoint 1 (L1) joins a group fine, but endpoint 2 (L2) always fails with genGroups.add(...) failed (Status 'UNSUPPORTED_CLUSTER').

When I looked at the device's clusters the reason was pretty obvious: endpoint 1 exposes genGroups and genScenes, but endpoint 2 doesn't have them at all. Its input clusters are just genBasic, genIdentify, genOnOff and the eWeLink custom cluster. So there's literally no Groups cluster on the second gang for the add-to-group command to land on.

Describe the solution you'd like

Add the genGroups (0x0004) and ideally genScenes (0x0005) input clusters to endpoint 2 (and the extra gangs on the 3-gang / ZBM5 models) in a firmware/OTA update, so every channel can be added to groups and scenes the same way endpoint 1 already can. Endpoint 1 already does it, so the hardware clearly supports it, it just needs mirroring onto the other endpoints.

Describe alternatives you've considered

For now I'm working around it with a Home Assistant group that includes the L2 light alongside the others. It works, but it's controller-side orchestration instead of a real Zigbee group, so you lose the single-broadcast speed and reliability, and it only works while HA is running. Binding isn't really a substitute either for what I'm trying to do (grouping a bunch of these across the mesh).

Additional context

I know there are older threads about SONOFF devices not joining groups, but those are all the ZBMINIL2, where the answer was basically "it's a single-fire/no-neutral device that sleeps to save power, so it doesn't support groups." That reasoning doesn't apply here. The MINI-ZB2GS is a mains-powered, always-on router with neutral, and it already runs genGroups on endpoint 1, so there's no sleep or energy excuse for leaving it off endpoint 2. It really looks like an oversight on the second gang rather than a deliberate limitation.

For reference, the input clusters as reported:
Endpoint 1: genBasic, genIdentify, genGroups, genScenes, genOnOff, haDiagnostic, manuSpecificAmazonWWAH, customClusterEwelink
Endpoint 2: genBasic, genIdentify, genOnOff, customClusterEwelink

Would be great to get this fixed in firmware. It'd make the multi-gang switches a lot more useful for anyone doing Zigbee-native grouping.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No repository file, test, or entry point is mentioned; first determine whether zigbee2mqtt can change the SONOFF MINI-ZB2GS firmware or OTA behavior. Done would require the device's firmware to expose genGroups and genScenes on endpoint 2 and the extra model endpoints, rather than a change identified in this repository.

Written by the indexing model from the issue text.

Assessment

Domain
embedded-iot
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.