Full Version: loading to device without debugging
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
Hi all this is my first post.
First off a big thanks to the developer of EM::blocks for making ARM development more accessible
to people that don't have 5 grand for a tool chain.

Now to my question. I have successfully created a project from scratch for STM32F405RG and have it working with J-link.
This is a great first step but is there a way to upload code to target device without launching debug? I usually don't use debug that often when developing except to trouble shoot a problem not apparent from the boards I/O.
Is this because I'm using J-Link instead of ST/Link?
So far I have not been able to find any reference to this on the forum.

Any guidance would be appreciated.
No , it's not because of the J-Link. The case is the same with STLink. EmBlocks is not built for production programming, it's just for development. Therefore it is expected you to have some other tools for the job. There are some tools for STlink, like STLink Utility, ST Visual Programmer or ST Command Line Tool. It should be the same with JLink.

For example a simple web search brought me to this page:

Or you can do like me and use debugging session for just release config flashing. Just start and stop it. (Although you can see some minor changes in the MCU behaviour due to some infrastructure adjustments)
You can Setup external Tools in emblocks. Tools->Configure Tools...

See the picture how to set it up to load a hex file using STLink.
It should be similar using the J-link command line flash tool.

The you can flash your board with one click in em:blocks.
OK thanks. Its not about production programming, I just don't want to launch the debugger all the time.
Its a feature that is in both CooCox and Keil and I find it very convenient to have.

Could this be a feature request?

The external tools idea is good I think I have found info in the J-Flash ARM guide that will help me to setup the parameters.
Perhaps this is possible as a new feature.

A menu entry with "Flash" and submenu's "download"and "erase". The commands to actually flash or erase would be set in the linker script of the corresponding debugger probe. If the commands are not set then the menu's are disabled.

I think that that would be a nice feature.

You should use the Jlink commander according this: ... eadID=1567
Yes a flash menu item would be a great addition. I'm a bit surprised I am the only one that has mentioned it so far. I can't figure out how to configure j-link to download to flash from the info available
and the link about JLink commander isn't going to get me any closer I'm afraid. The fact that it can't deal with .hex or .elf also seems to be a problem.
It would take someone with more command line or scripting experience than I have.
Well, I think that a lot of probes don't have a real option only the download and quit. And to be honest, I never use that option neither. I always use the debugger because I'm verifying if something goes right. E.g. the STlinkGDB only programs the sectors which are changed so that is quite fast.

I don't know how many people are using this and I don't know yet how many probes are capable of doing this out of the box (preferable with a .elf file).
I find always having to open the debugger slows me down.
I think a lot of people like myself doing embedded work are sculpting
their designs not working as high minded CS developers.
If I change a color on a display I don't need to see anything in the debugger
as the feedback I need is from the development board.
With each new change there are now so many steps especially
With J-link. I have to launch the GDB then the debug window changes
My view so the code I want to tweak has to be found again then I have to remember
To quit debug so I can edit the code again. It really is a slow method IMHO.
Compare that to the simplicity of one button download.

Your projects could be quite different from mine. I do fully understand your thinking and I have been missing similar functionality for the Release code that has no debuggin support.

Although, I have been pleased with the available functionality
  • Debug target EmBlocks and GDB
  • Release target EmBlocks for building and STM32 ST-LINK Utility for programming the target (with HEX file)
    EmBlocks and ST-LINK can be open at the same time, so there is no startup delays and both programs are very fast.
I was programming 10 boards today and found the J-Link worked pretty well using the shortcut keys so as a production programmer it works pretty well F8, F5,F8...not so bad. I'll take your advice and try out the STlink utility.

Pages: 1 2