I am new to development with mbed. I started a new project and used GitHub - ladislas/mbed-cmake-template by @ladislas as a basis, as I need to connect several devices that share a good amount of code. So far everything worked really nicely.
However, I have a problem flashing my STM32L432 using openocd. After the first time I flash, openocd can no longer connect to the device (unless I press the reset button). I have the suspicion that SWD gets disabled.
After this I can only flash using the CubeIDE or Mbed studio.
So I am clearly doing something wrong.
My openocd call looks as follows: openocd -f openocd.cfg -c 'program $(BIN_PATH_BACK) 0x08000000' -c exit
The openocd.cfg contains this:
# This is a ST NUCLEO L432KC board with a single STM32L432KCU6 chip.
# This is for using the onboard STLINK/V2
source [find interface/stlink.cfg]
transport select hla_swd
# increase working area to 48KB
set WORKAREASIZE 0x0c000
# chip name
set CHIPNAME STM32L432
source [find target/stm32l4x.cfg]
# use hardware reset
reset_config srst_only srst_nogate
Thank you for your answer. Unfortunately this does not help.
I get this the second time I try:
openocd -f openocd.cfg -c 'program xxx.bin 0x08000000' -c 'sleep 200' -c 'reset run' -c 'exit'
Open On-Chip Debugger 0.11.0-rc1+dev-00010-gc69b4deae-dirty (2021-01-04-09:36)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
Info : clock speed 500 kHz
Info : STLINK V2J37M26 (API v2) VID:PID 0483:374B
Info : Target voltage: 3.284961
Error: init mode failed (unable to connect to the target)
in procedure 'program'
** OpenOCD init failed **
shutdown command invoked
Did you erase the chip (get rid of the Mbed OS 6.6.0 program) before trying to program it with a program built with Mbed OS 6.5.0 ?
I can programm my Blackpill (STM32F411CEU6) board with openocd several times in a sequence with no problems. However, when I program the chip with a Mbed OS 6.6.0 program then additional attempts to program it with any version fail.
I use the following command in bash script: