Skip to main content
abhiran
Associate
March 19, 2015
Question

what should happens when the USB-DFU sets CRP and then flashes an image?

  • March 19, 2015
  • 2 replies
  • 795 views
Posted on March 19, 2015 at 17:16

I am wondering if this was expected.

I use the DFU-USB image to jump to an app on 0x800c000, but before jumping it sets the RDP/CRP level to 1 within it's main().

Then I use the Dfuse demo app to flash a new image on 0x800c000. Jumping from the DFU-USB works as expected.

Question

1. In the DFU-USB mode, the Dfuse Demo app seems to be able to read the exposed internal flash. Is that normal even though CRP=1?

2. I am guessing that i can flash as many times a new image at 0x800c000 without having to reflash the DFU-USB bootloader until i change CRP level from 1 to 0 and back to 1.

When i read 

http://www.st.com/web/en/resource/technical/document/application_note/CD00264379.pdf

, pg 11/26 there is a table which says then Read Protection is enabled DFU_DNLOAD should not be allowed. Am i reading something else?

thanks for reading

#rdp #stm32 #dfu #crp
This topic has been closed for replies.

2 replies

Tesla DeLorean
Guru
March 19, 2015
Posted on March 19, 2015 at 17:27

If you change the RDP setting you have to restart the part. Perhaps you're not setting it properly?

Also, code running from flash, can read the flash. So you'd have to take an active role preventing that occurring by checking the state before doing any action that would expose the memory to download.

 

Tips, Buy me a coffee, or three.. PayPal VenmoUp vote any posts that you find helpful, it shows what's working..
abhiran
abhiranAuthor
Associate
March 19, 2015
Posted on March 19, 2015 at 19:05

Thanks so much Clive1! A reset was it.