cancel
Showing results for 
Search instead for 
Did you mean: 

Nucleo-H755ZI-Q: ST-Link "failed to erase memory" error

kavyamm
Associate II

Split from old thread Nucleo-H755ZI-Q How can I resolve ST-Link "No device found on target" error? - which is solved.


i am using same mcu i have this error in the begining like target dectection now that target is dectecing problem is resolved but  now getting this issue 

 

STMicroelectronics ST-LINK GDB server. Version 7.11.0
Copyright (c) 2025, STMicroelectronics. All rights reserved.

Starting server with the following options:
Persistent Mode : Disabled
Logging Level : 1
Listen Port Number : 61234
Status Refresh Delay : 15s
Verbose Mode : Disabled
SWD Debug : Enabled
InitWhile : Enabled

Waiting for debugger connection...
Debugger connected

Waiting for debugger connection...
Debugger connected

Waiting for debugger connection...

-------------------------------------------------------------------
STM32CubeProgrammer v2.20.0
-------------------------------------------------------------------

 

Log output file: C:\Users\kavya\AppData\Local\Temp\STM32CubeProgrammer_a01920.log

ST-Link Server is running on port : 7184
ST-LINK SN : 34FF6B064154343122480157
ST-LINK FW : V2J46S7
Board : --
Voltage : 2.63V
SWD freq : 4000 KHz
Connect mode: Under Reset
Reset mode : Hardware reset
Device ID : 0x450
Revision ID : Rev V
Device name : STM32H7xx
Flash size : 2 MBytes
Device type : MCU
Device CPU : Cortex-M7/M4
BL Version : 0x92

Opening and parsing file: ST-LINK_GDB_server_a01920.srec

Memory Programming ...
File : ST-LINK_GDB_server_a01920.srec
Size : 3.14 KB
Address : 0x08100000

Erasing memory corresponding to segment 0:
Erasing internal memory sector 8
Error: failed to erase memory

Error: failed to erase memory
Encountered Error when opening C:\ST\STM32CubeIDE_1.17.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_2.2.200.202503041107\tools\bin\STM32_Programmer_CLI.exe
Error in STM32CubeProgrammer
-------------------------------------------------------------------
STM32CubeProgrammer v2.20.0
-------------------------------------------------------------------

 

Log output file: C:\Users\kavya\AppData\Local\Temp\STM32CubeProgrammer_a01920.log

ST-Link Server is running on port : 7184
ST-LINK SN : 34FF6B064154343122480157
ST-LINK FW : V2J46S7
Board : --
Voltage : 2.63V
SWD freq : 4000 KHz
Connect mode: Under Reset
Reset mode : Hardware reset
Device ID : 0x450
Revision ID : Rev V
Device name : STM32H7xx
Flash size : 2 MBytes
Device type : MCU
Device CPU : Cortex-M7/M4
BL Version : 0x92

Opening and parsing file: ST-LINK_GDB_server_a01920.srec
Memory Programming ...
File : ST-LINK_GDB_server_a01920.srec
Size : 14.89 KB
Address : 0x08000000

Erasing memory corresponding to segment 0:
Erasing internal memory sector 0
Error: failed to erase memory
Error: failed to erase memory

Encountered Error when opening C:\ST\STM32CubeIDE_1.17.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_2.2.200.202503041107\tools\bin\STM32_Programmer_CLI.exe
Error in STM32CubeProgrammer
Shutting down...
Exit.
 
 inside the program clock configuration
/** Initializes the RCC Oscillators according to the specified parameters
* in the RCC_OscInitTypeDef structure.
*/
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
RCC_OscInitStruct.HSIState = RCC_HSI_DIV1;
RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI;
RCC_OscInitStruct.PLL.PLLM = 4;
RCC_OscInitStruct.PLL.PLLN = 10;
RCC_OscInitStruct.PLL.PLLP = 2;
RCC_OscInitStruct.PLL.PLLQ = 128;
RCC_OscInitStruct.PLL.PLLR = 2;
RCC_OscInitStruct.PLL.PLLRGE = RCC_PLL1VCIRANGE_3;
RCC_OscInitStruct.PLL.PLLVCOSEL = RCC_PLL1VCOMEDIUM;
RCC_OscInitStruct.PLL.PLLFRACN = 0;
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
{
  Error_Handler();
}

/** Initializes the CPU, AHB and APB buses clocks
*/
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
  |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2
  |RCC_CLOCKTYPE_D3PCLK1|RCC_CLOCKTYPE_D1PCLK1;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSI;
RCC_ClkInitStruct.SYSCLKDivider = RCC_SYSCLK_DIV1;
RCC_ClkInitStruct.AHBCLKDivider = RCC_HCLK_DIV1;
RCC_ClkInitStruct.APB3CLKDivider = RCC_APB3_DIV1;
RCC_ClkInitStruct.APB1CLKDivider = RCC_APB1_DIV2;
RCC_ClkInitStruct.APB2CLKDivider = RCC_APB2_DIV1;
RCC_ClkInitStruct.APB4CLKDivider = RCC_APB4_DIV1;
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_1) != HAL_OK)
{
  Error_Handler();
}

 


Edited to apply source code formatting - please see How to insert source code for future reference.

2 REPLIES 2
kavyamm
Associate II

kavyamm_0-1767616012834.png

kavyamm_1-1767616120534.png

  can able uncheck the DMES , could u please us to resolve this issue

Andrew Neil
Super User

@kavyamm wrote:

 

i am using same mcu


And is it on the same board?

Did you check the solution provided in the other thread?

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.