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.

CC2652R: ZC error when ZED Join the network

Part Number: CC2652R
Other Parts Discussed in Thread: CC1352R, , SYSCONFIG

Hi, 

I have CC2652R as ZC, CC2652R as ZED and CC1352R as ZED. The network worked fine before, but recently I have seen some errors when devices join the network, the ZC just stops working. 
I have managed to pinpoint the error and I think it is when the ZC sends a response to anything. I have attached the sniffer log where the ZC stops working at packet number 72

.packetlog.zip

it works for a while when i reset the launchpad but sometimes I stops working when responding to attribute or other commands. 

Im using  SDK 3.3 and building on genericapp project. 

Regards,
Hamza

  • Hi, 

    I debugged and found that the ZC had an error doing the following function:

    zclGenericAppEpDesc.endPoint = pInd->rsp.pActiveEPList[0];
    zclGenericAppEpDesc.simpleDesc = &zclGenericApp_SimpleDesc;
    zclport_registerEndpoint(appServiceTaskId, &zclGenericAppEpDesc);

    What I want to do here is just to register joining device end point. It has been working before. 

    Regards,
    Hamza

  • Try to use latest SDK 4.10 to test if you still see the same issue.

  • Hi, 

    Can I transfer my project from SDK 3.4 to 4.10? Or do I need to start fresh from SDK 4.10? 

    Regards,
    Hamza

  • You can refer to migration guide at

  • Hi, 

    It doesnt say how i can transfer my project from SDK 3.4 to 4.10...
    I have changed in properties from SDK 3.4 to SDK 4.10 and now Im getting a lot of erros that I need to fix... 
    I hope it will be worth it..

    Regards,
    Hamza

  • Hi, 

    I think the problem lays in how the coordinator register end points, is it possible to allow the coordinator to register each device endpoint? 

    I repeated the problem with SDK 4.10 and it was the same. 

    Regards,
    Hamza

  • Hi Hamza,

    The problem is not the SDK versions.  The ZC should only register endpoints for its own application, not that of every device which connects to its network.  Registering an endpoint value which already exists could potentially cause issues.  What are you specifically trying to accomplish?  You should keep track of joining device addresses and their active endpoints separately.  If one of the endpoint's simple descriptors contain a cluster that you are interested in controlling/binding to from the ZC then you should register a new endpoint with unique simple descriptor accordingly.

    Regards,
    Ryan

  • Hi Ryan, 


    Thank you for the explanation! 

    Yes, I found simple descriptor to be doing what I intend to do. Thus, it only register two end points, 2x ZED. 

    I have many devices with their corresponding end point that report attributes to the ZC, currently 2 working. 

    Any idea how i can configure for more?

    Regards,
    Hamza

  • Hamza,

    Multiple endpoints from different ZEDs can report to the same endpoint on the ZC.  For example, several ZED switches can control the same ZC light endpoint or several ZED temperature sensors can report to the same ZC thermostat endpoint.  You do not have to create a separate endpoint for each ZED.  If using F&B then make sure the identify time is restarted on both devices when you are attempting to have them discover each other's application.  I recommend that you review ZCL Spec and theory of operation.  If you need to create binds locally on the ZC then you will need to increase the Maximum number of binding table entries (NWK_MAX_BINDING_ENTRIES) from SysConfig.

    Regards,
    Ryan

  • Hi Ryan, 

    I managed to solve it by just changing destination endpoint to ZC on each ZED. 

    I'm more concerned about implementing ZC for ZED that has fixed destination endpoint not the same as ZC that I cannot change. For instance, I have an Aqara temp sensor with Destination endpoint 1. Would it be unadvised to register the end point on ZC as following;

    zclGenericAppEpDesc.endPoint = 1;
    zclGenericAppEpDesc.simpleDesc = &zclGenericApp_SimpleDesc;
    zclport_registerEndpoint(appServiceTaskId, &zclGenericAppEpDesc);

    Regards,
    Hamza

  • It’s no problem to use endpoint 1 on ZC to communicate to different endpoints from different devices.

  • Hi, 

    I am investigating if it is possible to adapt the ZC for two different endpoints; it can have endpoint 1 and 8. That is, ZED can reach ZC by sending command to destination endpoint 8 or 1. 

    Regards,
    Hamza

  • It should be no problem to have two endpoints on ZC.