Hi
is there anyone who knows if you can change the time on how often the health server model send out, the health server model is from lightswitch demo
Hi
is there anyone who knows if you can change the time on how often the health server model send out, the health server model is from lightswitch demo
Hi,
The frequency of Health Current Status messages is configured through the Publication Publish Period, part of the Model Publication state. In other words, it is part of configuring the Health Server.
For the light_switch example in nRF5 SDK for Mesh v1.0.1 the configuration is done by the provisioner, which in that example is also the client. You will find a call to config_client_model_publication_set() under case PROV_STATE_CONFIG_PUBLICATION_HEALTH
in do_config_step() in provisioner.c. Among the parameters you find pubstate.publish_period.step_num
and pubstate.publish_period.step_res
, which together set the Publish Period, in that example to 1 * 10s = 10 seconds. See access_publish_resolution_t for the possible resolution settings (step_res
). The range for number of steps (step_num
) is 0x01 through 0x3F, in addition to the special value 0x00 which disables publishing.
Further, you can decrease the period (increase the frequency) through the Health Period state of the Health Server, for when there are faults to report (see health_client_period_set()). Then the Publish Period configured through the Configuration Model is used as long as there are no Health Faults, but if there are faults to be reported then the shorter period is used. In the event of fault reports, the period is the Publish Period divided by 2^fast_period_divisor, where the value range for fast_period_divisor is 0 through 15.
Regards,
Terje
Hi,
The frequency of Health Current Status messages is configured through the Publication Publish Period, part of the Model Publication state. In other words, it is part of configuring the Health Server.
For the light_switch example in nRF5 SDK for Mesh v1.0.1 the configuration is done by the provisioner, which in that example is also the client. You will find a call to config_client_model_publication_set() under case PROV_STATE_CONFIG_PUBLICATION_HEALTH
in do_config_step() in provisioner.c. Among the parameters you find pubstate.publish_period.step_num
and pubstate.publish_period.step_res
, which together set the Publish Period, in that example to 1 * 10s = 10 seconds. See access_publish_resolution_t for the possible resolution settings (step_res
). The range for number of steps (step_num
) is 0x01 through 0x3F, in addition to the special value 0x00 which disables publishing.
Further, you can decrease the period (increase the frequency) through the Health Period state of the Health Server, for when there are faults to report (see health_client_period_set()). Then the Publish Period configured through the Configuration Model is used as long as there are no Health Faults, but if there are faults to be reported then the shorter period is used. In the event of fault reports, the period is the Publish Period divided by 2^fast_period_divisor, where the value range for fast_period_divisor is 0 through 15.
Regards,
Terje