cancel
Showing results for 
Search instead for 
Did you mean: 

(STM32H735) Problem flashing, no contact to µC while BOOT0=GND

MGFHR
Associate

Hello,

I have problems with a Custum board with a STM32H735IGK6 controller. I can flash a firmware once, after that I have no connection to the microcontroller and the software does not want to start.

Problem description:
BOOT0 = VDD
--> Microcontroller is recognized by STM32CubeProgrammer, STM32CubeIDE flashes firmware and then loses contact to the controller. The microcontroller does not start the user program (which was tested successfully on a STM32G431: LED flashing, otherwise no further commands).

BOOT0 = GND
--> Microcontroller not recognized neither by STM32CubeProgrammer nor by STM32CubeIDE. Exception: Previous Mass Erase with BOOT0 = VDD, disconnect from power supply, BOOT0 = GND, switch power supply on again)

I have already applied some solutions from this forum:
- Mass Erase with the STM32CubeProgrammer.
- ST-Link ISOL replaced by ST-Link
- When flashing the option "Shared Programmer" selected
- Flash speed lowered

Furthermore I have the log file of the STM32CubeIDE:
[3.435] spawnCubeProgrammer():
[3.435] spawnCubeProgrammer(): 14:58:31:695 Download verified successfully.
[3.435] spawnCubeProgrammer(): 14:58:31:695
[3,435] spawnCubeProgrammer():
[3.435] spawnCubeProgrammer(): 14:58:31:705 Disconnected
[3,435] spawnCubeProgrammer(): ------ Switching context -----
[3.438] Device_Initialise(): COM frequency = 4000 kHz
[3.439] Device_Initialise(): Target connection mode: Default
[3.446] readFromTarget(): Reading ROM table for AP 0 @0xe00fefd0
[3.448] reset_hw_wtchpt_module(): Hardware watchpoint supported by the target
[3.451] Device_Initialise(): ST-LINK firmware version : V2J41S7
[3.451] Device_Initialise(): Device ID: 0x483
[3.451] Device_Initialise(): PC: 0x8000634
[3.452] Device_Initialise(): ST-LINK detects target voltage = 3.02 V
[3.452] Device_Initialise(): ST-LINK device status: HALT_MODE
[3.452] initServerContext(): ST-LINK device initialization OK
[3.452] write(): <7> Tx: $OK#9a
[3.452] read(): <7> Rx: $Pf=34060008#88
[3.453] write(): <7> Tx: $OK#9a
[3.454] read(): <7> Rx: $vCont;c#a8
[3.460] handle_vCont_c(): handle_vCont_c, Failed continue thread
[3.460] write(): <7> Tx: $E31#a9
[3.460] read(): <7> Rx: $D#44
[3.462] handlePacket(): Error in executing 'detach' command ...
[3.462] write(): <7> Tx: $E31#a9
[3.462] stop(): Stopping port 61235
[3.522] WaitConnection(): Received stop for port 61235, not accepting new connections.

I have the feeling that the controller hangs after flashing the firmware, or does not start properly.


The hardware looks like this:

MGFHR_0-1687873625450.png

BOOT0 is selectable with a jumper.
PDR is set with 0R resistors. Currently PDR = VDD.

MGFHR_1-1687873782064.png

VDDA and VREF+ are connected to 3.3V.

MGFHR_2-1687873835603.png

The rest of the supply is external according to the data sheet.

I have tried all my ideas and I'm afraid that I can't solve the problem alone. Thanks for all suggestions in advance



1 ACCEPTED SOLUTION

Accepted Solutions
MGFHR
Associate

The solution to the problem was in the software, more precisely in the configuration via the IOC file.
Since the internal LDO was wired directly in my circuit, the corresponding bit must also be set

MGFHR_0-1702386610915.png

In my error case, the microcontroller loaded the hardware configuration after flashing and switched off its own power supply

View solution in original post

2 REPLIES 2
Ksmol
Associate II

Did you solve this? I'm having similar issue

MGFHR
Associate

The solution to the problem was in the software, more precisely in the configuration via the IOC file.
Since the internal LDO was wired directly in my circuit, the corresponding bit must also be set

MGFHR_0-1702386610915.png

In my error case, the microcontroller loaded the hardware configuration after flashing and switched off its own power supply