writes-without-response worked on iOS 7, fail after several writes on iOS 8
writes-without-response worked on iOS 7, fail after several writes on iOS 8
- Subject: writes-without-response worked on iOS 7, fail after several writes on iOS 8
- From: Don Clark <email@hidden>
- Date: Wed, 05 Nov 2014 16:01:40 -0500
- Acceptlanguage: en-US
- Thread-topic: writes-without-response worked on iOS 7, fail after several writes on iOS 8
My app is able to perform a firmware update to our Nordic chip when running on iOS 7, but not on iOS 8. The device implements two characteristics, one with notifications enabled. The firmware update happens in part by writing a command to the characteristic with notifications (the Control Point characteristic) telling the firmware how many writes without response will be done. Then another command is written to the CP characteristic, telling the firmware that this is the beginning of the write sequence. This is followed by that number of writes without response to the second characteristic. When the prescribed number of writes has occurred the CP characteristic sends a notification back to the client app.
In my case I tell the CP characteristic that I’ll be sending 50 writes. I then execute 50 writes of 20 bytes each to the non-notifying characteristic, and then expect a notification from the CP characteristic. On iOS 7 this happens; on iOS 8 it doesn’t.
A sniffer trace shows that only 32 of the packets are actually sent over the air. Capturing the Core Bluetooth log using a Bluetooth diagnostic profile shows that the writes all occur, but after most of them happen then errors start popping up in the log. ("OI_SLOG_ERROR: 68,599,65535").
|
_______________________________________________
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