I'm testing the throughput of nrf52 Devices . So i create custom services in nrf52Dk and send 100packet at a time and connection interval 7.5ms . I connected motog5s+( ble 4.2) through nrf Connect app . Its receiving 100 packets but number of packets in the connection interval is not maximum.
1. Why not sending maximum(6 or 4) number of packets in connection interval. i have tried ble5 version phone also . So my throughput is Just less than 20KBps
2. Ble 4.2 can able to receive only upto 20 packets. Then how can able to receive 100 from nrf52Dk. how its possible?
1. The number of packets exchanged per connection event depend on the capabilities of both devices and that there is data to send. The BLE specification does not regulate this directly. The nRF will typically a new packet as long as the connection event (time) has not expired and there is already buffered data ready to be sent (which typically depend on the number of TX buffers reserved for the SoftDevice).
2. I suspect 100 packets per connection event is difficult. In any case you should remember that the throughput also depends on other factors such as connection interval, connection event length, the packet length. Also, the support for the various parameters differ greatly for different phones.