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.

ZigBee Pro limitation ?

Other Parts Discussed in Thread: Z-STACK

Hello world !

I'm running on CC2530s with the Z-Stack 2.3.0., stack profile 0x02 which means ZigBee Pro.

Here is my problem :

I'm trying to build a large network but my routers don't accept children above device depth 5.

However, the MAX_NODE_DEPTH parameter is 20.

Regards,

Ibgiz

  • Are the children routers or end-devices?

    --Derek

  • Only routers. I just want to test the depth limitation of a Zigbee Pro network.

    The ZC is at depth 0, its children at depth 1, the children of them at depth 2 and so on.

    I guess that ZigBee Pro has no depth limitation but no way to get down below depth 5 ??

     

    Ibgiz

  • Hello,

    If I recall, max depth of 5 is the default. Maybe look to see if there's another variable used to set max depth; I don't know.

    Practically speaking, as the depth increases beyond 5, the nodes out on the fringes don't have great connectivity.

    --Derek

  • Hello,

    try to change

    line 232 in nwk_globals.h:

    #define NWK_MAX_ROUTERS           60   // changed from 6

    and let us know!

    Cheers,

    Hans

  • In nwk_globals.h we have the following:

    #if defined ( ZIGBEEPRO)
      #define STACK_PROFILE_ID      ZIGBEEPRO_PROFILE
    #else
      #define STACK_PROFILE_ID      HOME_CONTROLS
    #endif

    #if ( STACK_PROFILE_ID == ZIGBEEPRO_PROFILE )
        #define MAX_NODE_DEPTH      20
        #define NWK_MODE            NWK_MODE_MESH
        #define SECURITY_MODE       SECURITY_COMMERCIAL
      #if   ( SECURE != 0  )
        #define USE_NWK_SECURITY    1   // true or false
        #define SECURITY_LEVEL      5
      #else
        #define USE_NWK_SECURITY    0   // true or false
        #define SECURITY_LEVEL      0
      #endif

    I'm curious whether you defined the ZIGBEEPRO compile option in your project?

    In Z-Stack 2.3.0 we had projects that supported Pro and non-Pro configurations. My guess is you were using one of the non-Pro configurations which don't have the ZIGBEEPRO compile option and hence the stack profile that got used was HOME_CONTROLS.

  • Zin,

    Looking at the Application-Level tuning document it states that:

    "MAX_NODE_DEPTH

    Refers to how many successive parent-child links are possible and thus imposes a maximum range of the network.

    This parameter is not applicable when using the Zigbee Pro stack profile ID since Zigbee Pro uses stochastic

    addressing as its address assignment scheme."

    This does not match the code in nwk_globals.h.

    So I assume the question still is: what node depth can be used with ZigBee Pro? 20, 100, 200 (pearls-on-a-string  type of network)

    And is the MAX_NODE_DEPTH compile directive really ignored when doing ZigBee Pro as indicated in document Application-Level tuning?

     

    BR

    Ørjan

  • I don't think there is a limit in an topological sense with Pro.  However, you might want to make sure your max hops value is large enough.  For example, when using AF_DataRequest ( ... ) the last parameter limits the number of hops the message can make.

    Also, you might want to check DEF_NWK_RADIUS which by default is defined to be 2 * BEACON_MAX_DEPTH in nwk_globals.h.  This seems to be used when performing a route request so maybe you cannot generate routes after a certain depth.  In this case, you could just change that value.

    For example, see RTG_RtgRecordInitiation ( ... ) in rtg.c, specifically the call RTG_SendRrec(DstAddress, SrcAddress, srcEntry.extAddr, gDEF_NWK_RADIUS, 0, 0, NULL, TRUE);.  Having said that, the default appears to be 2*15, so that shouldn't be a problem at just a depth of 5.

    iR.