Other Parts Discussed in Thread: SYSBIOS, UNIFLASH
Tool/software: Code Composer Studio
We are slowly narrowing down the causes of bricking in our devices, but have hit an issue I don't quite know how to resolve.
During the startup process, a device which presents as a brick is actually heading into our main() function, but proceeding no further than ICall_init(); (but - it gets weirder).
Allowed to run, the devices always end up caught in a loop caused by a HWI - the stack trace out of ROV is below.
Single stepping through it is very confusing (it jumps around a bit) but it seems like, maybe, the GAP role init is trying to read bonded device information from the flash but fails.
The application never gets to our task init, always fails around the ICall_init();
Is it possible that, in a low battery condition, the GAP role is corrupting the flash area where bonding information is stored, then is unable to read it back and crashes?
Putting a fresh rom on the devices wakes them up again (although a side effect of that is always cleaning up the SNV areas of flash).
-----------