Skip to content

nimble/controller: Add Synchronized Receiver role support#2084

Draft
MariuszSkamra wants to merge 5 commits intoapache:masterfrom
MariuszSkamra:feat_broadcast_sync
Draft

nimble/controller: Add Synchronized Receiver role support#2084
MariuszSkamra wants to merge 5 commits intoapache:masterfrom
MariuszSkamra:feat_broadcast_sync

Conversation

@MariuszSkamra
Copy link
Copy Markdown
Contributor

@MariuszSkamra MariuszSkamra commented Jul 18, 2025

nimble/controller: Add Synchronized Receiver role support

This adds Synchronized Receiver role support.
The role enables reception of broadcast isochronous streams.

Co-authored-by: Andrzej Kaczmarek andrzej.kaczmarek@codecoup.pl

Depends on: #1974
Depends on: #2083
Depends on: #2087
Depends (optionally) on: #1882

@github-actions github-actions bot added controller size/XL Extra large PR labels Jul 18, 2025
@MariuszSkamra MariuszSkamra force-pushed the feat_broadcast_sync branch 2 times, most recently from 4c20a96 to 524dc72 Compare July 28, 2025 12:47
@MariuszSkamra MariuszSkamra force-pushed the feat_broadcast_sync branch 2 times, most recently from f039be4 to a707eda Compare August 8, 2025 13:57
@MariuszSkamra MariuszSkamra marked this pull request as ready for review August 8, 2025 13:59
mkasenberg and others added 5 commits April 7, 2026 12:30
New Bluetooth features require fast RX-to-RX and TX-to-TX transitions
and use a different TIFS than 150us.

Co-authored-by: Andrzej Kaczmarek <andrzej.kaczmarek@codecoup.pl>
This adds Rx end early callback that is called before scheduled
PHY transition. This allows user to e.g. prepare CCM for next Rx.
This fixes race condition in aux scan what was observed on Harmony.
During extended scan, the HCI Reset called, that stops the active
scan and clears the scan state machine. The scan stop itself,
if scan response is pending, and calls ble_ll_scan_aux_sched_remove
that pokes the active scan backup (from LL via event queue).
The problem is that the SM is cleared already when backoff is called,
which causes an assert in ble_ll_scan_req_backoff function.

This change ensures the ble_ll_scan_req_backoff is called from
ble_ll_reset() function context. ble_ll_reset is always called
from LL task context.
This adds Synchronized Receiver role support.
The role enables reception of broadcast isochronous streams.

Co-authored-by: Andrzej Kaczmarek <andrzej.kaczmarek@codecoup.pl>
@MariuszSkamra MariuszSkamra marked this pull request as draft April 13, 2026 15:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants