Hi,
We have an issue in one of our products, it seemed to mis-operate when it is not supposed to at the customer site.
The unit was brought back to the factory and on running further tests it seemed to operate normally however a few observations were made:
-
The settings were all updated to default (which happens on power up if the config memory( in our case INFO B) was corrupted).
-
And also on analyzing the event logs(stored in INFO A), it seemed to contain some other data from RAM.
Each event is 12 bytes long and we have a max of 8 events, we basically have a run time array that contains the 12 events(96 bytes) and they are written to flash when a new event occurs.
RAM address 1C64 - 1CC5 holds the run time event data and there are some other ram variables prior to that 1C25 to 1C64, but what we are seeing is that data in the section 1C25 to 1C85 gets written to event flash memory.
What we are trying to understand is could this be a case of stack overflow and what could be the reason for the INFO B(configuration memory) to get corrupted.
We have tried to recreate this scenario in the factory and it always seems to operate as expected.
It would be really helpful if we could get some leads if there was a way to detect stack overflow.