Strictly necessary cookies are on by default and cannot be turned off. Functional, Performance and Tracking/targeting/sharing cookies can be turned on below based on your preferences (this banner will remain available for you to accept cookies). You may change your cookie settings by deleting cookies from your browser. Then this banner will appear again. You can learn more details about cookies HERE.
Strictly necessary (always on)
Functional, Performance and Tracking/targeting/sharing (default off)
In the OTA update process, sometimes the BLE disconnected on the customer board. The disconnection error code is 0x28 (CYBLE_HCI_INSTANT_PASSED_ERROR). I do not find more data about this error. What is this error? What is the reason? How to fix this?
The Instant Passed error code indicates that an LMP PDU or LL PDU ( for example LL_CONNECTION_UPDATE_REQ PDU for changing the connection parameter ) that includes an instant cannot be performed because the instant when this would have occurred has passed.
So, for example when the master sends this PDU (LL_CONNECTION_UPDATE_REQ PDU), it will sends an instant value as a part of this PDU.
The Instant field of the LL_CONNECTION_UPDATE_REQ PDU shall be used to indicate the connEventCount when the updated parameters shall be applied; this is known as the instant. The master should allow a minimum of 6 connection events that the slave will be listening for before the instant occurs.
Hope above clears about the error message.
Now to resolve this issue --
-> Are you changing the connection parameters after the BLE connection has established ? If yes, check what is the Slave latency number you have used. Try with a lesser number for slave latency (eg. 0)
-> Are you using the Low Power Modes in your design and also changing the WCO Sleep Clock Accuracy? If yes , please refer the page #12 for correct configuration from this document -http://www.cypress.com/file/140991/download