1 /* 2 * Copyright (c) 2023 Nordic Semiconductor ASA 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7 #include "bs_bt_utils.h" 8 #include <zephyr/bluetooth/addr.h> 9 #include <zephyr/bluetooth/conn.h> 10 11 #include <stdint.h> 12 13 #include <zephyr/bluetooth/bluetooth.h> 14 15 #include "babblekit/testcase.h" 16 #include "babblekit/flags.h" 17 central(void)18void central(void) 19 { 20 bs_bt_utils_setup(); 21 22 printk("== Bonding id a - global bondable mode ==\n"); 23 BUILD_ASSERT(CONFIG_BT_BONDABLE, "CONFIG_BT_BONDABLE must be enabled by default."); 24 enable_bt_conn_set_bondable(false); 25 scan_connect_to_first_result(); 26 wait_connected(); 27 set_security(BT_SECURITY_L2); 28 TAKE_FLAG(flag_pairing_complete); 29 TAKE_FLAG(flag_bonded); 30 disconnect(); 31 wait_disconnected(); 32 unpair(BT_ID_DEFAULT); 33 clear_g_conn(); 34 35 printk("== Bonding id a - bond per-connection ==\n"); 36 enable_bt_conn_set_bondable(true); 37 set_bondable(true); 38 scan_connect_to_first_result(); 39 wait_connected(); 40 set_security(BT_SECURITY_L2); 41 TAKE_FLAG(flag_pairing_complete); 42 TAKE_FLAG(flag_bonded); 43 disconnect(); 44 wait_disconnected(); 45 clear_g_conn(); 46 47 printk("== Bonding id b - bond per-connection ==\n"); 48 scan_connect_to_first_result(); 49 wait_connected(); 50 set_security(BT_SECURITY_L2); 51 TAKE_FLAG(flag_pairing_complete); 52 TAKE_FLAG(flag_not_bonded); 53 disconnect(); 54 wait_disconnected(); 55 clear_g_conn(); 56 57 TEST_PASS("PASS"); 58 } 59