2024-02-01 2:04 AM
Hi everybody,
I'm trying to connect to the STM32H743IIT6 on my custom PCB via JTAG. It seems it responds, I traced it with a logic analyzer (attached). I'm not too knowledgeable with JTAG Protocol, but the 0x5253000 the H7 answers seems not to be the chip ID from the BSD file.
Consequently, I cannot connect via STProgrammer or CubeIDE.
I checked all VDD pins, they're all ok. BOOT0 pin is Ground, NRST is pulled high, VCAP pins are 1V. Pinning is correct.
I tried it with STLINKV3SET and a SEGGER J-Link base with the same results.
I also tried pulling NRST down before flashing with no result and I looked at the signals with an oscilloscope, they seem alright (attached).
Does anyone have an idea? I am out of ideas of what to try. Thanks a lot in advance!
Solved! Go to Solution.
2024-02-01 8:06 PM
Questions (based on experience to have my ST-LINK debug working on a custom STM32U5xx board):
Another option to try is:
if you have USB connected - set BOOT to high and see if you can see the bootloader in STM32CubeProgrammer.
If all this fails: potentially the MCU itself is not properly powered.
What is the exact wiring of the DEBUG pins on your board (the debugger header connector and its signals)?
2024-02-01 2:51 AM
Present Schematic
Would expect VCAP voltage to be closer to 1.25V
LDO or SMPS mode?
2024-02-01 4:12 AM
2024-02-01 9:13 AM
No SMPS on H7 single core.
2024-02-01 8:06 PM
Questions (based on experience to have my ST-LINK debug working on a custom STM32U5xx board):
Another option to try is:
if you have USB connected - set BOOT to high and see if you can see the bootloader in STM32CubeProgrammer.
If all this fails: potentially the MCU itself is not properly powered.
What is the exact wiring of the DEBUG pins on your board (the debugger header connector and its signals)?
2024-02-01 11:51 PM
Hi everyone,
thanks for the many answers on short notice. Most things you mentioned I considered. Yet again, it was a small problem, which tjaekel post reminded me about.
We use a 10-pin jtag plug on our boards, which is different from the STLINK pinout. The first STLINK pinout you come across on the internet is also a 10-wire, so I build an adapter for it.
The problem is, the STLINK has a 14-pin on the debugger, where a 10-wire flat ribbon is put in the middle, meaning pins 1&2 and 13&14 are NC. I needed to change my adapter to that pinout and flashing with STLINKV3SET worked (see attached and UM2448).
This still doesnt answer why the segger j-link base does not work (pinning there is correct), or why the observed JTAG communication happens - but I can work with the STLINK, so that suffices.
2024-02-02 2:52 PM
Great, that at least ST-LINK works.
Correct, I had same confusion: NUCLEO boards populate a 2x5 debug header (1.25mm pitch) but ST-LINK adapter has 2x7 pins. I have to "center" the 2x7 ribbon cable as well.
The left and right pin columns are not used. One side is intended to connect the VCP UART to the ST-LINK (coming from a real UART Tx and Rx on MCU, ST-LINK provides these as VCP UART - I do not use).
Here my ST-LINK header.
I went with the same layout as on NUCLEO boards. And I have to "center" the 2x7 ribbon cable.
BTW: on older NUCLEO boards it was possible to "hijack" the ST-LINK on these boards. A NUCLEO board could also act as debugger interface, disconnecting the onboard MCU but connecting another board via the debug header.
On my NUCLEO-U5xx board - this feature seems to be gone.