CONFIG_BT_CTLR_SCHED_ADVANCED

Advanced scheduling

Type: bool

Help

Enable non-overlapping placement of observer, initiator and master roles in timespace. Uses window offset in connection updates and uses connection parameter request in slave role to negotiate non-overlapping placement with active master roles to avoid slave roles drifting into active master roles in the local controller.

This feature maximizes the average data transmission amongst active concurrent master and slave connections while other observer, initiator, master or slave roles are active in the local controller.

Disabling this feature will lead to overlapping role in timespace leading to skipped events amongst active roles.

Direct dependencies

BT_MAX_CONN != 0 && BT_CTLR_SCHED_ADVANCED_SUPPORT && BT_LL_SW_SPLIT && BT_CTLR && BT_HCI && BT

(Includes any dependencies from ifs and menus.)

Default

Kconfig definition

At <Zephyr>/subsys/bluetooth/controller/Kconfig.ll_sw_split:238

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:34<Zephyr>/subsys/Kconfig:8<Zephyr>/subsys/bluetooth/Kconfig:240<Zephyr>/subsys/bluetooth/controller/Kconfig:554

Menu path: (Top) → Sub Systems and OS Services → Bluetooth → Bluetooth Controller → Advanced features

config BT_CTLR_SCHED_ADVANCED
    bool "Advanced scheduling" if BT_CTLR_ADVANCED_FEATURES
    default y if !(BT_PERIPHERAL && !BT_CENTRAL)
    depends on BT_MAX_CONN != 0 && BT_CTLR_SCHED_ADVANCED_SUPPORT && BT_LL_SW_SPLIT && BT_CTLR && BT_HCI && BT
    help
      Enable non-overlapping placement of observer, initiator and master
      roles in timespace. Uses window offset in connection updates and uses
      connection parameter request in slave role to negotiate
      non-overlapping placement with active master roles to avoid slave
      roles drifting into active master roles in the local controller.

      This feature maximizes the average data transmission amongst active
      concurrent master and slave connections while other observer,
      initiator, master or slave roles are active in the local controller.

      Disabling this feature will lead to overlapping role in timespace
      leading to skipped events amongst active roles.

(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)