Re: Using CoreBluetooth from Command Line Tool
Re: Using CoreBluetooth from Command Line Tool
- Subject: Re: Using CoreBluetooth from Command Line Tool
- From: András Kövi <email@hidden>
- Date: Fri, 05 Apr 2013 22:54:58 +0200
I start with scanning, then insert the UUID that's printed out and use that in the next round. Everything works fine on my Mac mini.
I suppose you use notifications for sending the data update. Notifications are not acknowledged by the peer.
There have been several discussions on this list about strategies for creating data streams. Etan Kissling is a "master" of this topic. :) The basic idea when using notifications is to have two characteristics. One is the outgoing data, the other is the acknowledgement indicator. You update the data characteristic and then wait until the acknowledgement characteristic is written by the peer. You may fine tune the process, of course, to increase the bandwidth. The other solution is to change to indications to ensure consistency. There can be only one indication at a time so you will not be able to send data until the update is processed.
A third solution I can think of is implementing the peripheral role in the i* device and writing the data characteristic on that from the real peripheral. This scheme is used in the Alert Notification Service.
I never needed high speed data transfer but I'd be interested in whether these solve your issues.
Andras