This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

LPN : periodic peaks

Hello,

I am working on LPN node code from the mesh SDK 3.2.0. When I run the example code, I see a current peak at every 2 sec interval. Please check the image attached. 

I tried changing the poll_interval_ms and other parameters as well but these periodic peaks are always there with 2 sec period. Can anyone please help me understand what these peaks are?? Can I change this interval??

Regards,

Sameer 

Parents
  • Hello? Where, and in what project (lpn or the friend node) did you try to change poll_interval_ms? And in what function is that poll_interval_ms used? And what did that function call return?

    The spikes in your graph look very much like radio spikes, so you are on the right track, but it doesn't look like the polling interval is actually changed.

    Best regards,

    Edvin

  • Thanks Florian for the detailed analysis. 

    Hello Edvin,

    I am talking about the experimental LPN application. The poll_interval_ms is being set in mesh_lpn_friend_accept() function and it returns NRF_SUCCESS. I tried different values of poll_interval_ms from 1 sec to few minutes but this 2 sec peak is consistent and is always there. And I am also not sending anything from the LPN while conducting this experiment. 

    but it doesn't look like the polling interval is actually changed.

    I believe it is changing as I see the polling related logs as per the set value of poll_interval_ms only and not at every 2sec. 

    Regards,

    Sameer  

Reply
  • Thanks Florian for the detailed analysis. 

    Hello Edvin,

    I am talking about the experimental LPN application. The poll_interval_ms is being set in mesh_lpn_friend_accept() function and it returns NRF_SUCCESS. I tried different values of poll_interval_ms from 1 sec to few minutes but this 2 sec peak is consistent and is always there. And I am also not sending anything from the LPN while conducting this experiment. 

    but it doesn't look like the polling interval is actually changed.

    I believe it is changing as I see the polling related logs as per the set value of poll_interval_ms only and not at every 2sec. 

    Regards,

    Sameer  

Children
  • Hello Sameer,

    When the device is provisioned it will still advertise at a given interval with it's proxy service. The interval of these advertisements are set by:

    MESH_GATT_PROXY_NETWORK_ID_ADV_INT_MS in nrf_mesh_config_core.h. Try to change it to e.g. 3000, and you will see that there are 3 seconds between the spikes. 

    If you want to stop these advertisements, you can try to call proxy_stop(), and it should stop these advertisements. 

    If you do not want to stop the proxy advertisements, there are a few of them you should look into:

    When a device is unprovisioned:
    NRF_MESH_PROV_BEARER_GATT_UNPROV_BEACON_INTERVAL_MS controls the advertising intervals.

    For a provisioned node:

    (Node ID and Network ID advertisements are cycled one after the other. So both intervals should be changed)

    MESH_GATT_PROXY_NODE_IDENTITY_ADV_INT_MS
    MESH_GATT_PROXY_NETWORK_ID_ADV_INT_MS

  • Hello Edvin,

    Yes this works. It solved the issue. 

    Thanks,

    Sameer 

Related