Quantcast
Viewing latest article 13
Browse Latest Browse All 40

Re: Help!! IOPWR reset, unknown cause. (Jack0Parks)

So, after some more days testing concurrent with an RealICE, we found out that every time the crash happens, the trace call leads us to a random mainloop/background function executing an return in assembly.
 
So the call stack must get invalid somehow. I have a high guess that this must be because of an interrupt. 
 
Image may be NSFW.
Clik here to view.

 
So I have now; 
  1. If no interrupts are enabled (handling all interrupt routines from mainloop) not ever an crash happens
  2. When enabling interrupts, a crash happens between several minutes to max 48 hours
  3. When I did a trace using RealIce, the crash happens when executing a return in a random background loop function
  4. Compiler (XC series) I enabled errata workaround = all
  5. The crash happens on all hardware boards (tested now more than 30 different devices, coming from seperate batches)
  6. Less likely that hardware has an error, since no error when not using interrupts.
  7. Interrupts are not using any unsafe access to mainloop variables.
And now I`m running out of options. I think to rewrite to code not using interrupts at all. Would be a hell of a work since a lot of the mainloop code has to break up into smaller pieces of executing time to maintain fast enough interrupt handling from mainloop.
 

Viewing latest article 13
Browse Latest Browse All 40

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>