Loading...
 

SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

   With System Workbench for Linux, Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world. And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4.
You can get more information from the ac6-tools website and download (registration required) various documents highlighting:

System Workbench for STM32


new to ST in general... actually new to ARM

I did not have time to finish the step by step example but here it is an incomplete version.

Try to make a Refresh (F5) on project after build (right click on project, Refresh) - you should see the .elf file if the build was sucessfully. This is the binary file you should download to target board.
But before to be able to do that you have to create a new debug configuration (AC6 debug configuration).

Check files attached.

For AC6 Debug Configuration - see pictures
Don’t forget to “Refresh” the project after Build phase (else you should locate your ELF file manualy)



“yet, the build would not complete, there are no errors, the build takes some time and there are no messages at the bottom indicating that something went wrong”
=> Did you check Console window. Here is the place where Eclipse will print the output. You have to select manually this windows, it is not like in other IDEs where when Build is started Output is automatically shown.

ah! it worked!

not exactly the way I wanted it to work though, I would like to use a differenc space as a workspace since I dont like poluting source files like project examples such as that.

I added a document where you can view my last attempt to import the project into a separate workspace and it ends in an error.

but nonetheless, I am pleased that I finally managed to program my Nucleo and it works and is happily blinking away.

but now, if I were to make this blinking project from scratch, in my own workspace and all, how should I start this?

I am thinking I should start by using the black box as my work space and create a new project? what files should I look at copying into my project? I dont completely understand the structure of the project. can you give me a quick outline on it?

thank you very much for your help this far, it is a lot to ask for more, I appreciate the assistance and look forward to more replies from you.
Kind regards
Ovi

Very glad that you succeed. This is a big step, further you can create projects with you own layout.

====

“not exactly the way I wanted it to work though, I would like to use a differenc space as a workspace since I dont like poluting source files like project examples such as that”

=> consider this as the first test (quick test). Anyway for a project you can’t use this layout.
Regarding the polution of ST HAL libray, I have two copies of the libraries one is for this kind of tests and one I use for CubeMX (untouched). Normally I download the zip package of the library (e.g. stm32cube_fw_f7_v110.zip) then if something go wrong I delete the HAL folder and unzip it again. The only problem is that I will lose some of the projects already compiled but when need I import again the project - after a while seems just few clicks.

__For information - you can manage in few different ways (4 maybe) HAL libraries (HAL libraries = the directory structure that contains code provided by ST or other parts for using with ST MCUs)
- CubeMX provides a way to install/update HAL libs. You can choose the location on system
- STM32CubeUpdater - a standalone application (use also by CubeMX?) that can manage HAL libs. Using this app a separate directory from where CubeMX library are installed can be created and managed
- by downloading and unzipping libraries from ST website.
- System Workbench can download (if required) his own copy__


“but now, if I were to make this blinking project from scratch, in my own workspace and all, how should I start this?”

=> it is possible to recreate the project from scratch whit your own layout.
I did this with my projects - it take me few afternoons, deleting the project and start again few times. But if you understand the structure it is not complicated.

Regarding the document GPIO first project:
1) If you use System Workbench ignore TrueStudio. It is a commercial toolchain, Eclipse based and also using gcc as compiler (this is why you see both).

2) I don’t know internals of System Workbench, but I think doing this you did not import all the necessary structure (I think dautrevaux mentioned this). The project paths are not correct anymore.


===
Few words about stating from scratch:
If you want to start from scratch (but keep in mind that exist also other ways like generating project from CubeMX, or using SW and ask at the project creation to add HAL)
create a new directory YourProject. Create a directory for SW project like SW4STM32 inside YourProject.
From HAL library you will need this directories Drivers and Middlewares (are on the same level as Projects directory). This are big you need only few files from here - delete later not now.
Then from GPIO_IOToggle project copy Inc and Src directory - this are project source code files.
Start System Workbench (I think you can keep default path for WA) then File > New > C Project > AC6 STM32 MCU Project
Enter a name
and don’t use default location -> navigate and choose SW4STM32 folder.

When ask choose “No firmware”

There are much more to say about this, but this is the idea.