This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Z-Stack Lighting - Free Group ID Ranges not according to specification?

Other Parts Discussed in Thread: Z-STACK

Hi,


It looks like the implementation of SampleRemote is not according to the zigbee specification. Specifically, the #define SAMPLEREMOTE_NUM_GRPS 0. That doesn't seem correct, as clearly the remote is capable of controlling MAX_LINKED_GROUPS 3 groups.

Then there is zllSampleRemote_InitLinkedTargets which just assigns a random group to arr[0], and zllSampleRemote_HandleKeys which has hard-coded support for GID 1, 2 and 3.

So nothing is done with free gid ranges that (according to spec) another initiator (controller) is supposed to give to it. When receiving GET_GID_RSP, the controlledGroups array is filled with those, but those indices are never used (except index 0). So what is the use?

Maybe because this is a sample application, I need to implement this to make it according to specification?

Can you clear this up?

Best regards,

Sjef.

  • Sjef,

        Although the group range assignment is implemented, using it to add devices to groups is not mandated. As far as I know there is nothing in the spec that says a device can not use groups out side of it's assigned range. Some members of the working group thought it was too strict to enforce this mechanism as it would make some valid use cases harder to achieve. For instance, it is handy if there is a global group which all lights are added to on TL, that way a switch near your front door can act as an "all off".

    The Spec (and our implementation) gives you the "tools" to implement group ranges (similar to how addresses are assigned). It is application specific behavior to use these group ranges.

    It should be simple to change the application to changing the "unique" (random) and fixed (1-3) group ID's to using group ID's from the range assigned. If there are complications in doing this please let me know.

    Regards, TC.

  • TC,

    Thank you for your clear answers. I didn't realize that the specification does not say that a device can't use GID outside the assigned range. Basically, it comes down to confusion about what is application specific and what is not.

    Given the points you mentioned, I'll go on and think about an application specific means to use the GID assignment hooks provided by Z-Stack.

    Best regards,

    Sjef.