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.

CC2531: Z-Stack Linux server: MAX_SUPPORTED_ENDPOINTS applied at boot?

Part Number: CC2531

Just a quick question: is MAX_SUPPORTED_ENDPOINTS from config.ini applied each time that the server starts or only the first time after a hard reset like the channel setting?

Regards
Peter

  • Hi Peter,

    The definition MAX_SUPPORTED_ENDPOINTS is assigned to external variable maxSupportedEndpoints which is part of the sysParams -> configItems structure, as far as I can see it only affects the host application in zstackpb.c for processAfRegisterReq/epTableAddNewEntry checking epTableNumEntries. By contrast, channel setting configured start-up of the ZNP and would not be changeable after commissioning (MAX_ENDPOINTS is set to 254 by the ZNP firmware).  So you could change maxSupportedEndpoints during any time while running, but for what purposes would you need it to change?

    Regards,
    Ryan

  • Hi Ryan,

    Thank you for the reply which perfectly answered my question.

    To answer your question and risking to appear extremely stupid: each end device function is one endpoint, so if you have 2 devices with two functions each (like on/off and metering), it would be already 4 endpoints, right?

    Regards
    Peter

  • Looking at epTableNumEntries, it considers the total number of local endpoint entries.  So in your example it would already be at four endpoints only if the on/off or metering remote endpoints from each node communicated with a different host application endpoint.  Your gateway could alternatively just create one on/off endpoint and another metering endpoint, if that makes sense for your application, to communicate with multiple similar remote endpoints.

    Regards,
    Ryan

  • For the gateway, I don’t see why you need to change MAX_SUPPORTED_ENDPOINTS even you add endpoints or device with different clusters support. You only need to add the clusters that you want into your endpoint and it should be OK.