We're sending packets from a nRF51422 usb dongle to a nRF51422 dev board running some modified Nordic UART example code. We send 100kB of data over the connection to work out the speed, at the moment we get about 500 B/s. A C# app on the computer continually sends 20 bytes in a for loop.
Sniffing the connection with a further nRF51422 usb dongle shows that there are a lot of empty connection intervals. One packet will be transferred, and then perhaps 5 connection intervals will go past before the next packet is sent.
From some further testing it is the USB dongle that is limiting the through rate. Is it possible that the latency for communication with the USB dongle up the stack to the C# app is greater than a connection interval, and that's why we see empty ones?