Loading...
 

Zephyr project on STM32

   Zephyr Workbench, a VSCode extension to manage Zephyr on STM32.
It enables users to easily create, develop, and debug Zephyr applications.
Main features:
  • Install host dependencies.
  • Import toolchain and SDK.
  • Create, configure, build and manage apps.
  • Debug STM32.
You can directly download it from the VSCode marketplace
For more details, visit the Zephyr Workbench

System Workbench for STM32


Run without program?

Silly question that probably has an obvious answer but how do I run the code on the target without constantly re-programming it?

When I start a debug session SW4STM32 ALWAYS reprograms the chip and since I’m restarting every few seconds to debug some startup code, I really don’t want to spend the time or risk damage to one of the few prototype boards by the constant writing.

I also have some boards that program fine from st-flash or openocd in telnet mode but fail with the gdb ‘load’ command which means I can’t debug with them as the flash write fails before I get anywhere.

So where is the magic button?

Starting the debugging is part of the make-process, and the chip will only be reprogrammed, if something in your code changed.
You can simply press reset on your board to restart your debug-session.

Harry


France

Hi,

To debug an already programmed image, just disable image loading by editing your debug configuration: project >> Debug as... >> Debug configuration >> no-load_configuration >> Startup then uncheck the Load image check-box... (but, of course, keep Load symbols checked or you will not be able to debug...)

Be careful however, if you change the source code of your program, you must use a loading configuration at least once, or you will still debug the old program with the new symbol table, yielding incomprehensible results...

Hope this helps,

Bernard (Ac6)

That explains why I’m having trouble - the Startup tab is totally empty.

I just noticed that the “Build (if required) before launching” box is also missing.

On another system it is present - no idea why they should be different!!

Is there a config file I can copy from the working system that will allow the tab to be populated?


UPDATE:
Stranger and stranger. I created a new debug config and it had the “Build (if required) before launching” box. I deleted this new config and now my original config also has the “Build (if required) before launching” box as it should. It also now has the first Startup box - but still no “Load Symbols and Executable” no “Runtime Options” and no “Run/Restart Commands”

I think that maybe its just not painting the screen correctly - if I switch between Debugger and Startup a few times the extra options start to appear until I have a full screen of options on the Startup tab rather than it just being blank!!


France

Hi,

Did you try resizing the Debug Configurations window? It should look like the attached one, when displaying the Startup tab; if it does not you may want to update your installation (Help >> Check fr Updates...). If you still have display problems, it may be due to your graphic driver or some installation problem, either of your OS or System Workbench.

By the way which OS platform are you using? Windows, Linux, MacOS/X? 32 or 64 bits?

Bernard (Ac6)

The Debug Configurations window is the full height of the screen - its just that it is empty to start with, all other tabs are fully populated.

I’ve done an update and I’m running on a 64bit Kubuntu 14.04.4 LTS. Java -version
java version “1.7.0_101”
OpenJDK Runtime Environment (IcedTea 2.6.6) (7u101-2.6.6-0ubuntu0.14.04.1)
OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)

Selecting another config and then back to the GDB OpenOCD Debugging config initially populates the “Initialization Commands” area, subsequent random tab selections eventually causes the “Load Symbols and Executable”, “Runtime Options” and “Run/Restart Commands” sub-windows to appear and be populated.

My eventual aim would be to determine why some prototype boards program OK from GDB and other fail when they all program OK using st-flash (from the texane/stlink package) and using OpenOCD in telnet mode. That way I wouldn’t have to be concerned with NOT programming the target.

France

Hi,

You talk of the “GDB OpenOCD Debugging” configuration. You should use the “Ac6 STM32 Debugging” configuration, not the “GDB Hardware Debugging” configuration. The Ac6 is based on the CDT GDB support, but it is an extended, tailored, configuration.

Bernard (Ac6)


Hi Developer Team,

I think this feature is important. And the process can be simplified to improve user experience (that is what the tool supposed to do right?)

Below is my proposal:

  1. Add an icon to Download image in the toolbar so that user is one-click away from reflashing the target if auto download option is unchecked. This is also good if the user wishes to program a few boards, one after another.
  2. Add an icon to Full chip erase (possibly with readout-protection-disabling capability) .
  3. Highlight with red Probably stale target image message at the bottom most of the debug perspective window frame whenever SW4STM32 thinks so.
  4. Replace Load image with Auto download on debugging check-box in the debug configuration to make the intent clearer (optional).

 

Newest Forum Posts

  1. reservation car service Seattle by Jamesprede, 2025-05-01 10:06
  2. Last day: drone bonus by Danielrug, 2025-04-19 16:55
  3. SPI on Nucleo_STMH533RE by higginsa1, 2025-03-25 07:37
  4. SPI on Nucleo_STMH533RE by royjamil, 2025-03-23 11:31
  5. SPI on Nucleo_STMH533RE by higginsa1, 2025-03-23 09:33
  6. Configuring DMA for ADC in SW? by sam.hodgson, 2025-03-04 12:58
  7. Insightful Perspectives on This Subject by davidsycle, 2025-03-04 05:45
  8. Build a project in "release" mode by info@creosrl.it, 2025-02-20 18:12
  9. Build a project in "release" mode by info@creosrl.it, 2025-02-20 17:05
  10. Build a project in "release" mode by tang, 2025-02-20 10:36

Last-Modified Blogs