diff --git a/nimble/host/mesh/src/transport.c b/nimble/host/mesh/src/transport.c index f85cbc863..949c29cf5 100644 --- a/nimble/host/mesh/src/transport.c +++ b/nimble/host/mesh/src/transport.c @@ -52,7 +52,7 @@ BUILD_ASSERT(CONFIG_BT_MESH_ADV_BUF_COUNT >= (CONFIG_BT_MESH_TX_SEG_MAX + 3)); #define SEQ_AUTH(iv_index, seq) (((u64_t)iv_index) << 24 | (u64_t)seq) /* Number of retransmit attempts (after the initial transmit) per segment */ -#define SEG_RETRANSMIT_ATTEMPTS 4 +#define SEG_RETRANSMIT_ATTEMPTS (MYNEWT_VAL(BLE_MESH_SEG_RETRANSMIT_ATTEMPTS)) /* "This timer shall be set to a minimum of 200 + 50 * TTL milliseconds.". * We use 400 since 300 is a common send duration for standard HCI, and we diff --git a/nimble/host/mesh/syscfg.yml b/nimble/host/mesh/syscfg.yml index 7d5a36a71..368e2b259 100644 --- a/nimble/host/mesh/syscfg.yml +++ b/nimble/host/mesh/syscfg.yml @@ -191,6 +191,12 @@ syscfg.defs: as there are outgoing segments. value: 3 + BLE_MESH_SEG_RETRANSMIT_ATTEMPTS: + description: > + Number of retransmit attempts (after the initial transmit) per segment + value: 4 + retrictions: 'BLE_MESH_SEG_RETRANSMIT_ATTEMPTS > 1' + BLE_MESH_RELAY: description: > Support for acting as a Mesh Relay Node. diff --git a/porting/examples/linux_blemesh/include/syscfg/syscfg.h b/porting/examples/linux_blemesh/include/syscfg/syscfg.h index 12d969b1d..339dd5d15 100644 --- a/porting/examples/linux_blemesh/include/syscfg/syscfg.h +++ b/porting/examples/linux_blemesh/include/syscfg/syscfg.h @@ -1021,6 +1021,10 @@ #define MYNEWT_VAL_BLE_MESH_TX_SEG_MSG_COUNT (4) #endif +#ifndef MYNEWT_VAL_BLE_MESH_TX_SEG_RETRANSMIT_ATTEMPTS +#define MYNEWT_VAL_BLE_MESH_TX_SEG_RETRANSMIT_ATTEMPTS (2) +#endif + /*** net/nimble/host/services/ans */ #ifndef MYNEWT_VAL_BLE_SVC_ANS_NEW_ALERT_CAT #define MYNEWT_VAL_BLE_SVC_ANS_NEW_ALERT_CAT (0)