We are developing a React Native mobile application for iOS and Android, making use of the react-native-ble-plx library to interface with the BLE UART service from the examples as a communication method. We transmit the contents of a csv in 24B chunks, and when transmitting to the nRF Connect mobile app, we can send about 37KB in around 14 seconds with our current sdk_config settings.
However, when we are sending data to our mobile application, it takes closer to 19 seconds to do the same transfer, pushing the results into an array.
I set up an LED on our board to turn on once we send the final line of the CSV via ble_nus_string_send(), and after this LED turns on, it still takes about five seconds for the react native app to finish receiving all of the transmitted data.
Does anyone have any experience with this, or suggestions for improving our throughput to the mobile app? I can't help but think that if the nordic app is able to receive at full speed, then there must be some way to improve what's going on via the react-native-ble-plx library handling our transmissions in our custom mobile app.