Skip to content

Commit cf8ba9d

Browse files
juhaylinennordicjm
authored andcommitted
net: nrf_provisioning: Change retry time for a CoAP request
Use the CoAP ACK timeout to wait before retrying a CoAP request, rather than using a fixed delay of 500 milliseconds. Update tests. Signed-off-by: Juha Ylinen <[email protected]>
1 parent bee921b commit cf8ba9d

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

subsys/net/lib/nrf_provisioning/src/nrf_provisioning_coap.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,6 +311,7 @@ static int send_coap_request(struct coap_client *client, uint8_t method, const c
311311
struct nrf_provisioning_coap_context *const coap_ctx, bool confirmable)
312312
{
313313
int retries = 0;
314+
struct coap_transmission_parameters params = coap_get_transmission_parameters();
314315

315316
struct coap_client_request client_request = {
316317
.method = method,
@@ -334,7 +335,7 @@ static int send_coap_request(struct coap_client *client, uint8_t method, const c
334335
break;
335336
}
336337
LOG_DBG("CoAP client busy");
337-
k_sleep(K_MSEC(500));
338+
k_sleep(K_MSEC(params.ack_timeout));
338339
retries++;
339340
}
340341
k_sem_take(&coap_response, K_FOREVER);

tests/subsys/net/lib/nrf_provisioning/src/coap.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,16 @@ char *z_impl_net_addr_ntop(sa_family_t family, const void *src, char *dst, size_
124124
return "";
125125
}
126126

127+
struct coap_transmission_parameters coap_transmission_params = {
128+
.ack_timeout = 2000,
129+
.coap_backoff_percent = 200,
130+
.max_retransmission = 2};
131+
132+
struct coap_transmission_parameters coap_get_transmission_parameters(void)
133+
{
134+
return coap_transmission_params;
135+
}
136+
127137
void setUp(void)
128138
{
129139
}

0 commit comments

Comments
 (0)