cancel
Showing results for 
Search instead for 
Did you mean: 

Learning Path suggestion

Lucky_Dev
Visitor

Hello everyone, I'm currently exploring the STM32MP257F-DK. 

As recommended in the "MOOC - STM32MP2 demo workshop", I'm diving deep into the wiki. I have also watched the "MOOC - STM32MP1 workshop". Of course, I have reviewed the getting started guide before doing anything. However, I want to know how this amazing community tackles the challenges of developing a new application on this platform. Do you recommend any specific development flow (Start with the examples, port STM32MP1 lab examples to the new platform, start with the template, use STMCubeMX and generate a new device tree, etc.)? Is there any tutorial that helped you a lot?   

I will also try to update the post with any resources I highlight. 

Thank you in advance. 

Note: I'm new to this community, if this post is not what should be here let me know. Of course, any feedback is well received. 

ROUDMAP [LIVE]

For anyone interested, I'm following the current roadmap:

  • STM32MP257F-DK User Manual [Doc]

 A good first start but not the best. Therefore, I jumped to the STM32MP wiki.

  • STM32MP wiki - Getting started guide (STM32MP257F-DK). [wiki entry]

At the point of finishing the guide, I've the Developer Package (Yocto-based) installed. Thus, I have a basic development environment for developing applications for the Arm Cortex A-35 and Arm Cortex M-33. (If I have understood everything well). The following logic step was expanding the available examples that come with the Starter Package. Thus, I deepened into the STM32CubeMP2 Package.

  • STM32CubeMP2 Package - Getting started [wiki entry]

This guide highlights the differences between the three main Packages (Starter, Developer and Distribution) and gave me a basic flow for loading the Examples into the board, expanding the few already available. However, I didn't have a good understanding of how these packages integrate into the development flow, so I reviewed the following wiki entry. 

  • Which STM32MPU Embedded Software Package better suits your needs [wiki entry]

This wiki entry explained to me the use cases of every Embedded Software Package. Therefore, I continue to work on the Developer Package. Furthermore, I highlight the "Example of production cycle for the Yocto-based OpenSTLinux embedded software" section which gives me the necessary context to understand the Package and their role. Once the concepts are understood, I return to the question of how developing an application.  

  • Template from the STM32CubeMP2 Package [File]

Reviewing the material provided by the STM32CubeMP2 Package I came up with the Template example. I build the example and load it into the board (giving me the expected results - An amazing blinking orange led). However, I was working on the files presented on the repository I have downloaded with STMCubeIDE. Thus, I try to copy the folder and then open the project in my STMCubeIDE workspace. As expected, and warned by a few, the building process was not straightforward, but it gave me the opportunity to learn to modify the relative paths and the makefile, all using the STMCubeIDE (the makefile is created in every building, so you need to change project parameters). With the template build and load, I tried to modify I few parameters, as the blinking led. With the schematics in front of me I identify the green led as my next victim. However, I faced the cold truth that the platform is a little bit more complex (failing in my try), so I jumped to the following wiki entry.

  • LEDs and buttons on STM32 MPU boards [wiki entry]

In this wiki entry I could identify the problem. The other LEDs are assigned to other usages, and something (I think context assignment and RIF) is preventing me from using it through the coprocessor. At this point, I understood that I needed a little more guidance, thus I explored the Training Zone (because I was a little bit overwhelmed by the wiki). 

  • MOOC - STM32MP2 demo workshop [STMicroelectronics YouTube Channel]

Despite not being listed in the STM32MOOC, it helps me refresh what I have learned from the Getting started guide and gave me more context from the platform I was using and the development flow. It also indicates to me that the changes from the previous version (STM32MP1) in the development flow are not big (If I understood well). Therefore, I jumped to the following MOOC.

  • MOOC - STM32MP1 workshop [STMicroelectronics YouTube Channel]

From this MOOC I highlight the very helpful labs and lectures previously the labs. The most important thing was understanding the boot chain, how the assignment of peripherals works, etc. 

At this point I continue working in the material of "MOOC - STM32MP1 workshop". When I feel enough confident with the concepts explained and the labs, I will update this roadmap with the insight obtained. 

Note: If you know anything that could help me with the assignment of peripherals, or anything I have forgotten, and I must review I will be very thankful to any feedback or guidance. 

Moreover, I expect this post will help anyone to learn the usage of the platform.

What do you think about the path I'm following? Did you follow a different path?

0 REPLIES 0