cancel
Showing results for 
Search instead for 
Did you mean: 

Either cant erase external flash or can but then fails when programming

Miloš
Associate II

I am using 70STM32H7 board and STM32H_IPS_QSPI_Loader_CM7 external loader.

I can program from the IDE but that doesnt affect images in external memory. So I tried programming from the programmer and it fails to write to external memory. Then I tried to delete the sectors manually and I can't understand how or why but that sometimes works and sometimes doesn't. Even when it does work, trying to program it afterwards results in an error again, even if I uncheck the option to erase sectors before writing.

nwrp0 -15 are all checked which sounds like they are not write protected but I have no idea if that is the correct thing to check.

btw when we did the initial test we managed to program ext flash correctly as all images were displayed nicely. I then started working on the actual project and when it was time to try it I saw this problem. I went back to the test project and could not make that one work either so I have no idea what could have changed in meantime or what I did differently.

5 REPLIES 5
Miloš
Associate II

btw

Using programmer version 2.13.0

And firmware version as on screenshot, idk whether I should update, the offered version seems older...

Is this the Riverdi board? Suggest linking to specific product pages

https://community.st.com/s/question/0D53W00001dvKK7SAM/riverdi-rvt101hvsnwc00-external-flash-programming-fails

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

Check things like clocks, if HSE or PLL changes

Possible to set protection bits in external memories if you mix/match BSP or STLDR on them.

Looks here to fail at initialization.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Miloš
Associate II

Thank you for responding and I appologize for my late response.

The board is https://riverdi.com/product/7-inch-lcd-display-stm32h7-rvt70hssnwn00/

I tried to follow the instructions from that other thread but had no success so I got frustrated and gave up for a while. I later managed to program the board from TouchGFX and the images appeared to be correct but I had to disable my custom code because I could not figure out how to include a library into GFX (I managed to do it for simulator earlier but have no idea how to do it for the target...). I hoped that after the images were successfully transferred I would be able to build code from IDE but I get a black screen now (device works otherwise because I see it sending data on uart).

I will try a process of elimination to see which part of my code is causing it somehow...

Would perhaps have your BSP code read the Micron QSPI Status Register, make sure one of the BPx (Block Protect) bits hasn't inadvertently been set. I seem to recall some of the Macronix loaders locking Micron parts, causing Erase, Mass Erase and Writes to fail if they fall within the protected regions.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..