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.

Problem of Associated Device list & broadcast

Other Parts Discussed in Thread: Z-STACK

Hello everyone.

I'm using ZStack 2.5.1.a with cc2530 and cc2531 devices and my system has 1 coordinator, 13 routers and 7 end devices.

I have some problems about Associated Device list.

The coordinator open permit join to let other devices join the network.

When ZED join the network, it unicast an Device Annouce message to it's parent and the parent broadcast Device Annouce to other device.

The problem is sometimes the parent receives another Device Annouce with mac destination address 0xFFFF and this message's broadcast ID is the same as 

the Device Annouce that the parent broadcast.

It causes the parent process AssocRemove like below.

if ( inMsg->macDestAddr != NLME_GetShortAddr() )
{
    associated_devices_t *dev_ptr;

    // If it's an end device child
    dev_ptr = AssocGetWithExt( Annce.extAddr );
    if ( dev_ptr )
    {
        if ( dev_ptr->nodeRelation == CHILD_RFD ||
        dev_ptr->nodeRelation == CHILD_RFD_RX_IDLE )
       {
            AssocRemove( Annce.extAddr );

       }

    }
}   


So the end device isn't in the associated device list of it's parent.

Why the parent receives the Device Annouce twice with the same broadcast ID?

Please help.

  • Hi eric,

    Sorry, Z-Stack 2.5.1a is more than 2-year old stack and our bandwidth to support it is very limited. I would strongly recommend you migrating to the latest version of Z-Stack(Z-Stack Home 1.2.1 as of now).

    - Cetri