I've been making a bit of progress on this. The processor seems to hang when there is a change in the ble connection state and there is an interrupt on port 1. A series of interrupts on port 1 will ultimately result in a data packet of 15 bytes being send from the peripheral. I'm using the latest 1.3.2 stack and the 8.10.3 IAR compiler. I thought that I might have been pushing data onto the ble stack too quickly, but I've convinced myself that's not the case. When the processor hangs, I get this message:
Wed Jul 03 16:07:57 2013: The stack 'IdataStack' is filled to 100% (192 bytes used out of 192). The warning threshold is set to 50.%
Wed Jul 03 16:07:57 2013: The stack 'XdataStack' is filled to 100% (640 bytes used out of 640). The warning threshold is set to 50.%
Wed Jul 03 16:07:57 2013: The stack pointer for stack 'XdataStack' (currently XData:0xFFFF) is outside the stack range (XData:0x0001 to XData:0x0281)
I'm ready to ship product but can't do so because of this bug. I hope someone from TI can have a look at this and give me some suggestions. I've come to believe that it's a problem in the ble stack.
Dan