Re: CoreBluetooth: writeValue:forCharacteristic:type: always fails when using 128-Bit UUIDs on iOS 6 beta 4
Re: CoreBluetooth: writeValue:forCharacteristic:type: always fails when using 128-Bit UUIDs on iOS 6 beta 4
- Subject: Re: CoreBluetooth: writeValue:forCharacteristic:type: always fails when using 128-Bit UUIDs on iOS 6 beta 4
- From: Florian Schulz <email@hidden>
- Date: Thu, 06 Sep 2012 20:34:47 +0200
Etan,
thank you so much for reply, the problem really lied within our GATT-database - the permissions weren't set correctly. On iOS 5, CoreBluetooth ignores that error. Your answer saved us from a lot of trouble.
Best regards,
Florian
Am 05.09.2012 um 14:02 schrieb Etan Kissling <email@hidden>:
> Florian,
>
> I have tested 128-bit UUIDs on iOS 6 Beta 4 and did not encounter such problems.
> In my case, a CSR 1000 chip was used as peripheral, and a new iPad as well as an
> iPhone 4S were used as centrals. I am using both 128-bit and 16-bit UUIDs for
> primary services and characteristics. I am also using only short characteristics with
> less than or equal 20 bytes of payload.
>
> What you could do is to use the TI packet sniffer software to get an air trace.
> CoreBluetooth does not expose valuable information in the error-objects.
> Therefore, the air trace could provide you with further information on what
> could go wrong in your case.
>
> Could it be that your GATT-database is malformed?
> And do BLE tools from the AppStore also encounter errors when writing to your
> characteristics?
>
> Etan
>
>
> On 05.09.2012, at 13:51, Florian Schulz <email@hidden>
> wrote:
>
>> Hi,
>>
>> We are developing accessory hardware implementing the peripheral role - our app acts as the central. We are using the TI CC2540 chip for BLE on our hardware.
>>
>> Recently we discovered a major issue regarding iOS 6. On iOS 6 beta 4 writing values using writeValue:forCharacteristic:type: always fails, when we don't use standard profile UUIDs. We are using 128-Bit UUIDs for either our custom services and characteristics. We also tried using a 128-Bit UUID just for the service, and 16-Bit UUIDs for the characteristics with no success. The didWriteValueForCharacteristic: callback is fired immediately after starting the write request. An error object is passed to that callback, saying that the operation couldn't be completed:
>> peripheral:didWriteValueForCharacteristic:error: Code: 0 Domain:
>> CBErrorDomain Description: Unknown error.
>>
>> The write has no effect. On iOS 5.1.1 writing values using 128-Bit UUIDs works fine. We don't know exactly if the error only exists since iOS 6 beta 4, or if it was present on previous iOS 6 builds as well.
>>
>> This is a critical issue for us, since we are about to start mass production of our hardware.
>>
>> Is this behavior caused by a change in iOS 6 that will find its way to the final release, or is this a beta issue?
>>
>> Best Regards,
>> Florian
>> _______________________________________________
>> 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
>
_______________________________________________
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