Other Parts Discussed in Thread: UNIFLASH, SYSCONFIG
Hello
How to enable protection against flash memory reading?
Thanks
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.
Hello
How to enable protection against flash memory reading?
Thanks
Hi Tiago,
Do you mean protection to keep anyone from attempting to readout the memory contents using a the SWDIO and SWCLK pins? There are security features such as password protecting access or completely disabling the SWDIO/SWCLK pins.
Olá Dennis
Will completely disabling the SWDIO/SWCLK pins mean I can't rewrite the PC? This is undesirable, I come from my experiences with Microchip where I just had to set a bit to prevent the memory from being read...
Hi Tiago,
Yes, the CGP bit in configuration word. I am familiar with this. I used to work at MCHP for 8 year supporting PIC24 MCUs on their applications team.
You can set something similarly on the MSPM0, but there are additional security levels that provide more flexibility in how you secure the device. It's just as easy to setup (set a few bits in the NONMAIN section of memory), but you need to be careful and understand the caveats before you settle on which security policy.
From the Technical reference manual, take quick look at 1.4.2.1 Serial Wire Debug Related Policies. I copied the important info here for convenience.
I know this looks like a lot, but it is important to understand. In summary, if you want to completely lock the device from any ability to access its memories, look at SWD Security Level 2 options. Else, if you want to leave a PW protected BSL access to factory reset the device (such as part of a OTA field update), then look at SWD Security level 1 options.
Dennis, analyzing the options, the level 1 wall would be more suitable for mass production. Where I want to have full restriction on my code and I want the device to accept new rewrites.
I made several settings in sysconfig, but I was unable to reach a state where it was not possible to read the computer's memory. After writing the .OUT file through Uniflash, it was possible to read the memory without obstacles. Can you help me ?
Hi Tiago,
I have attached a pdf showing the required steps to setup Level 1 security.
Following the procedure, my chip was blocked against new recordings, this was not desired. My version of SysConfig does not have the step:
Hi Tiago,
Ok, very sorry this has happened.
First, if you didn't see the 'Accept configuration risks' then this indicates you are probably using an older version of Sysconfig.
In CCS right click on your project name and select "Show build Settings...". Then select General (as shown below) then products.
What do you see?
Send me a copy of your *.syscfg file that is in your project.
If your version of Sysconfig is earlier (lower rev #) than 1.18.0 (as shown above), then you will need to download a newer version.
The latest version of Sysconfig is 1.19..3426. Here is a link to download
Next, to recover your device, use the following recovery tool: