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

Is it possible to hardcode client publication settings?

Hello, we are developing using nRF52840 DK, SDK version 15.2 and Mesh SDK version 3.1.0, using Segger Embedded Studio.

Currently we are using the nRF Mesh app to provision and configure a generic onoff client on one DK and two generic onoff servers on two other DKs.

The current problem is that after power cycling the client board, the client model that was previously publishing periodically stops doing so. If we go to the nRF Mesh app and click Set Publication and Apply (without changing anything), the client starts to publish again periodically.

Facing this, I was thinking if it might be possible to hardcode client publication settings after calling ERROR_CHECK(mesh_stack_start()).

I tried calling access_model_publish_address_set, access_model_publish_period_set  and access_model_publish_retransmit_set that I found on handle_config_model_publication_set on config_server.c, that supposedly handles provisioning messages from the app or another provisioner on a board. Still, it didn't help.

Where do you suggest I look next? Thanks!

Parents Reply
  • In Mesh SDK v3.1.0 this is not necessary. I followed what the patch did and found that there is already a flag we can set to restore the publication period after boot, in nrf_mesh_config_core.h.

    #define ACCESS_MODEL_PUBLISH_PERIOD_RESTORE 0 (default)

    #define ACCESS_MODEL_PUBLISH_PERIOD_RESTORE 1 (changed)

    The changed line solves my problem. In other words, it is a configuration issue in this Mesh SDK version, not a bug.

Children
No Data
Related