Main features:
* STM32U3xx support
* extend Black Magic Debug Probe upload method to more boards
* support UART Tx Rx pin swap
* OpenOCD and arm none eabi gcc updated
And several fixes, new boards support, enhancements,...
Release Note here:
https://github.com/stm32duino/Arduino_C ... tag/2.10.0
STM32 core release 2.10.0
Re: STM32 core release 2.10.0
I have mentioned in another thread here that I usually don't have much luck with debugging in the Arduino IDE. However, after I only very recently updated to 2.9.0, I found that debugging was being kind to me - for a change it just worked!
Deciding to live dangerously, I updated to 2.10.0 today. I notice some extra warning apparently due to gcc change, but no big deal, maybe even an improvement.
Unfortunately, debugging broken again:
... which means absolutely nothing to me.
Went back to 2.9.0, and great, debugging works again.
Windows 11 system, Arduino IDE 2.3.2.
Deciding to live dangerously, I updated to 2.10.0 today. I notice some extra warning apparently due to gcc change, but no big deal, maybe even an improvement.
Unfortunately, debugging broken again:
Code: Select all
[2025-03-13T20:52:27.815Z] SERVER CONSOLE DEBUG: GDBServerConsole: onBackendConnect: gdb-server program client error Error: read ECONNRESET
[2025-03-13T20:52:27.818Z] SERVER CONSOLE DEBUG: onBackendConnect: gdb-server session closed
GDB server session ended. This terminal will be reused, waiting for next session to start...
Went back to 2.9.0, and great, debugging works again.
Windows 11 system, Arduino IDE 2.3.2.
Re: STM32 core release 2.10.0
Probably linked to this change:
https://github.com/stm32duino/Arduino_C ... fe82fc7a0b
And also you probably do not have the reset connected.
You can try to use the platform.local.txt to use old way.
https://github.com/stm32duino/Arduino_C ... fe82fc7a0b
And also you probably do not have the reset connected.
You can try to use the platform.local.txt to use old way.
Re: STM32 core release 2.10.0
You are correct that I did not have reset connected. Very occasionally I have found it necessary to manually reset a board, but I've never seen a good explanation of when reset might be needed. Well, I have seen something that said it was needed if code had been loaded into the target that used the SWD pins as GPIOs, but I have never knowingly done that.
In any event, connecting reset did not help. When using 2.9.0 with reset line connected (even though that was not required), I can see that nrst does get pulled low. However, when using 2.10.0 the reset line just remains high, so maybe it is not getting far enough to even try.
I'm not sure how to use platform.local.txt. Taking a punt, I copied the entire platform.txt into platform.local.txt in the same directory, and edited that to change select_dapdirect.cfg back to select_hla.cfg. That did not help, it still does not work (reset line is still connected too, but still stays high).
I looks like it did pick up the platform.local.txt. Before I had that it was getting this:
With platform.local.txt there, it now says:
So, same error, but "select_dapdirect.cfg" in there has changed to "select_hla.cfg".
In any event, connecting reset did not help. When using 2.9.0 with reset line connected (even though that was not required), I can see that nrst does get pulled low. However, when using 2.10.0 the reset line just remains high, so maybe it is not getting far enough to even try.
I'm not sure how to use platform.local.txt. Taking a punt, I copied the entire platform.txt into platform.local.txt in the same directory, and edited that to change select_dapdirect.cfg back to select_hla.cfg. That did not help, it still does not work (reset line is still connected too, but still stays high).
I looks like it did pick up the platform.local.txt. Before I had that it was getting this:
Code: Select all
Waiting for gdb server to start...[2025-03-14T03:11:54.754Z] SERVER CONSOLE DEBUG: onBackendConnect: gdb-server session connected. You can switch to "DEBUG CONSOLE" to see GDB interactions.
{runtime.tools.xpack-openocd-0.12.0-5.path}/bin/openocd -c "gdb_port 50000" -c "tcl_port 50001" -c "telnet_port 50002" -s "d:\\d\\arduino\\sketch_mar3a" -f "D:/u/Arduino232/resources/app/plugins/cortex-debug/extension/support/openocd-helpers.tcl" -f interface/stlink.cfg -f "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\STMicroelectronics\\hardware\\stm32\\2.10.0/debugger/select_dapdirect.cfg" -f target/stm32f1x.cfg
[2025-03-14T03:11:57.224Z] SERVER CONSOLE DEBUG: GDBServerConsole: onBackendConnect: gdb-server program client error Error: read ECONNRESET
[2025-03-14T03:11:57.229Z] SERVER CONSOLE DEBUG: onBackendConnect: gdb-server session closed
GDB server session ended. This terminal will be reused, waiting for next session to start...
Code: Select all
Waiting for gdb server to start...[2025-03-14T02:29:50.119Z] SERVER CONSOLE DEBUG: onBackendConnect: gdb-server session connected. You can switch to "DEBUG CONSOLE" to see GDB interactions.
{runtime.tools.xpack-openocd-0.12.0-5.path}/bin/openocd -c "gdb_port 50000" -c "tcl_port 50001" -c "telnet_port 50002" -s "d:\\d\\arduino\\sketch_mar3a" -f "D:/u/Arduino232/resources/app/plugins/cortex-debug/extension/support/openocd-helpers.tcl" -f interface/stlink.cfg -f "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\STMicroelectronics\\hardware\\stm32\\2.10.0/debugger/select_hla.cfg" -f target/stm32f1x.cfg
[2025-03-14T02:29:52.588Z] SERVER CONSOLE DEBUG: GDBServerConsole: onBackendConnect: gdb-server program client error Error: read ECONNRESET
[2025-03-14T02:29:52.591Z] SERVER CONSOLE DEBUG: onBackendConnect: gdb-server session closed
GDB server session ended. This terminal will be reused, waiting for next session to start...
Re: STM32 core release 2.10.0
Ok. So probably linked to the new openocd version.
Re: STM32 core release 2.10.0
I've found an issue in the 2.10.0 linked to openocd. Unfortunately the version referenced in the platform.txt is not correct.
https://github.com/stm32duino/Arduino_C ... ssues/2683
I will release a 2.10.1 today to fix this.
I've tested the debug and it works as expected.
https://github.com/stm32duino/Arduino_C ... ssues/2683
I will release a 2.10.1 today to fix this.
I've tested the debug and it works as expected.
Re: STM32 core release 2.10.0
Thanks Fredric.
I tried 2.10.1 and debugging "just works" as it did using 2.9.0 (so I did not need to connect the reset line, and did not have to use platform.local.txt).
I tried 2.10.1 and debugging "just works" as it did using 2.9.0 (so I did not need to connect the reset line, and did not have to use platform.local.txt).