Other Parts Discussed in Thread: SYSBIOS, CC2640
Tool/software: TI-RTOS
Hello,
I am working on a TI-RTOS app for a new project. Things are progressing well, however after my code runs on the device for a a day or so it stops functioning. When it's connected to the debugger, if I pause, it always seems to be running code in ti_sysbios_family_arm_m3_Hwi_excHandler__I. But I am unable to see any stack traces.
The ROV->Task area says Received exception from ROV server: Target memory read failed at address: 0x20002ff0, length: 76. This read is at an INVALID address according to the application's section map. The application is likely either uninitialized or corrupt.
I've spent the last week or two trying to remove various parts of my code to determine what is causing the error, since so far at least I've been unable to take a more direct approach to debugging. By removing a call to one of my functions, the code ran for almost 72 hours until I stopped the test, which is about 3x longer than it usually runs. So I'm pretty confident that the issue is being caused by that function call. The suspect function is relatively simple. It makes a couple of GPIO_write calls, sets up I2C if it isn't already, and then sets up a number of I2C_Transactions and executes them with I2C_transfer(). It also uses Task_sleep to delay in a few spots. All of my other code is just really basic code that sets up the buffers and such, all with local variables. No mallocs or anything, so it's hard for me to suspect any of that causing such an issue.
I'm really at a loss after trying to sort this out for over a month. The rest of our product is just about ready to go into production and this is going to be holding up the entire pipeline. I'd really appreciate any debugging assistance possible. Right now, I'm running mostly blind in terms of the debug tools, which is particularly bad when the problem typically takes over 24 hours to manifest. We'd also be happy to pay for direct one-on-one support if such an option exists.
Thank you.