1 /* btp_pbp.c - Bluetooth PBP Tester */ 2 3 /* 4 * Copyright (c) 2025 Nordic Semiconductor ASA 5 * 6 * SPDX-License-Identifier: Apache-2.0 7 */ 8 9 #include <stdint.h> 10 11 #include <zephyr/bluetooth/addr.h> 12 #include <zephyr/bluetooth/audio/audio.h> 13 14 #define BTP_PBP_READ_SUPPORTED_COMMANDS 0x01 15 struct btp_pbp_read_supported_commands_rp { 16 uint8_t data[0]; 17 } __packed; 18 19 #define BTP_PBP_SET_PUBLIC_BROADCAST_ANNOUNCEMENT 0x02 20 struct btp_pbp_set_public_broadcast_announcement_cmd { 21 uint8_t features; 22 uint8_t metadata_len; 23 uint8_t metadata[]; 24 } __packed; 25 26 #define BTP_PBP_SET_BROADCAST_NAME 0x03 27 struct btp_pbp_set_broadcast_name_cmd { 28 uint8_t name_len; 29 uint8_t name[]; 30 } __packed; 31 32 #define BTP_PBP_BROADCAST_SCAN_START 0x04 33 struct btp_pbp_broadcast_scan_start_cmd { 34 } __packed; 35 36 #define BTP_PBP_BROADCAST_SCAN_STOP 0x05 37 struct btp_pbp_broadcast_scan_stop_cmd { 38 } __packed; 39 40 #define BTP_PBP_EV_PUBLIC_BROADCAST_ANNOUNCEMENT_FOUND 0x80 41 struct btp_pbp_ev_public_broadcast_announcement_found_ev { 42 bt_addr_le_t address; 43 uint8_t broadcast_id[BT_AUDIO_BROADCAST_ID_SIZE]; 44 uint8_t advertiser_sid; 45 uint16_t padv_interval; 46 uint8_t pba_features; 47 uint8_t broadcast_name_len; 48 uint8_t broadcast_name[]; 49 } __packed; 50