Author Topic: BulkDataTransfer rate and RFduinoBLE.send()  (Read 1955 times)

jonh_kelly

  • RFduino Newbie
  • *
  • Posts: 4
  • Karma: +0/-0
    • View Profile
BulkDataTransfer rate and RFduinoBLE.send()
« on: April 10, 2014, 12:53:55 PM »
Hi all,

I've been experimenting with BulkDataTransfer example for couple days.

This is what it says in the comment area of BulkDataTransfer example.

Quote
This sketch demonstrates how to do error free bulk data
transfer over Bluetooth Low Energy 4.

The data rate should be approximately:
  - 32 kbit/sec at 1.5ft (4000 bytes per second)
  - 24 kbit/sec at 40ft (3000 bytes per second)
 
This sketch sends a fixed number of 20 byte packets to
an iPhone application.  Each packet is different, so
that the iPhone application can verify if any data or
packets were dropped.

However the baud rate was set to 57600 in the code, which was not allowed in my version of RFduino.
So I had to turn it down to 9600 baud rate, which incidentally changed the data transmission rate.

So each pack with 20bytes, It takes about 2.85s to transmit 100 packs,
5.88s to send 200 packs, which is kind slow....

I've tried to changed the advertisement interval to 20ms, it increased the msg speed, but this still only gave me 50 advertisements per sec and it still took me 2s to send 100 packs.
I also tried to increase the size of the buffer, from 20bytes to 60bytes, it didn't complain but I am not sure if all the 60bytes got sent or received.

My application is to send some kind of data(about 10kbytes) from RFduino to a device on the other side as fast as it can.

Is there a way to achieve this goal with the current settings?

repurposer

  • RFduino Newbie
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
Re: BulkDataTransfer rate and RFduinoBLE.send()
« Reply #1 on: March 28, 2017, 08:26:32 AM »
The serial monitor printed the following for me with the default .ino

Quote
BLE + UART > 9600 baud not permitted due to critical BLE timing requirements.
To override, add: override_uart_limit = true; to the top of setup() in your sketch.

 

anything