- Last edited 6 months ago ago
Populate the target and boot the image
![]() | ||||||||
Let's start | Develop on Arm® Cortex®-A7 | |||||||
![]() |
Unpack the board | ![]() |
Populate the target and boot the image | ![]() |
Execute basic commands | ![]() |
Use the demo launcher | ![]() |
1 Overview[edit]
This stage explains how to get, install and boot the STM32MP15 Discovery kit with the Starter Package.
2 Open a terminal[edit]
Open a terminal on the host computer.
All the commands preceded by have to be executed from the host computer terminal.
- Create your STM32MPU workspace directory on the host computer:
mkdir $HOME/STM32MPU_workspace cd $HOME/STM32MPU_workspace
3 Check the host computer Internet access[edit]
- An Internet access through http and https protocols must be provided.
The command below enables checking for Internet access through http/https protocols:
wget -q www.google.com && echo "Internet access over HTTP/HTTPS is OK !" || echo "No internet access over HTTP/HTTPS ! You may need to set up a proxy."
If an 'OK' message is returned, the network is correctly configured.
In this case, skip the rest of this section.
Otherwise, a proxy for http/https protocols is required.
The best solution is to set this proxy through the shell variables http_proxy and https_proxy:
export http_proxy=http://<MyProxyLogin>:<MyProxyPassword>@<MyProxyServerUrl>:<MyProxyPort> export https_proxy=http://<MyProxyLogin>:<MyProxyPassword>@<MyProxyServerUrl>:<MyProxyPort>
Check again the Internet access using the command:
wget -q www.google.com && echo "Internet access over HTTP/HTTPS is OK !" || echo "No internet access over HTTP/HTTPS ! You may need to set up a proxy."
4 Install the tools[edit]
4.1 STM32CubeProgrammer[edit]
- Create your STM32MPU tools directory on the host computer:
mkdir $HOME/STM32MPU_workspace/STM32MPU-Tools mkdir $HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-x.y.z
- Create a temporary directory in your STM32MPU workspace:
mkdir $HOME/STM32MPU_workspace/tmp
- Download STM32CubeProgrammer in the following directory : $HOME/STM32MPU_workspace/tmp
STM32CubeProgrammer v2.12.0 is recommended for ecosystem release v4.1.0.
- Uncompress the archive file to get the STM32CubeProgrammer installers:
cd $HOME/STM32MPU_workspace/tmp unzip SetupSTM32CubeProgrammer.zip
- Execute the Linux® installer, which guides you through the installation process. Select "$HOME/STM32MPU-Tools/STM32CubeProgrammer-x.y.z" as installation directory when it is requested by the installer.
./SetupSTM32CubeProgrammer-x.y.z.linux
The screenshots below have been obtained with old STM32CubeProgrammer V2.7.0. They are provided as examples and are still valid for higher versions :
- Add the STM32CubeProgrammer binary path to your PATH environment variable:
export PATH=$HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-x.y.z/bin:$PATH
- Check that the STM32CubeProgrammer tool is properly installed and accessible:
STM32_Programmer_CLI --h ------------------------------------------------------------------- STM32CubeProgrammer vx.y.z -------------------------------------------------------------------
4.2 USB serial link[edit]
- Install the libusb on your host computer:
sudo apt-get install libusb-1.0-0
- To allow STM32CubeProgrammer to access the USB port through low-level commands, proceed as follows:
cd $HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-x.y.z/Drivers/rules sudo cp *.* /etc/udev/rules.d/
5 Download the image[edit]
- Create your STM32MP1 Starter Package directory on the host computer:
mkdir $HOME/STM32MPU_workspace/STM32MP1-Ecosystem-v4.1.0 mkdir $HOME/STM32MPU_workspace/STM32MP1-Ecosystem-v4.1.0/Starter-Package cd $HOME/STM32MPU_workspace/STM32MP1-Ecosystem-v4.1.0/Starter-Package
- Download the STM32MP1-Ecosystem-v4.1.0 Starter Package into the following directory:
$HOME/STM32MPU_workspace/STM32MP1-Ecosystem-v4.1.0/Starter-Package - Uncompress the tarball file to get the binaries for the different partitions of the image, and the Flash layout files
tar xvf en.FLASH-stm32mp1-openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23.tar.gz
6 Populate the SDCard[edit]
- Set the boot switches (located at the back of the board) to the off position
- Power up the board
- Press the reset button to reset the board
- Go to the Starter Package directory that contains the binaries and the Flash layout files
For ecosystem release v1.1.0 :
cd $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v1.1.0/Starter-Package/stm32mp1-openstlinux-4.19-thud-mp1-19-10-09/images/stm32mp1
For ecosystem release v1.0.0 :
cd $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v1.0.0/Starter-Package/stm32mp1-openstlinux-4.19-thud-mp1-19-02-20/images/stm32mp1
- Get the device port location for the USB link
STM32_Programmer_CLI -l usb ------------------------------------------------------------------- STM32CubeProgrammer v2.2.0 ------------------------------------------------------------------- ===== DFU Interface ===== Total number of available STM32 device in DFU mode: 1 Device Index : USB1 USB Bus Number : 003 USB Address Number : 002 Product ID : DFU in HS Mode @Device ID /0x500, @Revision ID /0x0000 Serial number : 004800233338511634383330 Firmware version : 0x0110 Device ID : 0x0500
- Program the microSD card with the image for the trusted boot chain
STM32_Programmer_CLI -c port=usb1 -w flashlayout_st-image-weston/FlashLayout_sdcard_stm32mp157c-dk2-trusted.tsv
- If the board power supply doesn't supply enougth current (3A), the red LED indicates the issue following the rules below:
blink console message boot process 2 times WARNING 500mA power supply detected Current too low, use a 3A power supply!
Continue and red LED stays ON 3 times WARNING 1500mA power supply detected Current too low, use a 3A power supply!
Continue and red LED stays ON forever ERROR USB TYPE-C connection in unattached mode Check that USB TYPE-C cable is correctly plugged
stop forever USB TYPE-C charger not compliant with USB specification stop
- The flash programming operation takes several minutes (mainly depending of the rootfs size). A successful flash programming should be terminated by this following log information
Flashing service completed successfully
7 Boot the board[edit]
- Set the boot switches (located at the back of the board) to the on position
- Power up the board
- Press the reset button to reset the board
- After few seconds, the board starts and automatically go through the following screens
![]() |
![]() |
![]() |