Coexistence#

Coexistence.

Enumerations#


enum | sl_bt_coex_option_t { sl_bt_coex_option_enable = 0x100, sl_bt_coex_option_tx_abort = 0x400, sl_bt_coex_option_high_priority = 0x800 } | Coexistence configuration options.

Functions#


sl_status_t | sl_bt_coex_set_options (uint32_t mask, uint32_t options)

sl_status_t | sl_bt_coex_set_parameters (uint8_t priority, uint8_t request, uint8_t pwm_period, uint8_t pwm_dutycycle)

sl_status_t | sl_bt_coex_set_directional_priority_pulse (uint8_t pulse)

sl_status_t | sl_bt_coex_get_counters (uint8_t reset, size_t max_counters_size, size_t *counters_len, uint8_t *counters)

Detailed Description#

Coexistence.

Coexistence BGAPI class. Coexistence interface is enabled and initialized with sl_bt_init_coex_hal function.

Enumeration Type Documentation#

◆ sl_bt_coex_option_t#

enum sl_bt_coex_option_t#

Coexistence configuration options.

Enumerator#

sl_bt_coex_option_enable |

(0x100) Enable coexistence feature

sl_bt_coex_option_tx_abort |

(0x400) Abort transmission if grant is denied

sl_bt_coex_option_high_priority |

(0x800) Enable priority signal

Function Documentation#

◆ sl_bt_coex_set_options()#

sl_status_t sl_bt_coex_set_options

(

uint32_t

mask,

uint32_t

options

)

Configure coexistence options at runtime.

Parameters

 [in]| `mask`| Enum [sl_bt_coex_option_t](/bluetooth/<docspace-docleaf-version>/bluetooth-commnd-events-coexistence/#ga35af928f08226b258ebee855f287f7e5). Mask defines which coexistence options are changed.

---|---|--- [in]| options| Enum sl_bt_coex_option_t. Value of options to be changed. This parameter is used together with the mask parameter.

Returns

SL_STATUS_OK if successful. Error code otherwise.

◆ sl_bt_coex_set_parameters()#

sl_status_t sl_bt_coex_set_parameters

(

uint8_t

priority,

uint8_t

request,

uint8_t

pwm_period,

uint8_t

pwm_dutycycle

)

Configure coexistence parameters.

Parameters

 [in]| `priority`| Coexistence priority threshold. Coexistence priority is toggled if priority is below this value.

---|---|--- [in]| request| Coexistence request threshold. Coexistence request is toggled if priority is below this value. [in]| pwm_period| PWM functionality period length in 1 ms units [in]| pwm_dutycycle| PWM functionality duty cycle in percentage

Returns

SL_STATUS_OK if successful. Error code otherwise.

◆ sl_bt_coex_set_directional_priority_pulse()#

sl_status_t sl_bt_coex_set_directional_priority_pulse | ( | uint8_t | pulse| ) | ---|---|---|---|---|---

Set Directional Priority Pulse Width

Parameters

 [in]| `pulse`| Directional priority pulse width in us

---|---|---

Returns

SL_STATUS_OK if successful. Error code otherwise.

◆ sl_bt_coex_get_counters()#

sl_status_t sl_bt_coex_get_counters

(

uint8_t

reset,

size_t

max_counters_size,

size_t *

counters_len,

uint8_t *

counters

)

Read coexistence statistic counters from the device. Response contains the list of uint32 type counter values. Counters in the list are in following order: low priority requested, high priority requested, low priority denied, high priority denied, low-priority TX aborted, and high-priority TX aborted. Passing a non-zero value also resets counters.

Parameters

 [in]| `reset`| Reset counters if parameter value is not zero.

---|---|--- [in]| max_counters_size| Size of output buffer passed in counters [out]| counters_len| On return, set to the length of output data written to counters [out]| counters| Coexistence statistic counters

Returns

SL_STATUS_OK if successful. Error code otherwise.