Does anybody have a response to my question?
Try posting a CASE on this, I think problem is this is high vacation
period for many.
To create a technical or issue case at Cypress -
“Create a Case”
You have to be registered on Cypress web site first.
BLE sometimes seems a little bit flaky. I see this even with my own application. One way to deal with it is to automatically reconnect when a connection got lost without user intervention.
Thanks for the response. @Dana, I will make a case. Although it takes very long to receive a response.
How do you make the automatic connection? DO you have an example? Maybe with a timer or something?
I would prefer not to do workarounds (until extermely required) and try to figure out why the issue is happening. :)
As Dana suggested, MyCase should help you in this. I believe this issue should not be from the silicon side as they have been used in various scenarios without fail. But again, that is my assumption.
Meantime, can you answer following questions:
1) In your custom arrangement/board,what is the power source?If it is on battery, is it stable enough to provide power during the peak requirements of the BLE?
2) How much noisy do you feel your environment is? If there are lot of BLE devices in action at the same location, then there may be case of connection dropping due to interference.
3) Is the antenna design as per recommended guidelines? If the antenna design or matching network is not correct, there may be considerable loss during transmission. One application note that may help you in this case is AN91445.
4) Is there a particular scenario in which the connection is lost (such as enabling notifications)? Or is it completely random?
5) Does the firmware has a blocking function that may prevent the periodic call to CyBle_ProcessEvents() API ? Ensure that this API is called atleast once during one connection interval (default connection interval with CySmart on Windows is 10 ms).
6) Is there an interrupt in your design which has greater priority than the BLE ISR (isr_ble)? In this case, you may want to raise the BLE interrupt priority in CYDWR.