To improve the accessibility of our content, please find the audio version of this blog post.
We recently published an STM32MP1 workshop, making this a great time to start experimenting with the platform. The course utilizes an STM32MP157C-DK2 Discovery Kit and all the software that the educators use are available online. At first, the material begins with an overview of the board to help attendees navigate the basic layout and get started quickly. The vast majority of the workshop is self-sufficient and doesn’t require a PC connection. However, some may decide to use the ST-LINK interface to test certain features or upload code. Users may also decide to plug a keyboard, a webcam, and a mouse to the Discovery kit and enjoy the fact that Linux quickly recognizes these peripherals.
STM32MP1 Workshop: Appreciating DDR Design Challenges
The workshop goes beyond the STM32MP1 itself to tackle the hardware challenges that come from designing a PCB for an MCU. For instance, one session delves into the DDR tool suite present in STM32CubeMX. Not only does the utility help with the DDR configuration but it also offers testing capabilities and a system for tuning performances. It thus ensures users appreciate the work that System-in-Package and System-on-Module makers put when designing solutions around the STM32MP1. As we saw in the ten Commandments of working with an MPU, these type of devices require a lot of external hardware components and demand a lot of fine-tuning, especially when it comes to the RAM. The workshop helps attendees better understand what is going on behind-the-scenes and will allow engineers to better evaluate if an entirely custom design is really the best way to go.
STM32MP1 Workshop: Appreciating the Complexities of Custom Linux Distribution
Another fascinating aspect of the workshop is its willingness to cover the OpenSTLinux Board Support Package (BSP). As we saw with the QSMP SoM from Ka-Ro, any team wishing to heavily customize their Linux distribution for the STM32MP1 will start with the OpenSTLinux BSP. The workshop helps engineers get started with the pin configuration in STM32CubeMX. The course even goes into the details of the three device tree files required (TF-A for the first stage of the boot loader, U-Boot for the second stage, and Linux DT for the peripherals). This is fundamental as the operating system needs this information to configure the microprocessor. Hence, the workshop shows practical setup stages in STM32CubeMX and in a compiler to better guide engineers.