2024-10-28 04:51 AM - last edited on 2024-10-28 04:55 AM by SofLit
So I tried upgrading the firmware. I first downloaded the STM32CubeProgrammer, linux version, on the my computer. Then I got the device into DFU mode as per instructions and attempted to flash the new firmware using the STMCubeProgrammer software. Afterwards, it did not restart and no longer goes into DFU mode. It does not show in lsusb at all. It previously did as an STM device in DFU mode, but now its no show. The MCU is an STM32H743. I found an SWD port on the PCB and connected to it, again using the STM32CubeProgrammer software but with an STLinkV2. On selecting the STLink option and clicking connect, the program reads the MCU details, but fails to read any data or flash a binary file.
When attempting to flash a new firmware I am getting 3 errors:
Any help appreciated.
2024-10-28 04:54 AM
What about Boot pin? did you set it again to the GND?
2024-10-28 06:17 AM
Not sure about this. I am using an STLinkV2 and the header on the PCB that is marked SWD has the following pins and connections to the STLinkV2:
RST - RST
CLK - SWCLK
GND - GND
DAT - SWDIO
As per the above, I have connected RST to the RST pin on the STLinkV2, so I am assuming that the reset signal is being handled by the STLinkV2. Not sure whether RST on the PCB is connected to "the Boot pin"? Would have to check the datasheet and locate that and then check where it connects to. Also not sure what is meant by "set it AGAIN" to GND?
The instructions tell me to press down the two rotary controls, connect to USB, and then to power on the device.
2024-10-28 06:20 AM
@SilasRamsay wrote:
it did not restart and no longer goes into DFU mode. It does not show in lsusb at all. It previously did as an STM device in DFU mode, but now its no show.
How did you enter DFU mode? without setting BOOT pin to VDD?
2024-10-28 07:15 AM
I can only assume that the button presses (2 x rotary and power button) mentioned in the flashing instructions took care of that. The device came up listed as "STM whatever in DFU mode" and on hitting Connect in the CubeProgrammer with it set to USB mode its details came up and so did some of its data content. I have not been able to get it to come up since it was flashed. At this point I was working only via the external USB connector.
I located the internal SWD interface later after this when it got bricked. There is also another header on the PCB that has tracks going directly to the MCU. Looking at the pin connections, this appears to be the UART3 interface on the chip. Is this hooking this up likely to be of any help? If it were UART0 I might expect that it would be, but not so sure about UART3?
Anyway, what does it mean when it says that the 'core is locked'?
CubeProgrammer is also indicating that its status is 'halted'. I tried hitting the 'Run' button but it came back with the same errors.
I don't know whether the chip got wiped and maybe needs a bootloader installing first, but I have just found appnote 2606 and am just going through it to find the right second on the STM32H7 devices. This is one massive file! Anyway once I have found and read the relevant section I will hopefully understand more about the boot on these STM chips.