mirror of
https://github.com/espressif/esp-idf.git
synced 2025-11-28 21:29:50 +01:00
1. BLE Mesh Core
* Provisioning: Node Role
* Advertising and GATT bearer
* Authentication OOB
* Provisioning: Provisioner Role
* Advertising and GATT bearer
* Authentication OOB
* Networking
* Relay
* Segmentation and Reassembly
* Key Refresh
* IV Update
* Proxy Support
* Multiple Client Models Run Simultaneously
* Support multiple client models send packets to different nodes simultaneously
* No blocking between client model and server
* NVS Storage
* Store Provisioning Data of BLE Mesh Nodes in Flash
2. BLE Mesh Applications
* BLE Mesh Node & Provisioner
* Node Example
* Provisioner Example
* Node + Generic OnOff Client Example
* Fast Provisioning
* Vendor Fast Prov Server Model
* Vendor Fast Prov Client Model
* Examples
* Wi-Fi & BLE Mesh Coexistence
* Example
* BLE Mesh Console Commands
* Example
3. BLE Mesh Models
* Foundation Models
* Configuration Server Model
* Configuration Client Model
* Health Server Model
* Health Client Model
* Generic Client Models
* Generic OnOff Client
* Generic Level Client
* Generic Location Client
* Generic Default Transition Timer Client
* Generic Power OnOff Client
* Generic Power Level Client
* Generic Battery Client
* Generic Property Client
* Generic Server Models
* Generic OnOff Server (Example)
* Lighting Client Models
* Light Lightness Client
* Light CTL Client
* Light HSL Client
* Light xyL Client
* Light LC Client
* Sensor Client Model
* Sensor Client
* Time and Scenes Client Models
* Time Client
* Scene Client
* Scheduler Client
46 lines
1.3 KiB
C
46 lines
1.3 KiB
C
// Copyright 2017-2018 Espressif Systems (Shanghai) PTE LTD
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
/** @file
|
|
* @brief Bluetooth Mesh Model Common APIs.
|
|
*/
|
|
|
|
#ifndef _MESH_COMMON_H_
|
|
#define _MESH_COMMON_H_
|
|
|
|
#include "osi/allocator.h"
|
|
|
|
#include "mesh_types.h"
|
|
#include "mesh_buf.h"
|
|
#include "mesh_trace.h"
|
|
|
|
/**
|
|
* @brief This function allocates memory to store outgoing message.
|
|
*
|
|
* @param[in] size: Length of memory allocated to store message value
|
|
*
|
|
* @return NULL-fail, pointer of a net_buf_simple structure-success
|
|
*/
|
|
struct net_buf_simple *bt_mesh_alloc_buf(u16_t size);
|
|
|
|
/**
|
|
* @brief This function releases the memory allocated for the outgoing message.
|
|
*
|
|
* @param[in] buf: Pointer to the net_buf_simple structure to be freed
|
|
*
|
|
* @return none
|
|
*/
|
|
void bt_mesh_free_buf(struct net_buf_simple *buf);
|
|
|
|
#endif /* _MESH_COMMON_H_ */ |