2020-02-13 11:41:42 +00:00
|
|
|
// Copyright 2017-2019 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.
|
|
|
|
|
|
|
|
#ifndef _ESP_BLE_MESH_BLE_API_H_
|
|
|
|
#define _ESP_BLE_MESH_BLE_API_H_
|
|
|
|
|
|
|
|
#include "esp_ble_mesh_defs.h"
|
|
|
|
|
2020-04-10 03:31:44 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2020-02-13 11:41:42 +00:00
|
|
|
/**
|
|
|
|
* @brief This function is called to start BLE advertising with the corresponding data
|
|
|
|
* and parameters while BLE Mesh is working at the same time.
|
|
|
|
*
|
|
|
|
* @note 1. When this function is called, the BLE advertising packet will be posted to
|
|
|
|
* the BLE mesh adv queue in the mesh stack and waited to be sent.
|
|
|
|
* 2. In the BLE advertising parameters, the "duration" means the time used for
|
|
|
|
* sending the BLE advertising packet each time, it shall not be smaller than the
|
|
|
|
* advertising interval. When the packet is sent successfully, it will be posted
|
|
|
|
* to the adv queue again after the "period" time if the "count" is bigger than 0.
|
|
|
|
* The "count" means how many durations the packet will be sent after it is sent
|
|
|
|
* successfully for the first time. And if the "count" is set to 0xFFFF, which
|
|
|
|
* means the packet will be sent infinitely.
|
|
|
|
* 3. The "priority" means the priority of BLE advertising packet compared with
|
|
|
|
* BLE Mesh packets. Currently two options (i.e. low/high) are provided. If the
|
|
|
|
* "priority" is high, the BLE advertising packet will be posted to the front of
|
|
|
|
* adv queue. Otherwise it will be posted to the back of adv queue.
|
|
|
|
*
|
|
|
|
* @param[in] param: Pointer to the BLE advertising parameters
|
|
|
|
* @param[in] data: Pointer to the BLE advertising data and scan response data
|
|
|
|
*
|
|
|
|
* @return ESP_OK on success or error code otherwise.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
esp_err_t esp_ble_mesh_start_ble_advertising(const esp_ble_mesh_ble_adv_param_t *param,
|
|
|
|
const esp_ble_mesh_ble_adv_data_t *data);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief This function is called to stop BLE advertising with the corresponding index.
|
|
|
|
*
|
|
|
|
* @param[in] index: Index of BLE advertising
|
|
|
|
*
|
|
|
|
* @return ESP_OK on success or error code otherwise.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
esp_err_t esp_ble_mesh_stop_ble_advertising(uint8_t index);
|
|
|
|
|
2020-04-10 03:31:44 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2020-02-13 11:41:42 +00:00
|
|
|
#endif /* _ESP_BLE_MESH_BLE_API_H_ */
|