64 lines
1.4 KiB
C
64 lines
1.4 KiB
C
|
|
||
|
/*
|
||
|
* Copyright (c) 2017 Intel Corporation
|
||
|
* Additional Copyright (c) 2018 Espressif Systems (Shanghai) PTE LTD
|
||
|
*
|
||
|
* SPDX-License-Identifier: Apache-2.0
|
||
|
*/
|
||
|
|
||
|
#include <stdio.h>
|
||
|
#include <string.h>
|
||
|
#include <sdkconfig.h>
|
||
|
/* BLE */
|
||
|
#ifdef CONFIG_BLUEDROID_ENABLED
|
||
|
#include "esp_bt.h"
|
||
|
#include "esp_bt_main.h"
|
||
|
#include "esp_bt_device.h"
|
||
|
#endif
|
||
|
|
||
|
#include "esp_ble_mesh_defs.h"
|
||
|
#include "ble_mesh_demo_init.h"
|
||
|
#include "esp_ble_mesh_common_api.h"
|
||
|
|
||
|
#ifdef CONFIG_BLUEDROID_ENABLED
|
||
|
|
||
|
void ble_mesh_get_dev_uuid(uint8_t *dev_uuid)
|
||
|
{
|
||
|
memcpy(dev_uuid + 2, esp_bt_dev_get_address(), BD_ADDR_LEN);
|
||
|
}
|
||
|
|
||
|
esp_err_t bluetooth_init(void)
|
||
|
{
|
||
|
esp_err_t ret;
|
||
|
|
||
|
|
||
|
ESP_ERROR_CHECK(esp_bt_controller_mem_release(ESP_BT_MODE_CLASSIC_BT));
|
||
|
|
||
|
esp_bt_controller_config_t bt_cfg = BT_CONTROLLER_INIT_CONFIG_DEFAULT();
|
||
|
ret = esp_bt_controller_init(&bt_cfg);
|
||
|
if (ret) {
|
||
|
ESP_LOGE(TAG, "%s initialize controller failed", __func__);
|
||
|
return ret;
|
||
|
}
|
||
|
|
||
|
ret = esp_bt_controller_enable(ESP_BT_MODE_BLE);
|
||
|
if (ret) {
|
||
|
ESP_LOGE(TAG, "%s enable controller failed", __func__);
|
||
|
return ret;
|
||
|
}
|
||
|
ret = esp_bluedroid_init();
|
||
|
if (ret) {
|
||
|
ESP_LOGE(TAG, "%s init bluetooth failed", __func__);
|
||
|
return ret;
|
||
|
}
|
||
|
ret = esp_bluedroid_enable();
|
||
|
if (ret) {
|
||
|
ESP_LOGE(TAG, "%s enable bluetooth failed", __func__);
|
||
|
return ret;
|
||
|
}
|
||
|
|
||
|
return ret;
|
||
|
}
|
||
|
|
||
|
#endif
|