/* * Copyright (c) 2017 Intel Corporation * Additional Copyright (c) 2018 Espressif Systems (Shanghai) PTE LTD * * SPDX-License-Identifier: Apache-2.0 */ #include #include #include /* 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