Other Parts Discussed in Thread: BLE-STACK, CC2540T
To meet both my throughput target (4 peripherals x 1KB/s) and (re)connection time limits (=> CI = 40ms) my Central application needs to receive 2 x 20Byte Notifications per Connection Event from each of up to 4 Peripherals.
Whilst this is not an ideal arrangement, in experiments with a single connection this proves acceptable because the system is "catching up" after occasional lost packets by exchanging more than 2 queued notifications in subsequent Events (up to 4). However...
As soon as a second Peripheral is connected the Link Master only initiates a single exchange per Event regardless of the Slave setting MoreData = TRUE. Thus the Peripheral Notification Queues are overflowing even when there are no lost packets.
Why is this and how to fix it?
As I understand from the multi role docs the scheduler is budgeting 5mS per connection event, which should be plenty of time for multiple M<>S exchanges per Event.
CC2640R2F BLE 4.2 stack v1.50