2026-03-01 7:16 PM
Are there STM32CubeMX files for the example projects in STM32Cube_FW_MP2? It would really help understand peripheral configuration. Specifically the .ioc file for the OpenAMP example project used in this tutorial.
I am trying to better understand STM32CubeMX peripheral setup, especially in regard to how each peripheral can be selected for each core in secure or non secure mode. And how that interacts with the Linux device tree.
2026-04-09 4:51 AM
Hello @ADunc.1
As for the builtin examples in STM32CubeMX, it will be limited mainly to STM32 MCUs. However the STM32Cube_FW_MP2 package provides loads of examples running on CM33 interacting with CA35 using the OpenAMP that could be loaded run and debug in CubeIDE.
Also in CubeMX you can customize your project using the secure/non secure peripheral concept explain in our ST wiki page
https://wiki.st.com/stm32mpu/wiki/Resource_Isolation_Framework_overview
2026-04-09 1:45 PM
I was more thinking for when you want to move on to setting up the peripherals for your own hardware. ST are great at providing lots of examples and tutorials, but they all seem to end at 'here is how to do this with our demo kit and example'. In the real world, if you are committing to using a ST part, you are going to put it onto custom hardware and eventually have to set it up to suit.
Usually on any ST part, when configuring for custom hardware you would start by using STM32CubeMX. Ideally with a starting .ioc file, especially for complex parts like the MPUs. Then from there build your linux image on top of that .ioc file and the device tree it generates.
Anyways, I found that there are no sample .ioc files, but to create one, you just need to make a new STM32CubeMX project for a devkit, select init all peripherals, and save it. From there you can configure the part, generate your device tree and build Linux. I probably should have marked that as the answer...
From there, the tutorial to build your STM32CubeMX device tree into Linux and all the boot loader stages is not very intuitive. There are file naming mismatches between what the Linux build wants and what STM32CubeMX generates and a few other issues. But eventually I got there.