xref: /nrf52832-nimble/packages/NimBLE-latest/nimble/host/mesh/src/mesh_priv.h (revision 042d53a763ad75cb1465103098bb88c245d95138)
1*042d53a7SEvalZero /*  Bluetooth Mesh */
2*042d53a7SEvalZero 
3*042d53a7SEvalZero /*
4*042d53a7SEvalZero  * Copyright (c) 2017 Intel Corporation
5*042d53a7SEvalZero  *
6*042d53a7SEvalZero  * SPDX-License-Identifier: Apache-2.0
7*042d53a7SEvalZero  */
8*042d53a7SEvalZero #ifndef __MESH_PRIV_H
9*042d53a7SEvalZero #define __MESH_PRIV_H
10*042d53a7SEvalZero 
11*042d53a7SEvalZero #define BT_MESH_KEY_PRIMARY 0x0000
12*042d53a7SEvalZero #define BT_MESH_KEY_ANY     0xffff
13*042d53a7SEvalZero 
14*042d53a7SEvalZero #define BT_MESH_ADDR_IS_UNICAST(addr) ((addr) && (addr) < 0x8000)
15*042d53a7SEvalZero #define BT_MESH_ADDR_IS_GROUP(addr) ((addr) >= 0xc000 && (addr) <= 0xff00)
16*042d53a7SEvalZero #define BT_MESH_ADDR_IS_VIRTUAL(addr) ((addr) >= 0x8000 && (addr) < 0xc000)
17*042d53a7SEvalZero #define BT_MESH_ADDR_IS_RFU(addr) ((addr) >= 0xff00 && (addr) <= 0xfffb)
18*042d53a7SEvalZero struct bt_mesh_net;
19*042d53a7SEvalZero 
20*042d53a7SEvalZero #define OP_GEN_ONOFF_GET		BT_MESH_MODEL_OP_2(0x82, 0x01)
21*042d53a7SEvalZero #define OP_GEN_ONOFF_SET		BT_MESH_MODEL_OP_2(0x82, 0x02)
22*042d53a7SEvalZero #define OP_GEN_ONOFF_SET_UNACK		BT_MESH_MODEL_OP_2(0x82, 0x03)
23*042d53a7SEvalZero #define OP_GEN_ONOFF_STATUS		BT_MESH_MODEL_OP_2(0x82, 0x04)
24*042d53a7SEvalZero #define OP_GEN_LEVEL_GET		BT_MESH_MODEL_OP_2(0x82, 0x05)
25*042d53a7SEvalZero #define OP_GEN_LEVEL_SET		BT_MESH_MODEL_OP_2(0x82, 0x06)
26*042d53a7SEvalZero #define OP_GEN_LEVEL_SET_UNACK		BT_MESH_MODEL_OP_2(0x82, 0x07)
27*042d53a7SEvalZero #define OP_GEN_LEVEL_STATUS		BT_MESH_MODEL_OP_2(0x82, 0x08)
28*042d53a7SEvalZero #define OP_GEN_DELTA_SET		BT_MESH_MODEL_OP_2(0x82, 0x09)
29*042d53a7SEvalZero #define OP_GEN_DELTA_SET_UNACK		BT_MESH_MODEL_OP_2(0x82, 0x0a)
30*042d53a7SEvalZero #define OP_GEN_MOVE_SET			BT_MESH_MODEL_OP_2(0x82, 0x0b)
31*042d53a7SEvalZero #define OP_GEN_MOVE_SET_UNACK		BT_MESH_MODEL_OP_2(0x82, 0x0c)
32*042d53a7SEvalZero #define OP_LIGHT_LIGHTNESS_GET		BT_MESH_MODEL_OP_2(0x82, 0x4b)
33*042d53a7SEvalZero #define OP_LIGHT_LIGHTNESS_SET		BT_MESH_MODEL_OP_2(0x82, 0x4c)
34*042d53a7SEvalZero #define OP_LIGHT_LIGHTNESS_SET_UNACK	BT_MESH_MODEL_OP_2(0x82, 0x4d)
35*042d53a7SEvalZero 
36*042d53a7SEvalZero bool bt_mesh_is_provisioned(void);
37*042d53a7SEvalZero 
38*042d53a7SEvalZero #endif
39