Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
cs.h
Go to the documentation of this file.
1
5/*
6 * Copyright (c) 2024 Nordic Semiconductor ASA
7 *
8 * SPDX-License-Identifier: Apache-2.0
9 */
10#ifndef ZEPHYR_INCLUDE_BLUETOOTH_CS_H_
11#define ZEPHYR_INCLUDE_BLUETOOTH_CS_H_
12
20#include <stdint.h>
21#include <stdbool.h>
22
25
26#ifdef __cplusplus
27extern "C" {
28#endif
29
38#define BT_LE_CS_CHANNEL_BIT_GET(chmap, bit) (((chmap)[(bit) / 8] >> ((bit) % 8)) & 1)
39
47#define BT_LE_CS_CHANNEL_BIT_SET_VAL(chmap, bit, val) \
48 ((chmap)[(bit) / 8] = ((chmap)[(bit) / 8] & ~BIT((bit) % 8)) | ((val) << ((bit) % 8)))
49
64
82
90
100
110
132
223};
224
232
254
372
393
395 struct {
400 union {
401 struct {
405 struct {
411 };
413
415 struct {
418
420 struct {
423
425 struct {
428
430 struct {
436
438 struct {
454
456 struct {
460
462 struct {
476};
477
487
530
541
553
559
571
580
593
606int bt_le_cs_set_default_settings(struct bt_conn *conn,
607 const struct bt_le_cs_set_default_settings_param *params);
608
620int bt_le_cs_read_remote_fae_table(struct bt_conn *conn);
621
634
655int bt_le_cs_start_test(const struct bt_le_cs_test_param *params);
656
671int bt_le_cs_create_config(struct bt_conn *conn, struct bt_le_cs_create_config_params *params,
672 enum bt_le_cs_create_config_context context);
673
686int bt_le_cs_remove_config(struct bt_conn *conn, uint8_t config_id);
687
700
715void bt_le_cs_step_data_parse(struct net_buf_simple *step_data_buf,
716 bool (*func)(struct bt_le_cs_subevent_step *step, void *user_data),
717 void *user_data);
718
731int bt_le_cs_security_enable(struct bt_conn *conn);
732
737
751int bt_le_cs_procedure_enable(struct bt_conn *conn,
752 const struct bt_le_cs_procedure_enable_param *params);
753
760
761#define BT_LE_CS_PROCEDURE_PREFERRED_PEER_ANTENNA_1 BIT(0)
762#define BT_LE_CS_PROCEDURE_PREFERRED_PEER_ANTENNA_2 BIT(1)
763#define BT_LE_CS_PROCEDURE_PREFERRED_PEER_ANTENNA_3 BIT(2)
764#define BT_LE_CS_PROCEDURE_PREFERRED_PEER_ANTENNA_4 BIT(3)
765
767 /* The ID associated with the desired configuration (0 to 3) */
769
770 /* Max. duration for each CS procedure, where T = N * 0.625 ms (0x0001 to 0xFFFF) */
772
773 /* Min. number of connection events between consecutive CS procedures (0x0001 to 0xFFFF) */
775
776 /* Max. number of connection events between consecutive CS procedures (0x0001 to 0xFFFF) */
778
779 /* Max. number of procedures to be scheduled (0x0000 for no limit; otherwise 0x0001
780 * to 0xFFFF)
781 */
783
784 /* Min. suggested duration for each CS subevent in microseconds (1250 us to 4 s) */
786
787 /* Max. suggested duration for each CS subevent in microseconds (1250 us to 4 s) */
789
790 /* Antenna configuration index */
792
793 /* Phy */
795
796 /* Transmit power delta, in signed dB, to indicate the recommended difference between the
797 * remote device's power level for the CS tones and RTT packets and the existing power
798 * level for the Phy indicated by the Phy parameter (0x80 for no recommendation)
799 */
801
802 /* Preferred peer antenna (Bitmask of BT_LE_CS_PROCEDURE_PREFERRED_PEER_ANTENNA_*) */
804
805 /* Initiator SNR control adjustment */
807
808 /* Reflector SNR control adjustment */
810};
811
824int bt_le_cs_set_procedure_parameters(struct bt_conn *conn,
825 const struct bt_le_cs_set_procedure_parameters_param *params);
826
846int bt_le_cs_set_channel_classification(uint8_t channel_classification[10]);
847
860
875 struct bt_conn *conn, const struct bt_conn_le_cs_capabilities *params);
876
889int bt_le_cs_write_cached_remote_fae_table(struct bt_conn *conn, uint8_t remote_fae_table[72]);
890
891#ifdef __cplusplus
892}
893#endif
894
899#endif /* ZEPHYR_INCLUDE_BLUETOOTH_CS_H_ */
Bluetooth connection handling.
bt_conn_le_cs_sub_mode
Channel sounding sub mode.
Definition conn.h:427
bt_conn_le_cs_role
Channel sounding role.
Definition conn.h:439
bt_conn_le_cs_main_mode
Channel sounding main mode.
Definition conn.h:417
bt_conn_le_cs_chsel_type
Channel sounding channel selection type.
Definition conn.h:475
bt_conn_le_cs_sync_phy
Channel sounding PHY used for CS sync.
Definition conn.h:465
bt_conn_le_cs_tone_antenna_config_selection
CS Test Tone Antennna Config Selection.
Definition conn.h:1557
bt_conn_le_cs_ch3c_shape
Channel sounding channel sequence shape.
Definition conn.h:483
bt_conn_le_cs_procedure_enable_state
Definition conn.h:1525
bt_conn_le_cs_rtt_type
Channel sounding RTT type.
Definition conn.h:447
bt_le_cs_initiator_snr_control
CS Test Initiator SNR control options.
Definition cs.h:92
bt_le_cs_reflector_snr_control
CS Test Reflector SNR control options.
Definition cs.h:102
int bt_le_cs_read_remote_fae_table(struct bt_conn *conn)
Read Remote FAE Table.
bt_le_cs_test_override_4_tone_antenna_permutation
CS Test Override 4 Tone Antenna Permutation.
Definition cs.h:193
bt_le_cs_create_config_context
CS config creation context.
Definition cs.h:479
int bt_le_cs_create_config(struct bt_conn *conn, struct bt_le_cs_create_config_params *params, enum bt_le_cs_create_config_context context)
Create CS configuration.
int bt_le_cs_remove_config(struct bt_conn *conn, uint8_t config_id)
Create CS configuration.
int bt_le_cs_procedure_enable(struct bt_conn *conn, const struct bt_le_cs_procedure_enable_param *params)
CS Procedure Enable.
int bt_le_cs_security_enable(struct bt_conn *conn)
CS Security Enable.
int bt_le_cs_stop_test(void)
Stop ongoing CS Test.
int bt_le_cs_set_default_settings(struct bt_conn *conn, const struct bt_le_cs_set_default_settings_param *params)
Set Channel Sounding default settings.
bt_le_cs_test_override_8_cs_sync_payload_pattern
CS Test Override 8 CS_SYNC Payload Pattern.
Definition cs.h:234
bt_le_cs_test_cs_sync_antenna_selection
CS Test CS_SYNC Antenna Identifier.
Definition cs.h:84
int bt_le_cs_write_cached_remote_fae_table(struct bt_conn *conn, uint8_t remote_fae_table[72])
CS Write Cached Remote FAE Table.
int bt_le_cs_write_cached_remote_supported_capabilities(struct bt_conn *conn, const struct bt_conn_le_cs_capabilities *params)
CS Write Cached Remote Supported Capabilities.
bt_le_cs_procedure_phy
Definition cs.h:754
bt_le_cs_sync_antenna_selection_opt
Definition cs.h:50
int bt_le_cs_read_local_supported_capabilities(struct bt_conn_le_cs_capabilities *ret)
CS Read Local Supported Capabilities.
void bt_le_cs_set_valid_chmap_bits(uint8_t channel_map[10])
Set all valid channel map bits.
bt_le_cs_test_override_7_ss_marker_value
CS Test Override 7 Sounding Sequence Marker Value.
Definition cs.h:226
int bt_le_cs_set_procedure_parameters(struct bt_conn *conn, const struct bt_le_cs_set_procedure_parameters_param *params)
CS Set Procedure Parameters.
int bt_le_cs_start_test(const struct bt_le_cs_test_param *params)
Start a CS test.
int bt_le_cs_read_remote_supported_capabilities(struct bt_conn *conn)
Read Remote Supported Capabilities.
void bt_le_cs_step_data_parse(struct net_buf_simple *step_data_buf, bool(*func)(struct bt_le_cs_subevent_step *step, void *user_data), void *user_data)
Parse CS Subevent Step Data.
int bt_le_cs_test_cb_register(struct bt_le_cs_test_cb cs_test_cb)
Register callbacks for the CS Test mode.
bt_le_cs_test_override_3_pm_tone_ext
CS Test Override 3 T_PM Tone Extension.
Definition cs.h:112
struct bt_le_cs_iq_sample bt_le_cs_parse_pct(const uint8_t pct[3])
Extract in-phase and quadrature terms from HCI-formatted PCT.
int bt_le_cs_set_channel_classification(uint8_t channel_classification[10])
CS Set Channel Classification.
@ BT_LE_CS_INITIATOR_SNR_CONTROL_30dB
Definition cs.h:97
@ BT_LE_CS_INITIATOR_SNR_CONTROL_24dB
Definition cs.h:95
@ BT_LE_CS_INITIATOR_SNR_CONTROL_21dB
Definition cs.h:94
@ BT_LE_CS_INITIATOR_SNR_CONTROL_27dB
Definition cs.h:96
@ BT_LE_CS_INITIATOR_SNR_CONTROL_18dB
Definition cs.h:93
@ BT_LE_CS_INITIATOR_SNR_CONTROL_NOT_USED
Definition cs.h:98
@ BT_LE_CS_REFLECTOR_SNR_CONTROL_27dB
Definition cs.h:106
@ BT_LE_CS_REFLECTOR_SNR_CONTROL_24dB
Definition cs.h:105
@ BT_LE_CS_REFLECTOR_SNR_CONTROL_30dB
Definition cs.h:107
@ BT_LE_CS_REFLECTOR_SNR_CONTROL_NOT_USED
Definition cs.h:108
@ BT_LE_CS_REFLECTOR_SNR_CONTROL_18dB
Definition cs.h:103
@ BT_LE_CS_REFLECTOR_SNR_CONTROL_21dB
Definition cs.h:104
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_15
Definition cs.h:209
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_07
Definition cs.h:201
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_LOOP
Loop through all valid Antenna Permuation Indices starting from the lowest index.
Definition cs.h:221
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_10
Definition cs.h:204
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_13
Definition cs.h:207
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_21
Definition cs.h:215
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_04
Definition cs.h:198
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_12
Definition cs.h:206
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_14
Definition cs.h:208
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_00
Definition cs.h:194
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_03
Definition cs.h:197
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_01
Definition cs.h:195
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_05
Definition cs.h:199
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_18
Definition cs.h:212
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_08
Definition cs.h:202
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_02
Definition cs.h:196
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_17
Definition cs.h:211
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_19
Definition cs.h:213
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_23
Definition cs.h:217
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_20
Definition cs.h:214
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_11
Definition cs.h:205
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_22
Definition cs.h:216
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_06
Definition cs.h:200
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_09
Definition cs.h:203
@ BT_LE_CS_TEST_OVERRIDE_4_ANTENNA_PERMUTATION_INDEX_16
Definition cs.h:210
@ BT_LE_CS_CREATE_CONFIG_CONTEXT_LOCAL_ONLY
Write CS configuration in local Controller only
Definition cs.h:481
@ BT_LE_CS_CREATE_CONFIG_CONTEXT_LOCAL_AND_REMOTE
Write CS configuration in both local and remote Controller using Channel Sounding Configuration proce...
Definition cs.h:485
@ BT_LE_CS_TEST_OVERRIDE_8_PAYLOAD_PATTERN_11110000
Repeated '11110000' payload sequence.
Definition cs.h:238
@ BT_LE_CS_TEST_OVERRIDE_8_PAYLOAD_PATTERN_00000000
Repeated '00000000' payload sequence.
Definition cs.h:246
@ BT_LE_CS_TEST_OVERRIDE_8_PAYLOAD_PATTERN_PRBS15
PRBS15 payload sequence.
Definition cs.h:242
@ BT_LE_CS_TEST_OVERRIDE_8_PAYLOAD_PATTERN_PRBS9
PRBS9 payload sequence.
Definition cs.h:236
@ BT_LE_CS_TEST_OVERRIDE_8_PAYLOAD_PATTERN_00001111
Repeated '00001111' payload sequence.
Definition cs.h:248
@ BT_LE_CS_TEST_OVERRIDE_8_PAYLOAD_PATTERN_01010101
Repeated '01010101' payload sequence.
Definition cs.h:250
@ BT_LE_CS_TEST_OVERRIDE_8_PAYLOAD_PATTERN_11111111
Repeated '11111111' payload sequence.
Definition cs.h:244
@ BT_LE_CS_TEST_OVERRIDE_8_PAYLOAD_PATTERN_10101010
Repeated '10101010' payload sequence.
Definition cs.h:240
@ BT_LE_CS_TEST_OVERRIDE_8_PAYLOAD_PATTERN_USER
Custom payload provided by the user.
Definition cs.h:252
@ BT_LE_CS_TEST_CS_SYNC_ANTENNA_SELECTION_ONE
Definition cs.h:85
@ BT_LE_CS_TEST_CS_SYNC_ANTENNA_SELECTION_FOUR
Definition cs.h:88
@ BT_LE_CS_TEST_CS_SYNC_ANTENNA_SELECTION_THREE
Definition cs.h:87
@ BT_LE_CS_TEST_CS_SYNC_ANTENNA_SELECTION_TWO
Definition cs.h:86
@ BT_LE_CS_PROCEDURE_PHY_CODED_S8
Definition cs.h:757
@ BT_LE_CS_PROCEDURE_PHY_CODED_S2
Definition cs.h:758
@ BT_LE_CS_PROCEUDRE_PHY_2M
Definition cs.h:756
@ BT_LE_CS_PROCEDURE_PHY_1M
Definition cs.h:755
@ BT_LE_CS_ANTENNA_SELECTION_OPT_THREE
Use antenna identifier 3 for CS_SYNC packets.
Definition cs.h:56
@ BT_LE_CS_ANTENNA_SELECTION_OPT_ONE
Use antenna identifier 1 for CS_SYNC packets.
Definition cs.h:52
@ BT_LE_CS_ANTENNA_SELECTION_OPT_TWO
Use antenna identifier 2 for CS_SYNC packets.
Definition cs.h:54
@ BT_LE_CS_ANTENNA_SELECTION_OPT_NO_RECOMMENDATION
No recommendation for local controller antenna selection.
Definition cs.h:62
@ BT_LE_CS_ANTENNA_SELECTION_OPT_REPETITIVE
Use antennas in repetitive order from 1 to 4 for CS_SYNC packets.
Definition cs.h:60
@ BT_LE_CS_ANTENNA_SELECTION_OPT_FOUR
Use antenna identifier 4 for CS_SYNC packets.
Definition cs.h:58
@ BT_LE_CS_TEST_OVERRIDE_7_SS_MARKER_VAL_LOOP
Loop through pattern '0011' and '1100' (in transmission order)
Definition cs.h:230
@ BT_LE_CS_TEST_OVERRIDE_7_SS_MARKER_VAL_1100
Definition cs.h:228
@ BT_LE_CS_TEST_OVERRIDE_7_SS_MARKER_VAL_0011
Definition cs.h:227
@ BT_LE_CS_TEST_OVERRIDE_3_REPETITIVE_TONE_EXT
Applicable for mode-2 and mode-3 only:
Definition cs.h:130
@ BT_LE_CS_TEST_OVERRIDE_3_NO_TONE_EXT
Initiator and reflector tones sent without tone extension.
Definition cs.h:114
@ BT_LE_CS_TEST_OVERRIDE_3_REFLECTOR_TONE_EXT_ONLY
Initiator tone sent without extension, reflector tone sent with tone extension.
Definition cs.h:118
@ BT_LE_CS_TEST_OVERRIDE_3_INITIATOR_AND_REFLECTOR_TONE_EXT
Initiator and reflector tones sent with tone extension.
Definition cs.h:120
@ BT_LE_CS_TEST_OVERRIDE_3_INITIATOR_TONE_EXT_ONLY
Initiator tone sent with extension, reflector tone sent without tone extension.
Definition cs.h:116
#define BT_HCI_OP_LE_CS_PROCEDURE_PHY_2M
Definition hci_types.h:2511
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_04
Definition hci_types.h:2621
#define BT_HCI_OP_LE_CS_TEST_PAYLOAD_00000000
Definition hci_types.h:2654
#define BT_HCI_OP_LE_CS_TEST_TONE_EXT_INIT
Definition hci_types.h:2612
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_13
Definition hci_types.h:2630
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_17
Definition hci_types.h:2634
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_10
Definition hci_types.h:2627
#define BT_HCI_OP_LE_CS_INITIATOR_SNR_21
Definition hci_types.h:2582
#define BT_HCI_OP_LE_CS_TEST_SS_MARKER_VAL_LOOP
Definition hci_types.h:2647
#define BT_HCI_OP_LE_CS_PROCEDURE_PHY_CODED_S8
Definition hci_types.h:2512
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_03
Definition hci_types.h:2620
#define BT_HCI_OP_LE_CS_PROCEDURE_PHY_1M
Definition hci_types.h:2510
#define BT_HCI_OP_LE_CS_REFLECTOR_SNR_21
Definition hci_types.h:2589
#define BT_HCI_OP_LE_CS_TEST_SS_MARKER_VAL_0011
Definition hci_types.h:2645
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_21
Definition hci_types.h:2638
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_12
Definition hci_types.h:2629
#define BT_HCI_OP_LE_CS_TEST_PAYLOAD_PRBS9
Definition hci_types.h:2649
#define BT_HCI_OP_LE_CS_TEST_TONE_EXT_REPEAT
Definition hci_types.h:2615
#define BT_HCI_OP_LE_CS_REFLECTOR_SNR_30
Definition hci_types.h:2592
#define BT_HCI_OP_LE_CS_TEST_PAYLOAD_01010101
Definition hci_types.h:2656
#define BT_HCI_OP_LE_CS_TEST_SS_MARKER_VAL_1100
Definition hci_types.h:2646
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_19
Definition hci_types.h:2636
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_06
Definition hci_types.h:2623
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_02
Definition hci_types.h:2619
#define BT_HCI_OP_LE_CS_PROCEDURE_PHY_CODED_S2
Definition hci_types.h:2513
#define BT_HCI_OP_LE_CS_ANTENNA_SEL_ONE
Definition hci_types.h:2479
#define BT_HCI_OP_LE_CS_INITIATOR_SNR_NOT_USED
Definition hci_types.h:2586
#define BT_HCI_OP_LE_CS_ANTENNA_SEL_THREE
Definition hci_types.h:2481
#define BT_HCI_OP_LE_CS_REFLECTOR_SNR_24
Definition hci_types.h:2590
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_11
Definition hci_types.h:2628
#define BT_HCI_OP_LE_CS_TEST_PAYLOAD_PRBS15
Definition hci_types.h:2652
#define BT_HCI_OP_LE_CS_TEST_PAYLOAD_USER
Definition hci_types.h:2657
#define BT_HCI_OP_LE_CS_REFLECTOR_SNR_NOT_USED
Definition hci_types.h:2593
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_08
Definition hci_types.h:2625
#define BT_HCI_OP_LE_CS_TEST_TONE_EXT_NONE
Definition hci_types.h:2611
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_18
Definition hci_types.h:2635
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_01
Definition hci_types.h:2618
#define BT_HCI_OP_LE_CS_TEST_TONE_EXT_REFL
Definition hci_types.h:2613
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_00
Definition hci_types.h:2617
#define BT_HCI_OP_LE_CS_ANTENNA_SEL_TWO
Definition hci_types.h:2480
#define BT_HCI_OP_LE_CS_TEST_PAYLOAD_11111111
Definition hci_types.h:2653
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_15
Definition hci_types.h:2632
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_22
Definition hci_types.h:2639
#define BT_HCI_OP_LE_CS_TEST_PAYLOAD_00001111
Definition hci_types.h:2655
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_14
Definition hci_types.h:2631
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_LOOP
Definition hci_types.h:2641
#define BT_HCI_OP_LE_CS_INITIATOR_SNR_27
Definition hci_types.h:2584
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_07
Definition hci_types.h:2624
#define BT_HCI_OP_LE_CS_INITIATOR_SNR_30
Definition hci_types.h:2585
#define BT_HCI_OP_LE_CS_TEST_TONE_EXT_BOTH
Definition hci_types.h:2614
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_05
Definition hci_types.h:2622
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_16
Definition hci_types.h:2633
#define BT_HCI_OP_LE_CS_TEST_PAYLOAD_10101010
Definition hci_types.h:2651
#define BT_HCI_OP_LE_CS_REFLECTOR_SNR_27
Definition hci_types.h:2591
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_09
Definition hci_types.h:2626
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_20
Definition hci_types.h:2637
#define BT_HCI_OP_LE_CS_INITIATOR_SNR_24
Definition hci_types.h:2583
#define BT_HCI_OP_LE_CS_ANTENNA_SEL_NONE
Definition hci_types.h:2484
#define BT_HCI_OP_LE_CS_REFLECTOR_SNR_18
Definition hci_types.h:2588
#define BT_HCI_OP_LE_CS_ANTENNA_SEL_FOUR
Definition hci_types.h:2482
#define BT_HCI_OP_LE_CS_TEST_PAYLOAD_11110000
Definition hci_types.h:2650
#define BT_HCI_OP_LE_CS_INITIATOR_SNR_18
Definition hci_types.h:2581
#define BT_HCI_OP_LE_CS_ANTENNA_SEL_REP
Definition hci_types.h:2483
#define BT_HCI_OP_LE_CS_TEST_AP_INDEX_23
Definition hci_types.h:2640
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
__INT8_TYPE__ int8_t
Definition stdint.h:72
__INT16_TYPE__ int16_t
Definition stdint.h:73
Remote channel sounding capabilities for LE connections supporting CS.
Definition conn.h:296
Subevent data for LE connections supporting CS.
Definition conn.h:579
CS Create Config params.
Definition cs.h:489
enum bt_conn_le_cs_rtt_type rtt_type
RTT type.
Definition cs.h:510
enum bt_conn_le_cs_ch3c_shape ch3c_shape
User-specified channel sequence shape.
Definition cs.h:520
enum bt_conn_le_cs_sub_mode sub_mode_type
Sub CS mode type.
Definition cs.h:495
enum bt_conn_le_cs_role role
CS role.
Definition cs.h:508
enum bt_conn_le_cs_main_mode main_mode_type
Main CS mode type.
Definition cs.h:493
enum bt_conn_le_cs_sync_phy cs_sync_phy
CS Sync PHY.
Definition cs.h:512
uint8_t id
CS configuration ID.
Definition cs.h:491
uint8_t channel_map_repetition
The number of times the Channel_Map field will be cycled through for non-mode-0 steps within a CS pro...
Definition cs.h:516
uint8_t main_mode_repetition
Number of main mode steps taken from the end of the last CS subevent to be repeated at the beginning ...
Definition cs.h:504
uint8_t max_main_mode_steps
Maximum number of CS main mode steps to be executed before a submode step is executed.
Definition cs.h:499
enum bt_conn_le_cs_chsel_type channel_selection_type
Channel selection type.
Definition cs.h:518
uint8_t ch3c_jump
Number of channels skipped in each rising and falling sequence
Definition cs.h:522
uint8_t channel_map[10]
Channel map used for CS procedure Channels n = 0, 1, 23, 24, 25, 77, and 78 are not allowed and shall...
Definition cs.h:528
uint8_t min_main_mode_steps
Minimum number of CS main mode steps to be executed before a submode step is executed.
Definition cs.h:497
uint8_t mode_0_steps
Number of CS mode-0 steps to be included at the beginning of each CS subevent.
Definition cs.h:506
Sign-extended IQ value extracted from step data.
Definition cs.h:555
int16_t q
Definition cs.h:557
int16_t i
Definition cs.h:556
enum bt_conn_le_cs_procedure_enable_state enable
Definition cs.h:735
uint8_t config_id
Definition cs.h:734
Default CS settings in the local Controller.
Definition cs.h:66
int8_t max_tx_power
Maximum output power (Effective Isotropic Radiated Power) to be used for all CS transmissions.
Definition cs.h:80
enum bt_le_cs_sync_antenna_selection_opt cs_sync_antenna_selection
Antenna identifier to be used for CS_SYNC packets by the local controller.
Definition cs.h:73
bool enable_initiator_role
Enable CS initiator role.
Definition cs.h:68
bool enable_reflector_role
Enable CS reflector role.
Definition cs.h:70
uint32_t max_subevent_len
Definition cs.h:788
uint8_t config_id
Definition cs.h:768
enum bt_le_cs_reflector_snr_control snr_control_reflector
Definition cs.h:809
enum bt_conn_le_cs_tone_antenna_config_selection tone_antenna_config_selection
Definition cs.h:791
enum bt_le_cs_initiator_snr_control snr_control_initiator
Definition cs.h:806
uint16_t max_procedure_count
Definition cs.h:782
enum bt_le_cs_procedure_phy phy
Definition cs.h:794
uint16_t min_procedure_interval
Definition cs.h:774
uint16_t max_procedure_len
Definition cs.h:771
uint8_t preferred_peer_antenna
Definition cs.h:803
uint32_t min_subevent_len
Definition cs.h:785
int8_t tx_power_delta
Definition cs.h:800
uint16_t max_procedure_interval
Definition cs.h:777
Subevent result step.
Definition cs.h:543
uint8_t data_len
Length of role- and mode-specific information being reported.
Definition cs.h:549
const uint8_t * data
Pointer to role- and mode-specific information.
Definition cs.h:551
uint8_t channel
CS step channel index.
Definition cs.h:547
uint8_t mode
CS step mode.
Definition cs.h:545
Callbacks for CS Test.
Definition cs.h:532
void(* le_cs_test_subevent_data_available)(struct bt_conn_le_cs_subevent_result *data)
CS Test Subevent data.
Definition cs.h:537
void(* le_cs_test_end_complete)(void)
CS Test End Complete.
Definition cs.h:539
CS Test parameters.
Definition cs.h:256
uint8_t t_ip1_time
Interlude time in microseconds between the RTT packets.
Definition cs.h:315
struct bt_le_cs_test_param::@97::@105::@107 set
uint8_t ss_marker2_position
Bit number where the second marker in the channel sounding sequence starts.
Definition cs.h:452
uint16_t override_config
Override configuration.
Definition cs.h:392
uint8_t ss_marker1_position
Bit number where the first marker in the channel sounding sequence starts.
Definition cs.h:443
enum bt_le_cs_initiator_snr_control initiator_snr_control
Initiator SNR control options.
Definition cs.h:367
uint16_t subevent_interval
Gap between the start of two consecutive CS subevents (N * 0.625 ms)
Definition cs.h:285
uint8_t t_ip2_time
Interlude time in microseconds between the CS tones.
Definition cs.h:328
uint8_t main_mode_steps
Definition cs.h:416
enum bt_le_cs_test_override_4_tone_antenna_permutation tone_antenna_permutation
Definition cs.h:426
enum bt_le_cs_reflector_snr_control reflector_snr_control
Reflector SNR control options.
Definition cs.h:369
uint32_t cs_sync_aa_initiator
Access Address used in CS_SYNC packets sent by the initiator.
Definition cs.h:432
uint16_t drbg_nonce
Determines octets 14 and 15 of the initial value of the DRBG nonce.
Definition cs.h:371
enum bt_conn_le_cs_sync_phy cs_sync_phy
CS_SYNC PHY.
Definition cs.h:273
struct bt_le_cs_test_param::@97 override_config_0
override config bit 0.
uint8_t transmit_power_level
Desired TX power level for the CS procedure.
Definition cs.h:302
uint8_t channel_map_repetition
Number of times the channels indicated by the channel map or channel field are cycled through for non...
Definition cs.h:399
uint8_t channel_map[10]
Definition cs.h:406
struct bt_le_cs_test_param::@102 override_config_6
Override config bit 6.
enum bt_conn_le_cs_ch3c_shape ch3c_shape
Definition cs.h:408
struct bt_le_cs_test_param::@103 override_config_7
Override config bit 7.
enum bt_conn_le_cs_sub_mode sub_mode
CS sub-mode to be used during the CS procedure.
Definition cs.h:260
struct bt_le_cs_test_param::@101 override_config_5
Override config bit 5.
struct bt_le_cs_test_param::@104 override_config_8
Override config bit 8.
uint32_t subevent_len
CS subevent length in microseconds.
Definition cs.h:280
enum bt_conn_le_cs_role role
CS Test role.
Definition cs.h:269
uint8_t cs_sync_user_payload[16]
User payload for CS_SYNC packets.
Definition cs.h:474
uint8_t mode_0_steps
Number of CS mode-0 steps at the beginning of the test CS subevent.
Definition cs.h:267
uint8_t t_fcs_time
Time in microseconds for frequency changes.
Definition cs.h:343
uint8_t t_pm_time
Time in microseconds for the phase measurement period of the CS tones.
Definition cs.h:351
enum bt_le_cs_test_override_3_pm_tone_ext t_pm_tone_ext
Definition cs.h:421
enum bt_conn_le_cs_main_mode main_mode
CS mode to be used during the CS procedure.
Definition cs.h:258
uint8_t t_sw_time
Time in microseconds for the antenna switch period of the CS tones.
Definition cs.h:361
struct bt_le_cs_test_param::@98 override_config_2
Override config bit 2.
struct bt_le_cs_test_param::@97::@105::@108 not_set
uint8_t ch3c_jump
Definition cs.h:409
enum bt_le_cs_test_override_7_ss_marker_value ss_marker_value
Value of the Sounding Sequence marker.
Definition cs.h:458
uint8_t max_num_subevents
Maximum allowed number of subevents in the procedure.
Definition cs.h:290
enum bt_conn_le_cs_rtt_type rtt_type
RTT variant.
Definition cs.h:271
struct bt_le_cs_test_param::@99 override_config_3
Override config bit 3.
uint8_t main_mode_repetition
Number of main mode steps taken from the end of the last CS subevent to be repeated at the beginning ...
Definition cs.h:265
uint8_t num_channels
Definition cs.h:402
struct bt_le_cs_test_param::@100 override_config_4
Override config bit 4.
enum bt_le_cs_test_override_8_cs_sync_payload_pattern cs_sync_payload_pattern
CS_SYNC payload pattern selection.
Definition cs.h:464
enum bt_conn_le_cs_chsel_type channel_selection_type
Definition cs.h:407
uint32_t cs_sync_aa_reflector
Access Address used in CS_SYNC packets sent by the reflector.
Definition cs.h:434
uint8_t * channels
Definition cs.h:403
enum bt_le_cs_test_cs_sync_antenna_selection cs_sync_antenna_selection
Antenna identifier to be used for CS_SYNC packets.
Definition cs.h:275
enum bt_conn_le_cs_tone_antenna_config_selection tone_antenna_config_selection
Antenna Configuration Index used during antenna switching during the tone phases of CS steps.
Definition cs.h:365
Simple network buffer representation.
Definition net_buf.h:89