Thanks Vinayak for your informative reply and addressing issues 1 to 4.
Glad to know that Zephyr link layer control procedure design is going through a major overhaul. It is much needed. It was not a straight forward task to add the LE PC draft code.
I am cleaning up the LE PC code and should make a PR as soon as it is ready. Can I share it without testing? Just the messages and message processing logic.
Currently the link layer is undergoing a major overhaul of the control procedure design. You can refer to the changes in the topic-ble-llcp branch.
That said, you are welcome to send a draft PR with your implementation, reviewers will guide you towards contributions that can be reused towards the new design.
- Acceptable power reduction would have to be based on custom algorithm and specific to vendors.
- Reviewers and automated test cases should help you with LLCP data flow management
- Yes, you should reuse the already defined connection context and HAL interfaces that the dynamic Tx Power feature uses.
- Most development happens test driven, either using unit tests, babblesim, and manual using tests added in tests/Bluetooth/shell application. You can add your tests and test applications.
Unit tests and babblesim are exercised in Zephyr CI on every PR submission.
You can start by involving reviewers early by sending in draft PRs.
From: devel@... <devel@...>
On Behalf Of Khaled Elsayed via lists.zephyrproject.org
Sent: 24 August 2020 14:17
Subject: [Zephyr-devel] BLE Controller Core Spec 5.2 Power Control Feature
I am working on the LE power control feature of Core Spec 5.2. I am almost 60-70% done defining the air-messages and the state machine within the llcp and he actions/behavior upon
receiving PWR_CTRL_REQ/RSP or a related REJ. Also, not currently handling PWR_CTRL_IND and this should come later I guess. Feature still untested but it is in the pipeline.
Main issues now are:
1) Handling the APR (acceptable power reduction) in the PWR_CTRL_RSP
2) Insuring there are no leaks or any PWR_CTRL received pdu not released
3) Issuing command to change PHY TX power (I used the same method as in the host based TX power that this PR https://github.com/zephyrproject-rtos/zephyr/pull/19779 is
addressing which seems to only change the connection TX power in the connection record and I guess the radio manager will then somehow use that to control the PHY?)
4) Overall testing. I need help here from the Zephyr Bluetooth developers.
Since this is my first potential contribution to Zephyr, I am following the contribution guidelines by posting in the mailing list to discuss the feature before proceeding with a
The information contained in this message is privileged, confidential or otherwise protected from use and disclosure. If you are not the intended recipient, you are hereby notified that any review, disclosure, copying or dissemination of this message or the taking of any action in reliance on its contents, or other use is strictly prohibited. If you received this message in error, please notify us immediately by replying to the message and deleting it from your computer. Thank you.