apache / apache/mynewt-nimble

GAP callback when receiving HCI completed packets

Open
#1,170 8 comments 0 reactions 0 assignees View on GitHub
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.