cancel
Showing results for 
Search instead for 
Did you mean: 

Get STM32H735G-DK out of deadlock!

Stefan Meyre
Associate III

I can not connect my STM32H735G board via ST-Link anymore. "no stm32 target found". I tried "connect under reset" (ST Link Utility and ST programmer) as well as connecting boot0 to VDD.

Any idea how to erase the flash and start over? Cheers Stefan

1 ACCEPTED SOLUTION

Accepted Solutions

Powering with the STLK jumper is fine, the trick at least with the H747-DISCO was to completely disconnect the board from ALL power sources, and connect/disconnect the sole cable several times, with the BOOT0 pads solder bridged to VCC

The H7 has a weird reset methodology the NRST is not the same as the Power-On-Reset, which recovers settings/options from flash, as part of some security mechanism and starting thru ROM. If the Flash is not blank, it then transfers control.

Your code is perhaps executing, I think that putting some break-out/erase code to check a GPIO pin prior to the SMPS/LDO and VOS settings might permit simpler recovery. I'd probably use the BLUE USER button to nuke the device during future development.

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

View solution in original post

9 REPLIES 9

The BOOT0 High trick requires that you power cycle the board several times, a reset is not sufficient. When the H7 is recognized you need to erase the broken user code.​

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

Thx clive1; so I did change the power supply to the USB adapter (did power with the ST Link before). Therefore I could keep the ST-Link attached and did cycle the power while Boot0 was high (SW1 in SysMem position). Howerver I could not establish a connection to get to erase the flash. What could I possibly miss? I had no problems to recover my STM32F4s in the past...

Powering with the STLK jumper is fine, the trick at least with the H747-DISCO was to completely disconnect the board from ALL power sources, and connect/disconnect the sole cable several times, with the BOOT0 pads solder bridged to VCC

The H7 has a weird reset methodology the NRST is not the same as the Power-On-Reset, which recovers settings/options from flash, as part of some security mechanism and starting thru ROM. If the Flash is not blank, it then transfers control.

Your code is perhaps executing, I think that putting some break-out/erase code to check a GPIO pin prior to the SMPS/LDO and VOS settings might permit simpler recovery. I'd probably use the BLUE USER button to nuke the device during future development.

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

Clive, thank you; I got it to work the way you described. But not with the ST Utility but with the ST Programmer.

However a bit awkward the whole thing... Thx, Stefan

Yes, ST has been advised to improve how the recovery of this type of situation is handled. I had an early 747I and bricked the board very quickly. The unresponsiveness of the device was very disconcerting.

One of the related threads so I can find later

https://community.st.com/s/question/0D50X0000BqBA6TSQW/error-to-connect-to-target-stm32h747idisco

https://community.st.com/s/question/0D50X0000Bh5aWoSQI/stm32h747-discovery-kit-not-debugprogrammer

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

Thought I'd add my 2c since I have the same issue.

My method to recover is as follows:

  1. unplug the board (I power through the single USB cable, on ST Link connector)
  2. Hold reset button
  3. while holding the reset button, plug back in
  4. computer indicates a new USB device (I'm on Kubuntu, YMMV)
  5. connect with STM32CubeProgrammer
  6. release reset button
  7. Erase first few sectors (somehow a full flash erase does not work)
  8. board should be fine for now

Thanks for the hint about ST-Programmer, I too was unable to get it to work with ST-Link

MJ042
Associate II

Thanks @Tesla DeLorean . Works like a breeze even for H735 discovery board. Apparently this deadlock happens if power settings in firmware are different from that of hardware. This issue is most likely to occur when programming the discovery board for the first time. The board gets detected, user flashes some program (with incorrect power settings in the firmware, without noticing), it works, but cannot connect it to STLink from the next time. Just follow section 6.2.4 in UM (for H735 disc)

Thanks, I'm glad these things are still proving useful after 4 years..

Yes usually a disagreement with LDO vs SMPS at a board vs software level.

Compounded as some board variants use different modes, H745I-DISCO vs H750-DK as I recall

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