Coexistence#

Coexistence.

Enumerations

enum

coex_option_t { coex_option_enable = 0x100, coex_option_tx_abort = 0x400, coex_option_high_priority = 0x800 }

Coexistence 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#

coex_option_t#

enum coex_option_t

Coexistence Options.

Enumerator

coex_option_enable

(0x100) Enable coexistence feature

coex_option_tx_abort

(0x400) Abort transmission if grant is denied

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 coex_option_t. Mask defines which coexistence options are changed.

[in]

options

Enum 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 1ms units

[in]

pwm_dutycycle

PWM functionality dutycycle 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.