This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi Team,
I am working with MSP430fr5969 in that I converted code into bytes by using FET Flash programmer. so when I compared with the original bytes some bytes are loss i dont why can anyone help me?
Hello Santhosh,
Can you provide more information on he issue? It sounds like you programmed the device, but you think that the programming did not work? Is that correct?
Thanks,
JD
Hi,
First, thank you for your reply. we are using msp430 in our product. In that, we have uploaded our source code and given to customers, and it is working perfectly, but a few days back we have got some problem from the user side your device is not working. so we decided to find the solution in that we have identified some problem. The problem is device is getting RESET when an interrupt is given via GPIO(Button). So, we checked with hardware it is working good. But, we are checking on RESET conditions(BOR, POR, PUC). By the meanwhile, we have gone through e2e forum for any of the issues happened earlier. We got info on comparing hex files. So, We compared the affected board hex file with a working hex file. And we have seen that some data is missing in 0x4400 address. In our code, it is assigned for FRAM memory storage(verified with .map file).
So, we don't know why the bytes are missing? how could data loss in FRAM? So, can you support on this issue?
Hey Santhosh,
The most common source of FRAM corruption is buffer overflows or invalid pointer accesses. Since FRAM behaves like non-volitale RAM, it can be very easily overwritten if not protected.
This FRAM Best Practices app note discusses this topic and configuring the MPU in section 6. Most recent versions of CCS and MSP430ware attempt to automatically configure MPU settings best they can to help protect against these issues, but I would encourage you to look at the MPU settings for your project and determine if this section of code should be protected.
Let me know if you have any questions.
Good luck!
JD
Hi JD,
First thank you for your reply,yes we have analyzed the FRAM best practices according to that we have changed the MPU settings. I think the problem will not occcur in the future.
Hey Santhosh,
Glad to hear it. Let us know if you have any more issues.
Thanks,
JD
Hi JD,
Thank you so much for the reply, you have said solution for fram corruption like pointer access and buffer overflows. but it works fine while testing but when it goes to customer reset problem occur i dont why?
Hey santosh,
In your original post, you imply that your reset issue is being caused by missing data at 0x4400 which I'm guessing is critical to your application. Is this still the case? Is that data still being overwritten or is it now protected by the MPU?
Unfortunately, I don't have a way of knowing what is happening in your system. Have you been able to recreate the issue yourself?
I will be traveling for the next week, so my responses will be delayed. I will check back in right after the holidays.
Thanks,
JD
Hi Jd,
Thank you so much for your reply,
1) After enabling the mpu still now there is no issue from our customer,but still i want to know the exact reason why it is corrupted?
2) I tried hard to recreate the problem but it is very difficult to recreate issue
happy christmas
Happy New Year Santosh.
If enabling the MPU fixed your issue, then it probably is some sort of buffer overflow or pointer issue. These are typically very hard issues to recreate and locate. You can disable the MPU and run some tests and try to recreate the issue but you also might want to set a threshold for how long you spend looking.
If this is very critical, I know there are 3rd party tools like static code checkers that you can pay to run on your firmware and they look at every branch and try to identify issues.
Either way, I don't really have any more advice for narrowing down your issue any further.
Good luck!
JD
Hi JD,
Happy new year jd, have a great year ahead!
Thank you so much JD, once again thank you for your support from you and your team.ok i will look into static code checkers tools
But i have one doubt whether code coverage and static code checkers tool like poly space bug-finder looks so similar it is correct?JD, why i am asking is i am using code coverage in IAR embedded workbench it looks similar.
**Attention** This is a public forum