CTE Transmitter (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.

cte_transmitter commands

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.

C API

/* Function */
struct gecko_msg_cte_transmitter_clear_dtm_parameters_rsp_t *gecko_cmd_cte_transmitter_clear_dtm_parameters();

/* Response id */
gecko_rsp_cte_transmitter_clear_dtm_parameters_id

/* Response structure */
struct gecko_msg_cte_transmitter_clear_dtm_parameters_rsp_t
{
  uint16 result;
}

Command does not have parameters (for BGAPI headers refer to link)

Response Parameters (for BGAPI headers refer to link)

Type Name Description
uint16 result Result code
  • 0: success
  • Non-zero: an error has occurred
For other values see Error codes

cte_transmitter_disable_connection_cte

Disable CTE responses on a connection.

C API

/* Function */
struct gecko_msg_cte_transmitter_disable_connection_cte_rsp_t *gecko_cmd_cte_transmitter_disable_connection_cte(uint8 connection);

/* Response id */
gecko_rsp_cte_transmitter_disable_connection_cte_id

/* Response structure */
struct gecko_msg_cte_transmitter_disable_connection_cte_rsp_t
{
  uint16 result;
}

Command Parameters (for BGAPI headers refer to link)

Type Name Description
uint8 connection Connection handle

Response Parameters (for BGAPI headers refer to link)

Type Name Description
uint16 result Result code
  • 0: success
  • Non-zero: an error has occurred
For other values see Error codes

cte_transmitter_disable_connectionless_cte

Stop the connectionless CTE transmit.

C API

/* Function */
struct gecko_msg_cte_transmitter_disable_connectionless_cte_rsp_t *gecko_cmd_cte_transmitter_disable_connectionless_cte(uint8 handle);

/* Response id */
gecko_rsp_cte_transmitter_disable_connectionless_cte_id

/* Response structure */
struct gecko_msg_cte_transmitter_disable_connectionless_cte_rsp_t
{
  uint16 result;
}

Command Parameters (for BGAPI headers refer to link)

Type Name Description
uint8 handle Periodic advertising handle

Response Parameters (for BGAPI headers refer to link)

Type Name Description
uint16 result Result code
  • 0: success
  • Non-zero: an error has occurred
For other values see Error codes

cte_transmitter_disable_silabs_cte

Disable Silicon Labs CTE transmit.

C API

/* Function */
struct gecko_msg_cte_transmitter_disable_silabs_cte_rsp_t *gecko_cmd_cte_transmitter_disable_silabs_cte(uint8 handle);

/* Response id */
gecko_rsp_cte_transmitter_disable_silabs_cte_id

/* Response structure */
struct gecko_msg_cte_transmitter_disable_silabs_cte_rsp_t
{
  uint16 result;
}

Command Parameters (for BGAPI headers refer to link)

Type Name Description
uint8 handle Advertising handle

Response Parameters (for BGAPI headers refer to link)

Type Name Description
uint16 result Result code
  • 0: success
  • Non-zero: an error has occurred
For other values see Error codes

cte_transmitter_enable_connection_cte

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.

C API

/* Function */
struct gecko_msg_cte_transmitter_enable_connection_cte_rsp_t *gecko_cmd_cte_transmitter_enable_connection_cte(uint8 connection, uint8 cte_types, uint8 switching_pattern_len, const uint8 *switching_pattern_data);

/* Response id */
gecko_rsp_cte_transmitter_enable_connection_cte_id

/* Response structure */
struct gecko_msg_cte_transmitter_enable_connection_cte_rsp_t
{
  uint16 result;
}

Command Parameters (for BGAPI headers refer to link)

Type Name Description
uint8 connection Connection handle
uint8 cte_types CTE 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
uint8 switching_pattern_len Array length.
uint8array switching_pattern_data 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.

Response Parameters (for BGAPI headers refer to link)

Type Name Description
uint16 result Result code
  • 0: success
  • Non-zero: an error has occurred
For other values see Error codes

cte_transmitter_enable_connectionless_cte

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.

C API

/* Function */
struct gecko_msg_cte_transmitter_enable_connectionless_cte_rsp_t *gecko_cmd_cte_transmitter_enable_connectionless_cte(uint8 handle, uint8 cte_length, uint8 cte_type, uint8 cte_count, uint8 switching_pattern_len, const uint8 *switching_pattern_data);

/* Response id */
gecko_rsp_cte_transmitter_enable_connectionless_cte_id

/* Response structure */
struct gecko_msg_cte_transmitter_enable_connectionless_cte_rsp_t
{
  uint16 result;
}

Command Parameters (for BGAPI headers refer to link)

Type Name Description
uint8 handle Periodic advertising handle
uint8 cte_length CTE length in 8 us units.
  • Range: 0x02 to 0x14
  • Time Range: 16 us to 160 us
uint8 cte_type CTE type
  • 0: AoA CTE
  • 1: AoD CTE with 1 us slots
  • 2: AoD CTE with 2 us slots
uint8 cte_count The number of CTEs to be transmitted in each periodic advertising interval
uint8 switching_pattern_len Array length.
uint8array switching_pattern_data 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.

Response Parameters (for BGAPI headers refer to link)

Type Name Description
uint16 result Result code
  • 0: success
  • Non-zero: an error has occurred
For other values see Error codes

cte_transmitter_enable_silabs_cte

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.

C API

/* Function */
struct gecko_msg_cte_transmitter_enable_silabs_cte_rsp_t *gecko_cmd_cte_transmitter_enable_silabs_cte(uint8 handle, uint8 cte_length, uint8 cte_type, uint8 cte_count, uint8 switching_pattern_len, const uint8 *switching_pattern_data);

/* Response id */
gecko_rsp_cte_transmitter_enable_silabs_cte_id

/* Response structure */
struct gecko_msg_cte_transmitter_enable_silabs_cte_rsp_t
{
  uint16 result;
}

Command Parameters (for BGAPI headers refer to link)

Type Name Description
uint8 handle Advertising handle
uint8 cte_length CTE length in 8 us units.
  • Range: 0x02 to 0x14
  • Time Range: 16 us to 160 us
uint8 cte_type CTE type
  • 0: AoA CTE
  • 1: AoD CTE with 1 us slots
  • 2: AoD CTE with 2 us slots
uint8 cte_count The number of CTEs to be transmitted in each extended advertising interval. Currently only cte_count = 1 is supported.
uint8 switching_pattern_len Array length.
uint8array switching_pattern_data 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.

Response Parameters (for BGAPI headers refer to link)

Type Name Description
uint16 result Result code
  • 0: success
  • Non-zero: an error has occurred
For other values see Error codes

cte_transmitter_set_dtm_parameters

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

C API

/* Function */
struct gecko_msg_cte_transmitter_set_dtm_parameters_rsp_t *gecko_cmd_cte_transmitter_set_dtm_parameters(uint8 cte_length, uint8 cte_type, uint8 switching_pattern_len, const uint8 *switching_pattern_data);

/* Response id */
gecko_rsp_cte_transmitter_set_dtm_parameters_id

/* Response structure */
struct gecko_msg_cte_transmitter_set_dtm_parameters_rsp_t
{
  uint16 result;
}

Command Parameters (for BGAPI headers refer to link)

Type Name Description
uint8 cte_length Length of the Constant Tone Extension in 8 us units
  • 0: No CTE
  • 0x02 to 0x14: CTE length
Default: 0 (no CTE)
uint8 cte_type CTE type
  • 0: AoA CTE
  • 1: AoD CTE with 1 us slots
  • 2: AoD CTE with 2 us slots
Default: 0
uint8 switching_pattern_len Array length.
uint8array switching_pattern_data 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.

Response Parameters (for BGAPI headers refer to link)

Type Name Description
uint16 result Result code
  • 0: success
  • Non-zero: an error has occurred
For other values see Error codes