Discover CBCharacteristic for CBService misses a few characteristics

I'm using iOS 9 Beta 3 and working with CoreBluetooth with my bluetooth LE device. When I try to discover the chars for services, consistently there are 2 chars missing when didDiscoverCharacteristicsForService gets called for 2 of my services. This was not the case with iOS 8.4 GM. The 2 chars that are missing have nothing special about them and similar other chars are present. I tried using arrays of UUIDs to filter the chars when discovering, but the issue still appeared with the same 2 missing chars, even when they are explicitly mentioned to be discovered.


Apparently this is still an issue with iOS 9 Beta 4. I've submitted a bug (21932743) with apple.

Replies

Thanks for reporting this. We are seeing a similar issue (1 of 6 characteristics missing), on iOS 9 Beta 4.

BreathoQA, Have you had any luck working with apple on this issue or been able to identify a workaround?

I can also confirm that I am seing this issue.

I have 7 services on my device.


- 0x1803

- 0x180a

- 0x180f

- 0x1500 (custom service)

- 0x1600 (custom service)

- 0x2a06

- 0x2a07

- 0x2a29


Only one service 0x180a could be discover. Is it a bug on iOS 9.0(13A4325C) or xcode 7 beta5?

Has anyone had any luck getting around this problem?

In our experiments it always seems to be the 2nd characteristic that is missing.


If you are able to change the characteristics that your peripheral advertises this means that you can workaround this by injecting a dummy characteristic as the 2nd characteristic that is advertised, and then move your needed characteristic to different (larger) value handle.


Note that you may need to send a service changed characteristic to get iOS to flush its cache and recognize that the peripheral is advertisting the characteristic under a different value handle.

In our case multiple characteristics are missing, plus its not possible to change the characteristics unless we change the firmware. Have you noticed something special about the missing one? Or whichever happens to be at the second position is missing?

The same for us. Many characteristics are missing. I was going crazy trying to find the problem.

I have also submitted a bug report for it (22416820). Lets hope this is addressed in GM

For us it was always the 2nd characteristic (none of the other properties seemed to matter), but it could be something about the specific chipset and / or implementation we are using on the clients. And yes, fixing this would require a firmware change for us too.

Just tried with 9.0 GM. Did not fix the issue for us. 😟

Can confirm no change in GM. This pretty much renders the peripherals useless..

Just downloaded and installed iOS 9.1 beta, and all magically work again. Where can I see what issues had been solved in this new beta?

Apple responded in the bug report and asked to test with 9.1.

The problem seems to be fixed.

I see the same problem, missing characteristics, and confirmed that the problem is fixed in iOS9.1 beta.

Apple, please release iOS9.1 as soon as possible.