We are observing unexpectedly low throughput on the Mesh GATT Proxy service. Specifically, the Nordic device (acting in the GATT server role) is only sending one PDU on every other connection event even when it has multiple packets queued up. This is observed through timestamps where the latency between notifications is twice the expected connection interval. Also, when we capture the BLE connection with a sniffer device, we see an intervening connection event with no data exchanged in between each event that does send a PDU. The apparent problem is that the "TX complete" event (BLE_GATTS_EVT_HVN_TX_COMPLETE) from the SoftDevice does not fire until two connection events have occurred, even though only one is used to actually exchange data (again, that can be confirmed via the sniffer). The net result is that we only get half the expected throughput. Our connection interval is typically ~250ms, but the GATT notifications are only going out every ~500ms.
Model: NRF52832
Mesh SDK Version: 3.1.0
SoftDevice Version: s132
BLE SDK Version 15.2.0
