nRF5 SDK for Mesh v5.0.0
38 #ifndef NRF_MESH_DEFINES_H__ 39 #define NRF_MESH_DEFINES_H__ 52 #if defined(NRF52_SERIES) 53 #error "Both NRF51 and NRF52_SERIES should not be defined." 55 #elif !defined(NRF52_SERIES) && !defined(HOST) 56 #error "At least NRF51, NRF52_SERIES or HOST must be defined." 65 #define NRF_MESH_SEG_PAYLOAD_SIZE_MAX (380) 68 #define NRF_MESH_UPPER_TRANSPORT_PDU_SIZE_MAX (384) 71 #define NRF_MESH_UNSEG_PAYLOAD_SIZE_MAX (11) 74 #define NRF_MESH_ADV_CHAN_ALL {37, 38, 39} 77 #define NRF_MESH_ADV_CHAN_DEFAULT NRF_MESH_ADV_CHAN_ALL 80 #define NRF_MESH_KEY_SIZE (16) 83 #define NRF_MESH_NETID_SIZE (8) 86 #define NRF_MESH_UUID_SIZE (16) 89 #define NRF_MESH_TTL_BIT_COUNT (7) 92 #define NRF_MESH_TTL_MAX ((1 << NRF_MESH_TTL_BIT_COUNT) - 1) 95 #define NRF_MESH_GLOBAL_KEY_INDEX_MAX (0xFFF) 98 #define NRF_MESH_BEACON_SECURE_NET_BCAST_INTERVAL_SECONDS 10 101 #define NRF_MESH_BEACON_OBSERVATION_PERIODS 2 104 #define NRF_MESH_BEACON_UNPROV_URI_HASH_SIZE (4) 107 #define NRF_MESH_ECDH_PUBLIC_KEY_SIZE (64) 110 #define NRF_MESH_ECDH_PRIVATE_KEY_SIZE (32) 113 #define NRF_MESH_ECDH_SHARED_SECRET_SIZE (32) 116 #define NRF_MESH_ADDR_UNASSIGNED (0x0000) 119 #define NRF_MESH_ALL_PROXIES_ADDR (0xFFFC) 122 #define NRF_MESH_ALL_FRIENDS_ADDR (0xFFFD) 125 #define NRF_MESH_ALL_RELAYS_ADDR (0xFFFE) 128 #define NRF_MESH_ALL_NODES_ADDR (0xFFFF) 131 #define NRF_MESH_ADDR_TYPE_BITS_OFFSET (14) 134 #define NRF_MESH_ADDR_TYPE_BITS_MASK (0xC000) 138 #define NRF_MESH_IRQ_PRIORITY_THREAD (4) 140 #define NRF_MESH_IRQ_PRIORITY_THREAD (15) 145 #define NRF_MESH_IRQ_PRIORITY_LOWEST (3) 147 #define NRF_MESH_IRQ_PRIORITY_LOWEST (6) 158 #define NETWORK_SEQNUM_BITS 24 161 #define NETWORK_SEQNUM_MAX ((1 << NETWORK_SEQNUM_BITS) - 1) 164 #define NETWORK_RELAY_RETRANSMITS_MAX ((1 << 3) - 1) 167 #define NETWORK_RELAY_INTERVAL_STEPS_MAX ((1 << 5) - 1) 170 #define NETWORK_RELAY_INTERVAL_MAX_MS ((NETWORK_RELAY_INTERVAL_STEPS_MAX + 1) * 10) 173 #define NETWORK_MIN_IV_UPDATE_INTERVAL_MINUTES (96 * 60) 176 #define NETWORK_IV_RECOVERY_LIMIT 42 179 #define NETWORK_BEARER BEARER_ADV_RADIO 189 #define TRANSPORT_SAR_RX_TIMEOUT_MIN MS_TO_US(10000) 191 #define TRANSPORT_SAR_RX_TIMEOUT_MAX MS_TO_US(120000) 194 #define TRANSPORT_SAR_RX_ACK_TIMEOUT_BASE_MIN MS_TO_US(150) 196 #define TRANSPORT_SAR_RX_ACK_TIMEOUT_BASE_MAX MS_TO_US(10000) 199 #define TRANSPORT_SAR_RX_ACK_TIMEOUT_PER_HOP_ADDITION_MIN MS_TO_US(50) 201 #define TRANSPORT_SAR_RX_ACK_TIMEOUT_PER_HOP_ADDITION_MAX MS_TO_US(10000) 204 #define TRANSPORT_SAR_TX_RETRY_TIMEOUT_BASE_MIN MS_TO_US(200) 206 #define TRANSPORT_SAR_TX_RETRY_TIMEOUT_BASE_MAX MS_TO_US(10000) 209 #define TRANSPORT_SAR_TX_RETRY_TIMEOUT_PER_HOP_ADDITION_MIN MS_TO_US(200) 211 #define TRANSPORT_SAR_TX_RETRY_TIMEOUT_PER_HOP_ADDITION_MAX MS_TO_US(10000) 214 #define TRANSPORT_SAR_TX_TIMEOUT_MIN MS_TO_US(150) 216 #define TRANSPORT_SAR_TX_TIMEOUT_MAX MS_TO_US(60000) 219 #define TRANSPORT_SAR_TX_RETRIES_MIN (2) 221 #define TRANSPORT_SAR_TX_RETRIES_MAX (255) 225 #define TRANSPORT_SAR_SEQNUM_DIFF_MAX (8191) 235 #define HEARTBEAT_TRIGGER_TYPE_RELAY 0x0001 237 #define HEARTBEAT_TRIGGER_TYPE_PROXY 0x0002 239 #define HEARTBEAT_TRIGGER_TYPE_FRIEND 0x0004 241 #define HEARTBEAT_TRIGGER_TYPE_LPN 0x0008 243 #define HEARTBEAT_TRIGGER_TYPE_RFU_MASK 0x000F