cancel
Showing results for 
Search instead for 
Did you mean: 

External Loader: ST-Link Utility and STM32CubeProgrammer issues

Gianluca Costa
Associate II

Hi,

I’m developing and external loader for ST-Link Utility and STM32CubeProgrammer.

My constrains/ requirements are:

  • STM32F091RBTx as uC
  • external lash on SPI: EN25Q40
  • SDK/IDE Atollic

I used (started from) the source code from STM32CubeProgrammer and the document UM0892.

After a lot of attempts I have a version/FW that run on STM32CubeProgrammer, and I’m able to erase, write and read the external flash.

The issues are:

1) Sometimes connecting, disconnecting and reconnecting the STM32CubeProgrammer to the ST-Link/v2 I receive this error::

“Error: flash loader C:\Program Files (x86)\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin/ExternalLoader/EN25Q40_MT447 cannot be loaded.�?

This if and only if a I erase or write the external flash before disconnecting and reconnecting, If a only read the external flash the error doesn’t arise (I can disconnecting and reconnecting without problems) . If I don’t disconnect the ST-Link/v2 all work fine i.e. I’m able to write, erase and read many times the external flash.

2) The same binary module (.stldr) that I use on STM32CubeProgrammer if used with ST-Link Utility doesn’t work, in detail, the ST-Link Utility load the model without error, I can erase the external flash (mass erase, sector erase) and also I can read the external flash (the read is more slowly than STM32CubeProgrammer ) but the  write operation fails, and example log is:

11:27:27 : Erasing external memory success.

11:29:07 : Timeout during flash programming

11:2 9:07 : Error occured during program operation!

11:29:29 : Unable to run On-Chip verification!

11:29:38 : External memory program canceled

Someone can help me to understand these issues or suggest me a way to debug the FW/module?

Thanks.

Gianluca Costa

1 REPLY 1

The ST-LINK Utilities are not receiving development efforts and have their own bugs and shortcomings.

Diagnosis of issues can be via telemetry on the serial port. Code should be tested independently within your own test framework before integration.

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