| /* |
| * Copyright (c) 2023 Nordic Semiconductor ASA |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| #include "bs_bt_utils.h" |
| #include <zephyr/bluetooth/addr.h> |
| #include <zephyr/bluetooth/conn.h> |
| |
| #include <stdint.h> |
| |
| #include <zephyr/bluetooth/bluetooth.h> |
| |
| void central(void) |
| { |
| bs_bt_utils_setup(); |
| |
| printk("== Bonding id a - global bondable mode ==\n"); |
| BUILD_ASSERT(CONFIG_BT_BONDABLE, "CONFIG_BT_BONDABLE must be enabled by default."); |
| enable_bt_conn_set_bondable(false); |
| scan_connect_to_first_result(); |
| wait_connected(); |
| set_security(BT_SECURITY_L2); |
| TAKE_FLAG(flag_pairing_complete); |
| TAKE_FLAG(flag_bonded); |
| disconnect(); |
| wait_disconnected(); |
| unpair(BT_ID_DEFAULT); |
| clear_g_conn(); |
| |
| printk("== Bonding id a - bond per-connection ==\n"); |
| enable_bt_conn_set_bondable(true); |
| set_bondable(true); |
| scan_connect_to_first_result(); |
| wait_connected(); |
| set_security(BT_SECURITY_L2); |
| TAKE_FLAG(flag_pairing_complete); |
| TAKE_FLAG(flag_bonded); |
| disconnect(); |
| wait_disconnected(); |
| clear_g_conn(); |
| |
| printk("== Bonding id b - bond per-connection ==\n"); |
| scan_connect_to_first_result(); |
| wait_connected(); |
| set_security(BT_SECURITY_L2); |
| TAKE_FLAG(flag_pairing_complete); |
| TAKE_FLAG(flag_not_bonded); |
| disconnect(); |
| wait_disconnected(); |
| clear_g_conn(); |
| |
| PASS("PASS\n"); |
| } |