public inbox for linux-bluetooth@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH BlueZ v1] doc: Document bidirectional (Source+Sink) ASE flow in LE Audio
@ 2026-03-26 22:06 Luiz Augusto von Dentz
  2026-03-26 23:06 ` [BlueZ,v1] " bluez.test.bot
  2026-03-27 13:50 ` [PATCH BlueZ v1] " patchwork-bot+bluetooth
  0 siblings, 2 replies; 3+ messages in thread
From: Luiz Augusto von Dentz @ 2026-03-26 22:06 UTC (permalink / raw)
  To: linux-bluetooth

From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>

Add a subsection under ASCS explaining that multiple ASEs with
different directions (Source + Sink) on the same connection is the
standard bidirectional/conversational configuration.  Document the
direction indicators (Receiver Start Ready for Source ASEs only),
a typical setup sequence, and a note that this is normal behavior.

This provides LLM context so automated trace analysis does not
misinterpret bidirectional streams as an error.
---
 doc/btmon-le-audio.rst | 49 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/doc/btmon-le-audio.rst b/doc/btmon-le-audio.rst
index db909ac38e47..50ee11879bb2 100644
--- a/doc/btmon-le-audio.rst
+++ b/doc/btmon-le-audio.rst
@@ -141,6 +141,55 @@ ASE Control Point commands:
      - Release
      - Tear down ASE (any → Releasing → Idle)
 
+Bidirectional Streams (Source + Sink)
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+A device may expose multiple ASEs with different directions. In the
+conversational (telephony) use case, the remote device typically has at
+least one **Sink** ASE (receives audio, e.g., speaker) and one
+**Source** ASE (sends audio, e.g., microphone). Both ASEs share the
+same CIG and often the same CIS, using the bidirectional capability of
+Connected Isochronous Streams.
+
+**Direction indicators in btmon traces:**
+
+- The ``Receiver Start Ready`` command is only sent for **Source**
+  ASEs (ASEs that send audio toward the local device). The server
+  issues this command to indicate it is ready to transmit.
+- The ``Receiver Stop Ready`` command likewise applies to Source ASEs.
+- **Sink** ASEs transition directly from Enabling to Streaming
+  without ``Receiver Start Ready``.
+
+**Typical bidirectional setup sequence** (two ASEs on one CIS)::
+
+    Config Codec  ASE ID=1 (Sink)    → Codec Configured
+    Config Codec  ASE ID=3 (Source)  → Codec Configured
+    Config QoS    ASE ID=1           → QoS Configured (CIG=X, CIS=Y)
+    Config QoS    ASE ID=3           → QoS Configured (CIG=X, CIS=Y)
+    Enable        ASE ID=1           → Enabling → Streaming (immediate)
+    Enable        ASE ID=3           → Enabling
+    CIS Established (Success)
+    Setup ISO Data Path  Input  (Host→Controller, for Sink)
+    Setup ISO Data Path  Output (Controller→Host, for Source)
+    Receiver Start Ready ASE ID=3   → Streaming
+
+Both ASEs may reach Streaming at different times. The Sink ASE can
+start receiving audio as soon as CIS is established, while the Source
+ASE waits for the ``Receiver Start Ready`` handshake.
+
+.. note::
+
+   **This is normal behavior.** Seeing one Source ASE and one Sink
+   ASE on the same connection is the standard bidirectional
+   (conversational) configuration. It is **not** an error or
+   misconfiguration. Both directions sharing a single CIS is
+   efficient and expected.
+
+**Multiple ASEs per direction** are also valid. For example, a stereo
+headset may expose two Sink ASEs (left and right channels) and one
+Source ASE (mono microphone), each with its own GATT handle for ASE
+state notifications.
+
 CIS Setup and Teardown
 ------------------------
 
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* RE: [BlueZ,v1] doc: Document bidirectional (Source+Sink) ASE flow in LE Audio
  2026-03-26 22:06 [PATCH BlueZ v1] doc: Document bidirectional (Source+Sink) ASE flow in LE Audio Luiz Augusto von Dentz
@ 2026-03-26 23:06 ` bluez.test.bot
  2026-03-27 13:50 ` [PATCH BlueZ v1] " patchwork-bot+bluetooth
  1 sibling, 0 replies; 3+ messages in thread
From: bluez.test.bot @ 2026-03-26 23:06 UTC (permalink / raw)
  To: linux-bluetooth, luiz.dentz

[-- Attachment #1: Type: text/plain, Size: 1311 bytes --]

This is automated email and please do not reply to this email!

Dear submitter,

Thank you for submitting the patches to the linux bluetooth mailing list.
This is a CI test results with your patch series:
PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=1073197

---Test result---

Test Summary:
CheckPatch                    PENDING   0.32 seconds
GitLint                       PENDING   0.28 seconds
BuildEll                      PASS      20.13 seconds
BluezMake                     PASS      642.96 seconds
MakeCheck                     PASS      19.08 seconds
MakeDistcheck                 PASS      243.18 seconds
CheckValgrind                 PASS      290.98 seconds
CheckSmatch                   PASS      347.40 seconds
bluezmakeextell               PASS      180.29 seconds
IncrementalBuild              PENDING   0.30 seconds
ScanBuild                     PASS      1015.75 seconds

Details
##############################
Test: CheckPatch - PENDING
Desc: Run checkpatch.pl script
Output:

##############################
Test: GitLint - PENDING
Desc: Run gitlint
Output:

##############################
Test: IncrementalBuild - PENDING
Desc: Incremental build with the patches in the series
Output:



https://github.com/bluez/bluez/pull/1989/checks

---
Regards,
Linux Bluetooth


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH BlueZ v1] doc: Document bidirectional (Source+Sink) ASE flow in LE Audio
  2026-03-26 22:06 [PATCH BlueZ v1] doc: Document bidirectional (Source+Sink) ASE flow in LE Audio Luiz Augusto von Dentz
  2026-03-26 23:06 ` [BlueZ,v1] " bluez.test.bot
@ 2026-03-27 13:50 ` patchwork-bot+bluetooth
  1 sibling, 0 replies; 3+ messages in thread
From: patchwork-bot+bluetooth @ 2026-03-27 13:50 UTC (permalink / raw)
  To: Luiz Augusto von Dentz; +Cc: linux-bluetooth

Hello:

This patch was applied to bluetooth/bluez.git (master)
by Luiz Augusto von Dentz <luiz.von.dentz@intel.com>:

On Thu, 26 Mar 2026 18:06:32 -0400 you wrote:
> From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
> 
> Add a subsection under ASCS explaining that multiple ASEs with
> different directions (Source + Sink) on the same connection is the
> standard bidirectional/conversational configuration.  Document the
> direction indicators (Receiver Start Ready for Source ASEs only),
> a typical setup sequence, and a note that this is normal behavior.
> 
> [...]

Here is the summary with links:
  - [BlueZ,v1] doc: Document bidirectional (Source+Sink) ASE flow in LE Audio
    https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=8ea1d0da24ae

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-03-27 13:50 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-26 22:06 [PATCH BlueZ v1] doc: Document bidirectional (Source+Sink) ASE flow in LE Audio Luiz Augusto von Dentz
2026-03-26 23:06 ` [BlueZ,v1] " bluez.test.bot
2026-03-27 13:50 ` [PATCH BlueZ v1] " patchwork-bot+bluetooth

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox