CTE Transmitter#

CTE Transmitter.

Functions

sl_status_t

sl_bt_cte_transmitter_set_dtm_parameters (uint8_t cte_length, uint8_t cte_type, size_t switching_pattern_len, const uint8_t *switching_pattern)

sl_status_t

sl_bt_cte_transmitter_clear_dtm_parameters ()

sl_status_t

sl_bt_cte_transmitter_enable_connection_cte (uint8_t connection, uint8_t cte_types, size_t switching_pattern_len, const uint8_t *switching_pattern)

sl_status_t

sl_bt_cte_transmitter_disable_connection_cte (uint8_t connection)

sl_status_t

sl_bt_cte_transmitter_enable_connectionless_cte (uint8_t handle, uint8_t cte_length, uint8_t cte_type, uint8_t cte_count, size_t switching_pattern_len, const uint8_t *switching_pattern)

sl_status_t

sl_bt_cte_transmitter_disable_connectionless_cte (uint8_t handle)

sl_status_t

sl_bt_cte_transmitter_enable_silabs_cte (uint8_t handle, uint8_t cte_length, uint8_t cte_type, uint8_t cte_count, size_t switching_pattern_len, const uint8_t *switching_pattern)

sl_status_t

sl_bt_cte_transmitter_disable_silabs_cte (uint8_t handle)

Detailed Description#

CTE Transmitter.

Commands and events in this class manage Constant Tone Extension (CTE) transmission.

CTE feature is only supported by specific devices. Commands from this class will return bg_err_not_supported on devices that do not support CTE.

Function Documentation#

sl_bt_cte_transmitter_set_dtm_parameters()#

sl_status_t sl_bt_cte_transmitter_set_dtm_parameters

(

uint8_t

cte_length,

uint8_t

cte_type,

size_t

switching_pattern_len,

const uint8_t *

switching_pattern

)

Set the CTE-related parameters of the LE transmitter test.

Parameters

[in]

cte_length

Length of the Constant Tone Extension in 8 us units

  • 0: No CTE

  • 1: 0x02 to 0x14: CTE length

Default: 0 (no CTE)

[in]

cte_type

CTE type

  • 0: AoA CTE

  • 1: AoD CTE with 1 us slots

  • 2: AoD CTE with 2 us slots

Default: 0

[in]

switching_pattern_len

Array length

[in]

switching_pattern

Antenna switching pattern. Antennas will be switched in this order with the antenna switch pins during CTE. If the CTE is longer than the switching pattern, the pattern starts over. Default is the empty array.

Returns

SL_STATUS_OK if successful. Error code otherwise.


sl_bt_cte_transmitter_clear_dtm_parameters()#

sl_status_t sl_bt_cte_transmitter_clear_dtm_parameters ()

Clear CTE-related parameters that were previously set for LE transmitter test. Default values will be restored for these parameters.

Returns

SL_STATUS_OK if successful. Error code otherwise.


sl_bt_cte_transmitter_enable_connection_cte()#

sl_status_t sl_bt_cte_transmitter_enable_connection_cte

(

uint8_t

connection,

uint8_t

cte_types,

size_t

switching_pattern_len,

const uint8_t *

switching_pattern

)

Enable different types of CTE responses on a connection. CTE response will be sent once requested by the peer device using the CTE Request procedure.

Parameters

[in]

connection

Connection handle

[in]

cte_types

TE types. Bitmask of the following:

  • Bit 0: AoA CTE response

  • Bit 1: AoD CTE response with 1 us slots

  • Bit 2: AoD CTE response with 2 us slots

[in]

switching_pattern_len

Array length

[in]

switching_pattern

Antenna switching pattern. Antennas will be switched in this order with the antenna switch pins during CTE. If the CTE is longer than the switching pattern, the pattern starts over.

Returns

SL_STATUS_OK if successful. Error code otherwise.


sl_bt_cte_transmitter_disable_connection_cte()#

sl_status_t sl_bt_cte_transmitter_disable_connection_cte ( uint8_t connection )

Disable CTE responses on a connection.

Parameters

[in]

connection

Connection handle

Returns

SL_STATUS_OK if successful. Error code otherwise.


sl_bt_cte_transmitter_enable_connectionless_cte()#

sl_status_t sl_bt_cte_transmitter_enable_connectionless_cte

(

uint8_t

handle,

uint8_t

cte_length,

uint8_t

cte_type,

uint8_t

cte_count,

size_t

switching_pattern_len,

const uint8_t *

switching_pattern

)

Start connectionless CTE transmit. CTEs will be transmitted in periodic advertisement packets. As a result, a periodic advertising has to be started prior this command.

Parameters

[in]

handle

Periodic advertising handle

[in]

cte_length

CTE length in 8 us units.

  • Range: 0x02 to 0x14

  • Time Range: 16 us to 160 us

[in]

cte_type

CTE type

  • 0: AoA CTE

  • 1: AoD CTE with 1 us slots

  • 2: AoD CTE with 2 us slots

[in]

cte_count

The number of CTEs to be transmitted in each periodic advertising interval

[in]

switching_pattern_len

Array length

[in]

switching_pattern

Antenna switching pattern. Antennas will be switched in this order with the antenna switch pins during CTE. If the CTE is longer than the switching pattern, the pattern starts over.

Returns

SL_STATUS_OK if successful. Error code otherwise.


sl_bt_cte_transmitter_disable_connectionless_cte()#

sl_status_t sl_bt_cte_transmitter_disable_connectionless_cte ( uint8_t handle )

Stop the connectionless CTE transmit.

Parameters

[in]

handle

Periodic advertising handle

Returns

SL_STATUS_OK if successful. Error code otherwise.


sl_bt_cte_transmitter_enable_silabs_cte()#

sl_status_t sl_bt_cte_transmitter_enable_silabs_cte

(

uint8_t

handle,

uint8_t

cte_length,

uint8_t

cte_type,

uint8_t

cte_count,

size_t

switching_pattern_len,

const uint8_t *

switching_pattern

)

Enable Silicon Labs CTE transmit. CTEs will be transmitted in extended advertisement packets. As a result, extended advertising has to be started prior this command.

Parameters

[in]

handle

Advertising handle

[in]

cte_length

CTE length in 8 us units.

  • Range: 0x02 to 0x14

  • Time Range: 16 us to 160 us

[in]

cte_type

CTE type

  • 0: AoA CTE

  • 1: AoD CTE with 1 us slots

  • 2: AoD CTE with 2 us slots

[in]

cte_count

The number of CTEs to be transmitted in each extended advertising interval. Currently only cte_count = 1 is supported.

[in]

switching_pattern_len

Array length

[in]

switching_pattern

Antenna switching pattern. Antennas will be switched in this order with the antenna switch pins during CTE. If the CTE is longer than the switching pattern, the pattern starts over.

Returns

SL_STATUS_OK if successful. Error code otherwise.


sl_bt_cte_transmitter_disable_silabs_cte()#

sl_status_t sl_bt_cte_transmitter_disable_silabs_cte ( uint8_t handle )

Disable Silicon Labs CTE transmit.

Parameters

[in]

handle

Advertising handle

Returns

SL_STATUS_OK if successful. Error code otherwise.