Bluetooth peripheral CTS and ANCS examples behaviour on reconnect with iOS central

Hi,


I am testing NRF CTS and ANCS examples using iOS 14.7 (iPhone 6s) and 14.8(iPhone 10) and Zephyr 1.9.1. The peripheral  (target) is a custom wearable running on nrf52840

Both examples work fine on first run after pairing and bonding. However, they behave differently in respond to target powercycling or turing Bluetooth on/off on iOS devices. Both seem to handle BT on/off in CTS case fine but never in ANCS case - discovery always fails. Target powercycling is even worse - 14.7 and 14.8 handle it differently. 

Long story short - I feel that overall behaviour on reconnect is more or less random.

Apple accessory guidline suggests: " The Current Time Service...not guaranteed to be available immediately after connection and the accessory shall support Characteristic Value Indication of the Service Changed characteristic (see Bluetooth 4.0 specification, Volume 3, Part G, Section 7.1) to be notified when the services become available"

Can somebody point me into the right direction how to add handling CTS and ANCS services availability to existing CTS or ANCS examples? Or maybe there is a better example(s) somewhere for iOS devices that I could take as a starting point? 

I have searched the knowledge base but relevant posts are typically 5 or more years old which is a good indicator of this issue being solved already?

Thanks.

Parents Reply Children
Related