macOS didModifyServices:
macOS didModifyServices:
- Subject: macOS didModifyServices:
- From: Nick Brook <email@hidden>
- Date: Sat, 14 Oct 2017 11:16:42 +0100
After firmware updates my device indicates that all services have been modified
through the service changed characteristic in the generic attribute profile. It
sends the indication as soon as the client has subscribed for indications.
On iOS, I receive ‘didModifyServices’ immediately after connection, before iOS
calls didDiscoverServices. This is great.
On macOS, I receive didModifyServices a long way (several seconds) into
discovery of the device. This causes two problems:
If the GATT database structure has changed then I could read/write an invalid
attribute and cause a connection timeout due to no response/other errors. If
this happens before didModifyServices, macOS can’t connect to this device, as
it never gets the indication that services have changed.
When didModifyServices is eventually called, I have to throw away all discovery
done so far and start again, almost doubling my discovery time
This has been the case for a while now. I suppose it’s a bug really, so I will
report it. That doesn’t work around the issue for current macOS though. Is
there a way to trigger/force macOS to check for modified services immediately?
Thanks
Nick
W: http://nickbrook.me
_______________________________________________
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