This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Get data from BLE and write to flash memory using pstorage

Hi,

I am having trouble to use flash to store data.

First, I write function and scan beacon, get information from this beacon and save to flash

I use a timer for saving data to flash but it is not work, I always get the error code = 0x00000010. It means "invalid flag". How can I solve this problem?

Thanks and regard

Parents
  • 0x00000010 is not 'Invalid Flag', invalid flag is error 10 decimal, that's error 0x10 hex which is 16 decimal which is Bad Memory Address.

    That tells you that source_data_1 isn't aligned.

    All the other advice about checking error codes is sound, you should check them all every single time. And I doubt there was ever a 'conflict' between pstorage and the beacon_event_handler, you can most likely fix the actual error now you know the difference between decimal and hex and put the code back the way it was.

  • Well don't guess what it's doing, run it, wait, hit the break button in the debugger and find out where you are. Are you in the while() loop, are you in the hardfault handler, where are you?

    Put a breakpoint in the sys event handler, is it hit, does it get there or not?

    Put a breakpoint in the your pstorage callback handler - is it called? What's it called with, success or error?

Reply
  • Well don't guess what it's doing, run it, wait, hit the break button in the debugger and find out where you are. Are you in the while() loop, are you in the hardfault handler, where are you?

    Put a breakpoint in the sys event handler, is it hit, does it get there or not?

    Put a breakpoint in the your pstorage callback handler - is it called? What's it called with, success or error?

Children
No Data
Related