William,
asynchronous writes are not reliable, meaning that arbitrary packets may be dropped at any time
by either sender or receiver stack. It may work better with two iOS devices, as they rarely drop
packets on their side - but wouldn't bet too much on stuff that's not pointed out in the documentation.
So, at least add some kind of checksum at the end if you are using multiple iOS devices to ensure
that no packet has been lost.
Etan
wrote:
Tips from the CoreBluetooth side:
- write asynchronously (CBCharacteristicWriteWithoutResponse)
- make sure your peripheral supports asynchronous writes
- give your central manager object its own dispatch queue
CBPeripherals are limited to a 20 byte MTU, and I have no trouble writing over 15kb that way (takes a few seconds).
On Monday, August 5, 2013 at 6:21 PM, Chen, Baimen wrote:
I develop an app with BLE4.0 to control our device. We use VSP for data transmission, but I find VSP can't transfer much data, such as more than 256 bytes, always lost packet and updatedCharacteristic method be invoked frequently, some time only receive one
byte.
The lost packet may be caused by our BLE4.0 supplier.Their MAX RF packet is only 20 bytes,The UART and VSP buffer are both 256 bytes. Who can give me some suggestion? If you want transfer much data, such as much than 1000 byte, how do you do that? Thanks!
Yours sincerely,
Kevin Chen
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Help/Unsubscribe/Update your Subscription:
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Bluetooth-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
|