Hi,
Im currently working with a custom PCB using the nRF52832 and soft device s132 with v5.1.0.
Sometimes the BLE stops advertising and becomes undetectable after a connection (and subsequent timed out disconnection) with a Mobile device. This happens very rarely, but once it is in this state, the only way to get the BLE advertising again is through a hard reset.
—
We have mechanisms in place for ensuring constant advertisement in various scenarios such as timed out connection, missing a GAP Disconnection EVT, interval checks for advertising state (local state variable), etc.
The BLE advertisement is always set at an interval of 700 ms, 0 slow advertisement timeout, in an unbonded connectable advertisement mode.
Most notably however is that the app timers also seem to be running extremely slowly at about 8 seconds passing on device compared to 5 minutes real time. Typically these app timers are running every real time second, but in this state they run significantly slower for some reason.
—
I’m wondering:
- If there is a deterministic way to detect this state in order to build diagnostics or error handlers to restart the advertisement properly?
- Are there any known issues with soft device s132 v5.1.0 with respect to BLE advertisement and/or timers that may explain this scenario?
- If/how this scenario relates to the BLE stack in general and any suggestions for prevention?
—
Any input is appreciated, thanks!