H7 Boot Loop with green light & no DFU recovery available

Hello,

I have had a look around the board but nothing that quite matches my issue. I have a fast flashing green boot light that then pauses momentarily and tries again, this behaviour began after a recommended auto firmware update. I can see the H7 appearing and disappearing in device manager over and over.

I can then jump RST and BOOT to get “STM device in DFU mode” in device manager, but using this tool also fails. See image.

Have tried with and without SD card, 1000 different cables and a few different PCs.

Any sage advice to get me back up and running out there?

Cheers

Interesting…

Yeah, there’s still ST’s DFU system.

Which board do you have? The IDE should be able to recover it for you. If this is Arduino’s Portenta then that’s a little more tricky.

1 Like

Sorry should have made that clearer. It’s an OpenMv H7 “normal”.

Okay, so, you have the camera in DFU mode?

Then click connect and go through the normal dialog about the board being bricked, select the board type, and then click cancel on the normal bootloader connect window. The IDE will then ask if you want to try DFU mode, say yes, and then follow the prompts. This will launch ST’s DFUse tool.

… The title of the window shouldn’t say DFU Util since that’s a different program.

Yup DFU mode. I can only get DFU Util to open as per the screen grab…

I go to:
Connect →
No Cams found OK →
Do you have a Cam connected, is it bricked? YES →
Select OMV H7 OK →
Erase Internal YES →
Reconnect / Hit Cancel to skip to DFU CANCEL →
Unable to connect to normal bootloader OK →
Repair by DFU Bootloader OK →
Disconnect reconnect press OK after enumeration OK →
DFU Util window opens as per screenshot dfu-util 0.9

Obviously I’m missing something simple here !

Huh, I thought I changed that to use DFSE. Okay,

See the IDE install folder, share/qtcreator/dfuse/dfusedemo

The app should find your camera attached when it’s in DFU mode. Then use the upgrade/verify area in the gui to choose the share/qtcreator/firmware/openmv4/bootloader.dfu to repair to the original bootloader on the openmv cam h7 and upload it.

After that you should be able to recover the camera using the IDE through the normal connect prompt. You may also just use the same tool to upload the firmware.dfu file too to recover the firmware.

1 Like

Tried that looked into the ST community can’t find much. Basically I get stuck at 49% erase every time no matter how long I wait…

Just load the bootloader.dfu file then.

So, what’s happening is that you have the latest REV V silicon. ST broke their own DFU Util and dfu-util with that chip.

You can only load the bootloader.dfu to the first sector of the chip’s flash and then using that you can use our IDE’s regular bootloader to flash your firmware.

We did however, speed up our regular bootloader… and it may not be 100% stable. So, if this is the case and you use our regular bootloader and it fails to make a working camera then install the previous version of the IDE and you should be able to restore the OpenMV Cam.

1 Like

Understood.

However in the meantime I grabbed the ST CubeProgrammer and used that to deploy the latest openmv.bin, this got me back a working OenMV H7. Sorted!!

Thanks for your help!