-
Notifications
You must be signed in to change notification settings - Fork 6.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LE Audio: Add ISO test parameters to the BAP API #54050
LE Audio: Add ISO test parameters to the BAP API #54050
Conversation
2059ef0
to
1d9e3f7
Compare
907f470
to
3227d20
Compare
3227d20
to
dee6964
Compare
dee6964
to
45018f4
Compare
f39f5b2
to
7b6cbac
Compare
7b6cbac
to
b82f89a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is the "advanced" term used somewhere in the spec? I'd prefer to stick to the Core defined naming.
I see the parameters that are about to be passed to the HCI_LE_Set_CIG_Parameters_Test
are named as "advanced" in this PR. This introduces confusion, as this command should be used for test purposing only to let the controller to choose the parameters.
As per Core 5.3, Vol 4, Part E :
"The HCI_LE_Set_CIG_Parameters_Test command should only be used for
testing purposes."
My feeling is that this shall not be part of public API
@MariuszSkamra Those are fair points. There has been a user request for using the test commands for more fine-grained control of the ISO channels (some of the fields for the test commands shoul arguably have been part of the "regular" commands in the first place). The "advanced" term is thus not used in the core spec, as these does use the test commands, but adding "test" fields in a public API for non-test purposes also felt incorrect. The "advanced" term was first used and introduced by #53945 in the ISO API |
Yes, because this command is test command. What's the difference in naming it |
It is specifically because we (or rather the user that requested this) do want to use it for other things than testing. The test commands provides additional control of how the ISO channels are configured, which is useful for some advanced use cases where the application want the ISO channels to behave in a specific and deterministic way. Leaving many of these values up to the controller, does not provide the flexibility that some applications require. While the core spec does state that these command should not be used for other things than testing, it is still allowed. |
@MariuszSkamra please review |
As discussed, I will provide some alternative naming schemes for this feature |
Other naming options instead of "CONFIG_BT_ISO_ADVANCED"
@MariuszSkamra et.al. please provide your thoughts on the above Another alternative is to create a new set of parameter structs and functions for the ISO API to use the ISO test commands, and then change the guard used for the LE Audio API to be something like |
My five cents on this is that I agree with Mariusz. Since this clearly is referenced as 'test' in the spec, I think that is what we should continue to use here. If a user requested this, is it far-fetched to assume that the same user is well traversed enough in the spec to know about the test I would vote for either |
|
Will update to use |
Rename the Kconfig option from BT_ISO_ADVANCED to BT_ISO_TEST_PARAMS to more explicitly denote that it enables support for using the ISO test parameters. Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Add support for the ISO test parameters in the BAP API. Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
b82f89a
to
b2503ec
Compare
@MariuszSkamra @fredrikdanebjer added a commit to update the naming of the Kconfig option before adding the support for it in the BAP API |
@fredrikdanebjer Please re-approve if you can :) |
Add support for setting advanced ISO parameters in the BAP API.
Fixes #50950