Zephyr Project API
3.4.0
A Scalable Open Source RTOS
rpr.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2020 Nordic Semiconductor ASA
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
7
#ifndef ZEPHYR_INCLUDE_BT_MESH_RPR_H__
8
#define ZEPHYR_INCLUDE_BT_MESH_RPR_H__
9
10
#include <
zephyr/kernel.h
>
11
#include <
zephyr/bluetooth/mesh/main.h
>
12
13
#ifdef __cplusplus
14
extern
"C"
{
15
#endif
16
24
#define BT_MESH_RPR_UNPROV_HASH BIT(0)
25
#define BT_MESH_RPR_UNPROV_ACTIVE BIT(1)
26
#define BT_MESH_RPR_UNPROV_FOUND BIT(2)
27
#define BT_MESH_RPR_UNPROV_REPORTED BIT(3)
28
#define BT_MESH_RPR_UNPROV_EXT BIT(4)
29
#define BT_MESH_RPR_UNPROV_HAS_LINK BIT(5)
30
#define BT_MESH_RPR_UNPROV_EXT_ADV_RXD BIT(6)
33
#define BT_MESH_RPR_EXT_SCAN_TIME_MIN 1
35
#define BT_MESH_RPR_EXT_SCAN_TIME_MAX 21
36
37
enum
bt_mesh_rpr_status
{
38
BT_MESH_RPR_SUCCESS
,
39
BT_MESH_RPR_ERR_SCANNING_CANNOT_START
,
40
BT_MESH_RPR_ERR_INVALID_STATE
,
41
BT_MESH_RPR_ERR_LIMITED_RESOURCES
,
42
BT_MESH_RPR_ERR_LINK_CANNOT_OPEN
,
43
BT_MESH_RPR_ERR_LINK_OPEN_FAILED
,
44
BT_MESH_RPR_ERR_LINK_CLOSED_BY_DEVICE
,
45
BT_MESH_RPR_ERR_LINK_CLOSED_BY_SERVER
,
46
BT_MESH_RPR_ERR_LINK_CLOSED_BY_CLIENT
,
47
BT_MESH_RPR_ERR_LINK_CLOSED_AS_CANNOT_RECEIVE_PDU
,
48
BT_MESH_RPR_ERR_LINK_CLOSED_AS_CANNOT_SEND_PDU
,
49
BT_MESH_RPR_ERR_LINK_CLOSED_AS_CANNOT_DELIVER_PDU_REPORT
,
50
};
51
52
enum
bt_mesh_rpr_scan
{
53
BT_MESH_RPR_SCAN_IDLE
,
54
BT_MESH_RPR_SCAN_MULTI
,
55
BT_MESH_RPR_SCAN_SINGLE
,
56
};
57
58
enum
bt_mesh_rpr_node_refresh
{
60
BT_MESH_RPR_NODE_REFRESH_DEVKEY
,
62
BT_MESH_RPR_NODE_REFRESH_ADDR
,
64
BT_MESH_RPR_NODE_REFRESH_COMPOSITION
,
65
};
66
67
enum
bt_mesh_rpr_link_state
{
68
BT_MESH_RPR_LINK_IDLE
,
69
BT_MESH_RPR_LINK_OPENING
,
70
BT_MESH_RPR_LINK_ACTIVE
,
71
BT_MESH_RPR_LINK_SENDING
,
72
BT_MESH_RPR_LINK_CLOSING
,
73
};
74
76
struct
bt_mesh_rpr_node
{
78
uint16_t
addr
;
80
uint16_t
net_idx
;
82
uint8_t
ttl
;
83
};
84
86
struct
bt_mesh_rpr_unprov
{
88
uint8_t
uuid
[16];
90
uint8_t
flags
;
92
int8_t
rssi
;
94
bt_mesh_prov_oob_info_t
oob
;
99
uint32_t
hash
;
100
};
101
103
struct
bt_mesh_rpr_link
{
105
enum
bt_mesh_rpr_status
status
;
107
enum
bt_mesh_rpr_link_state
state
;
108
};
109
112
#ifdef __cplusplus
113
}
114
#endif
115
116
#endif
/* ZEPHYR_INCLUDE_BT_MESH_RPR_H__ */
bt_mesh_prov_oob_info_t
bt_mesh_prov_oob_info_t
Definition:
main.h:69
bt_mesh_rpr_link_state
bt_mesh_rpr_link_state
Definition:
rpr.h:67
bt_mesh_rpr_status
bt_mesh_rpr_status
Definition:
rpr.h:37
bt_mesh_rpr_scan
bt_mesh_rpr_scan
Definition:
rpr.h:52
bt_mesh_rpr_node_refresh
bt_mesh_rpr_node_refresh
Definition:
rpr.h:58
BT_MESH_RPR_LINK_SENDING
@ BT_MESH_RPR_LINK_SENDING
Definition:
rpr.h:71
BT_MESH_RPR_LINK_IDLE
@ BT_MESH_RPR_LINK_IDLE
Definition:
rpr.h:68
BT_MESH_RPR_LINK_CLOSING
@ BT_MESH_RPR_LINK_CLOSING
Definition:
rpr.h:72
BT_MESH_RPR_LINK_ACTIVE
@ BT_MESH_RPR_LINK_ACTIVE
Definition:
rpr.h:70
BT_MESH_RPR_LINK_OPENING
@ BT_MESH_RPR_LINK_OPENING
Definition:
rpr.h:69
BT_MESH_RPR_ERR_LINK_CLOSED_AS_CANNOT_SEND_PDU
@ BT_MESH_RPR_ERR_LINK_CLOSED_AS_CANNOT_SEND_PDU
Definition:
rpr.h:48
BT_MESH_RPR_ERR_LINK_CLOSED_BY_DEVICE
@ BT_MESH_RPR_ERR_LINK_CLOSED_BY_DEVICE
Definition:
rpr.h:44
BT_MESH_RPR_ERR_LINK_CANNOT_OPEN
@ BT_MESH_RPR_ERR_LINK_CANNOT_OPEN
Definition:
rpr.h:42
BT_MESH_RPR_SUCCESS
@ BT_MESH_RPR_SUCCESS
Definition:
rpr.h:38
BT_MESH_RPR_ERR_LINK_CLOSED_BY_CLIENT
@ BT_MESH_RPR_ERR_LINK_CLOSED_BY_CLIENT
Definition:
rpr.h:46
BT_MESH_RPR_ERR_LINK_CLOSED_AS_CANNOT_RECEIVE_PDU
@ BT_MESH_RPR_ERR_LINK_CLOSED_AS_CANNOT_RECEIVE_PDU
Definition:
rpr.h:47
BT_MESH_RPR_ERR_INVALID_STATE
@ BT_MESH_RPR_ERR_INVALID_STATE
Definition:
rpr.h:40
BT_MESH_RPR_ERR_LIMITED_RESOURCES
@ BT_MESH_RPR_ERR_LIMITED_RESOURCES
Definition:
rpr.h:41
BT_MESH_RPR_ERR_LINK_CLOSED_AS_CANNOT_DELIVER_PDU_REPORT
@ BT_MESH_RPR_ERR_LINK_CLOSED_AS_CANNOT_DELIVER_PDU_REPORT
Definition:
rpr.h:49
BT_MESH_RPR_ERR_LINK_OPEN_FAILED
@ BT_MESH_RPR_ERR_LINK_OPEN_FAILED
Definition:
rpr.h:43
BT_MESH_RPR_ERR_SCANNING_CANNOT_START
@ BT_MESH_RPR_ERR_SCANNING_CANNOT_START
Definition:
rpr.h:39
BT_MESH_RPR_ERR_LINK_CLOSED_BY_SERVER
@ BT_MESH_RPR_ERR_LINK_CLOSED_BY_SERVER
Definition:
rpr.h:45
BT_MESH_RPR_SCAN_SINGLE
@ BT_MESH_RPR_SCAN_SINGLE
Definition:
rpr.h:55
BT_MESH_RPR_SCAN_MULTI
@ BT_MESH_RPR_SCAN_MULTI
Definition:
rpr.h:54
BT_MESH_RPR_SCAN_IDLE
@ BT_MESH_RPR_SCAN_IDLE
Definition:
rpr.h:53
BT_MESH_RPR_NODE_REFRESH_ADDR
@ BT_MESH_RPR_NODE_REFRESH_ADDR
Definition:
rpr.h:62
BT_MESH_RPR_NODE_REFRESH_COMPOSITION
@ BT_MESH_RPR_NODE_REFRESH_COMPOSITION
Definition:
rpr.h:64
BT_MESH_RPR_NODE_REFRESH_DEVKEY
@ BT_MESH_RPR_NODE_REFRESH_DEVKEY
Definition:
rpr.h:60
kernel.h
Public kernel APIs.
main.h
Bluetooth mesh Profile APIs.
uint32_t
__UINT32_TYPE__ uint32_t
Definition:
stdint.h:90
uint8_t
__UINT8_TYPE__ uint8_t
Definition:
stdint.h:88
uint16_t
__UINT16_TYPE__ uint16_t
Definition:
stdint.h:89
int8_t
__INT8_TYPE__ int8_t
Definition:
stdint.h:72
bt_mesh_rpr_link
Definition:
rpr.h:103
bt_mesh_rpr_link::status
enum bt_mesh_rpr_status status
Definition:
rpr.h:105
bt_mesh_rpr_link::state
enum bt_mesh_rpr_link_state state
Definition:
rpr.h:107
bt_mesh_rpr_node
Definition:
rpr.h:76
bt_mesh_rpr_node::addr
uint16_t addr
Definition:
rpr.h:78
bt_mesh_rpr_node::net_idx
uint16_t net_idx
Definition:
rpr.h:80
bt_mesh_rpr_node::ttl
uint8_t ttl
Definition:
rpr.h:82
bt_mesh_rpr_unprov
Definition:
rpr.h:86
bt_mesh_rpr_unprov::rssi
int8_t rssi
Definition:
rpr.h:92
bt_mesh_rpr_unprov::oob
bt_mesh_prov_oob_info_t oob
Definition:
rpr.h:94
bt_mesh_rpr_unprov::flags
uint8_t flags
Definition:
rpr.h:90
bt_mesh_rpr_unprov::uuid
uint8_t uuid[16]
Definition:
rpr.h:88
bt_mesh_rpr_unprov::hash
uint32_t hash
Definition:
rpr.h:99
include
zephyr
bluetooth
mesh
rpr.h
Generated on Sat Jun 17 2023 07:48:27 for Zephyr Project API by
1.9.2