This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

flash/fds hardfault not traceable

I am currently struggling with a problem where Im trying to implement the internal fds module which always leads to hard faults as follows:

There is probably something wrong in my configuration but I can't pinpoint where. The example worked okay so there are no problems on my own PCB. Yet I need support to handle this exception and get the config right!

Best, Julius

Parents
  • Hello,

    It is a bit difficult to say exactly why this is not working. What address are you trying to write to? Or perhaps there is an event handler that isn't populated properly being called? Is it possible to recreate the issue on a DK? If so, would it be possible to send the project that replicates this so that I can have a look?

    If not, I suggest you start looking into the call stack. What happens at event_send() right before the hardfault? Have you tried setting a breakpoint? Does it happen the first time this function (event_send()) is called, or is it called a couple of times before the error occurs?

    Best regards,

    Edvin

  • I am actually not writing anything. Basically I just initialize the flash module and afterwards dont use it (at least for now)

    the fault just happens randomly (an interrupt that is triggered?). Thats why I added the picture, this is all I have, if I set a breakpoint it will lead to the same call stack. 

    Yes it happens the first time the firmware goes into this event_send method. 

    Using a DK was a good advice, I couldn't recreate te problem there, is it something in the board configuration that needs to be handled? 

  • If you are able to reproduce this on a DK now, perhaps you can zip your project and upload it here? You can exclude any potential sensitive information. If the project is a strip down, containing only the bare minimum required to reproduce the issue, without too much of your custom code, that would be the best. Then I can try to reproduce it here in the office.

    What SDK version are you using?

    Best regards,

    Edvin

  • flash_corrupt_ex.ziphere you go. I literally deleted everything from my main and excluded all of my files except the flash_init part (I also commented out ble_stack_init() in there) 

    I am using 15.3 rn

    Thank you Edvin

  • Hi Edvin,

    were you already able to check this? 

    Greetings

  • Hello,

    Yes, I was able to look into this on friday, and after modifying the project a bit, (from using printf to NRF_LOG_...(), changing a lot of the absolute paths for your .c files and include folders, are the two main things I remember now), I was able to reproduce the issue. It looks like the FDS is struggling to initialize the flash pages, although I didn't understand why. It requires some more debugging. I am sorry I didn't get back to you today, but I have not forgotten this ticket. I need to look deeper into it. 

    I saw that a lot of your project settings vary quite a bit from the normal SDK examples. I am not sure whether this is related to the behavior. And again, I am sorry I don't have a definitive answer for you at this point in time. I will try to look closer into this tomorrow. 

    I have, however, tried the unmodified flash_fds example, which doesn't behave the same as your project. I think my approach will be to copy your files into the flash_fds example, and see how it behaves then, to try a different approach, and to eliminate that the project settings may be the issue. Just in case you want to try to debug this as well. 

    Best regards,

    Edvin

  • Thanks for the answer!!

    I tried the same btw. FYI, I also used my sdk_config h file on the example and this didn't yield the behavior

Reply Children
No Data
Related