Bluetooth LE state module

In nRF Desktop, the Bluetooth® LE state module is responsible for the following actions:

  • Enabling Bluetooth (bt_enable()).

  • Handling Zephyr connection callbacks (bt_conn_cb).

  • Propagating information about the connection state and parameters by using Application Event Manager events.

The HID Add-on extends the functionality of the CAF Bluetooth LE state module through the CAF BLE state extension module. The documentation page contains information about both application modules.

Module events

Source Module

Input Event

This Module

Output Event

Sink Module

Source modules for module_state_event

module_state_event

ble_state

Bluetooth LE advertising module

ble_peer_event

Bluetooth LE state module

ble_peer_conn_params_event

Bluetooth LE connection parameters module

Bluetooth LE latency module

ble_peer_event

Sink modules for ble_peer_event

module_state_event

Sink modules for module_state_event

Source Module

Input Event

This Module

Output Event

Sink Module

Source modules for module_state_event

module_state_event

ble_state_extension

ble_peer_sci_conn_rate_event

Bluetooth LE connection parameters module

Bluetooth LE latency module

Note

See the Application overview for more information about the event-based communication in the nRF Desktop application and about how to read this table.

Configuration

nRF Desktop uses the Bluetooth LE state module from Common Application Framework (CAF). The CONFIG_DESKTOP_BLE_STATE Kconfig option selects the CONFIG_CAF_BLE_STATE option.

For more information about the Bluetooth LE state module implementation, see the CAF Bluetooth LE state page.

When Shorter Connection Intervals (SCI) are enabled, the HID Add-on also enables the CONFIG_CAF_BLE_STATE_EXTENSION and CONFIG_CAF_BLE_SCI_CONN_RATE_EVENTS options to provide the ble_peer_sci_conn_rate_event until it is available in the used nRF Connect SDK release.

Note

Connection parameter changes behave very differently when HID SCI is used. The connection parameter update flow described on the CAF Bluetooth LE state page does not apply.

See the CAF BLE state extension module page for implementation details about connection parameter changes when using SCI.

For more information about Bluetooth configuration in nRF Desktop, see nRF Desktop: Bluetooth.