How to Erase user data?


Is there a method to Erase user data?

I mean Setting data.
I save setting data with EWR. I want to clear all the setting data,how to do that?

If you upload the firmware again, then it’s deleted.
But that’s might not be what you want !?

This is not my wanted. I just want to delete the setting data.

If your software created the data, couldn’t you just code something to reset it in some way?

What I do with saved data is store a MAGIC NUMBER in a long. If this does not match the value when I read the data, I assume the data was never created (or is corrupted somehow) and set defaults. This way, all have to do is create a new magic number in the source when I want to make sure the data will be new.

I save setting data with EWR, sometimes i can’t read the setting data for unknown reason.
But when i clear the setting data with MFDeploy.exe, saving and reading with EWR worked. So i want clear the setting data before saving the new setting data, it maybe worked for saving and reading with EWR everytime.

Saving and reading with EWR is not stable. So i want to clear the EWR data to make sure the EWR working.

Sector Start Size Usage

 0            0x00000000          0x00005000   Bootstrap
 1            0x00005000          0x0000b000   Code
 2            0x00010000          0x00070000   Code
 3            0xf0000000          0x00020000   Bootstrap
 4            0xf0020000          0x00100000   Code
 5            0xf0120000          0x00280000   Deployment
 6            0xf03a0000          0x00010000   Bootstrap
 7            0xf03b0000          0x00020000   Storage (A)
 8            0xf03d0000          0x00020000   Storage (B)
 9            0xf03f0000          0x00010000   Configuration

Can i write and read the sector directly? Since i known the start address through the top info. for example: GHI.Premium.Hardware.LowLevel.AddressSpace.Write(0xf03b0000, buffer, 0, length);

This should work I guess

string test = “test”;
byte[] buffer = System.Text.UTF8Encoding.UTF8.GetBytes(test);
GHI.Premium.Hardware.LowLevel.AddressSpace.Write(0xf03b0000, buffer, 0, buffer.Length);

It does not work, why?

You can’t write to flash like that, only read.

How can i write to flash?

EWR is not stable, so i want to write/read to flash directly. people in GHI said i can’t write to flash using GHI.Premium.Hardware.LowLevel.AddressSpace.Write(0xf03b0000, buffer, 0, buffer.Length). How can i write to flash?

Hello GHI, help me please. How can i write to flash directly? I’m waiting… Thanks a lot

It’s the middle of the night in the USA just now so consider timezones and wait a few hours until they are back in the office or checking from their home PC’s.

Midlle of the night maybe but this issue exists since a Big while and no solution has been proposed except to not use EWR…

So should we consider there’s some flash on these devices?

We do not support this today but we will look into it in the near future. Writing directly will not work as the ewr will over write it.