mesh: Improve PB-ADV timing for reliability
authorBrian Gix <brian.gix@intel.com>
Thu, 22 Sep 2022 22:31:01 +0000 (15:31 -0700)
committerAyush Garg <ayush.garg@samsung.com>
Mon, 15 May 2023 09:25:55 +0000 (14:55 +0530)
Because provisioning is not speed dependent, Timing on outbound PB-ADV
packets have been modified to be less likely missed by remote controlers
with looser timing capabilities.

Signed-off-by: Manika Shrivastava <manika.sh@samsung.com>
Signed-off-by: Ayush Garg <ayush.garg@samsung.com>
mesh/pb-adv.c

index 83f922a..180b162 100644 (file)
@@ -23,6 +23,8 @@
 #include "mesh/provision.h"
 #include "mesh/pb-adv.h"
 
+#include "mesh/util.h"
+
 
 struct pb_adv_session {
        mesh_prov_open_func_t open_cb;
@@ -158,7 +160,7 @@ static void send_adv_segs(struct pb_adv_session *session, const uint8_t *data,
        l_debug("max_seg: %2.2x", max_seg);
        l_debug("size: %2.2x, CRC: %2.2x", size, buf[9]);
 
-       pb_adv_send(session, MESH_IO_TX_COUNT_UNLIMITED, 200,
+       pb_adv_send(session, MESH_IO_TX_COUNT_UNLIMITED, 500,
                                                        buf, init_size + 10);
 
        consumed = init_size;
@@ -174,7 +176,7 @@ static void send_adv_segs(struct pb_adv_session *session, const uint8_t *data,
                buf[6] = (i << 2) | 0x02;
                memcpy(buf + 7, data + consumed, seg_size);
 
-               pb_adv_send(session, MESH_IO_TX_COUNT_UNLIMITED, 200,
+               pb_adv_send(session, MESH_IO_TX_COUNT_UNLIMITED, 500,
                                                        buf, seg_size + 7);
 
                consumed += seg_size;
@@ -270,7 +272,8 @@ static void send_ack(struct pb_adv_session *session, uint8_t trans_num)
        ack.trans_num = trans_num;
        ack.opcode = PB_ADV_ACK;
 
-       pb_adv_send(session, 1, 100, &ack, sizeof(ack));
+       pb_adv_send(session, MESH_IO_TX_COUNT_UNLIMITED, 500,
+                                                       &ack, sizeof(ack));
 }
 
 static void send_close_ind(struct pb_adv_session *session, uint8_t reason)