GAP callback when receiving HCI completed packets
- Dominant language
- C
- Stars
- 893
- Forks
- 512
- Avg merge
- 13d 31m
- Merged PRs (30d)
- 7
Description
Hi! We're starting to use NimBLE in CircuitPython for the ESP32-S3. We have existing code for BLE that uses the Nordic soft device.
One of our APIs, similar to the nordic uart service, batches data written (without response) into larger ATT packets up to the MTU size. We do this by batching until the previous packet has been sent. With the soft device we get a BLE_GATTC_EVT_WRITE_CMD_TX_COMPLETE event back that we use to queue up what we've buffered.
I'm looking into adding something similar to NimBLE. I've found `ble_hs_hci_evt_num_completed_pkts()` and it looks like I can add a GAP event based on that. Is that the best approach? I can make a PR once I have it working. Or, is there another way I should get outgoing flow control info? Thanks!
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading ble_hs_hci_evt_num_completed_pkts() and tracing the existing GAP event handling to determine how completed HCI packets reach applications. Done means the outgoing flow-control behavior and callback contract are agreed and the completed-packet case is implemented and verified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- embedded-iot, networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100