Populate the target and boot the image

STM32MP157C-EV1.png
Let's start Develop on Arm® Cortex®-A7
Step category in.png Unpack the board Step.png Populate the target and boot the image Step.png Execute basic commands Step.png Use the demo launcher Step category out.png


1. Overview[edit source]

This stage explains how to get, install and boot the STM32MP15 Evaluation boards with the Starter Package.

2. Open a terminal[edit source]

Open a terminal on the host computer.

Ubuntu terminal

All the commands preceded by have to be executed from the host computer terminal.

  • Create your STM32MPU workspace directory on your host computer
 mkdir $HOME/STM32MPU_workspace
 cd $HOME/STM32MPU_workspace

3. Check the host computer Internet access[edit source]

  • An Internet access through http and https protocols must be provided.

The command below allows to check 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 well configured.
In such case, skip the rest of this section.

Any other likely situation indicates the need for a proxy for http/https protocols.
The best solution to set a proxy for http/https protocols is via 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 with 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 source]

4.1. STM32CubeProgrammer[edit source]

Info white.png Information
  • STM32CubeProgrammer requires 1.8 version of the Java platform.
sudo apt-get install openjdk-8-jre-headless
sudo update-alternatives --config java
Select the java-8-openjdk configuration.
  • Install OpenJFX for Ubuntu®18.04
sudo apt purge openjfx
sudo apt install openjfx=8u161-b12-1ubuntu2 libopenjfx-jni=8u161-b12-1ubuntu2 libopenjfx-java=8u161-b12-1ubuntu2
sudo apt-mark hold openjfx libopenjfx-jni libopenjfx-java
  • Create your STM32MPU tools directory on your 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
Warning white.png Warning
ecosystem release ≥ v2.0.0 More info.png requires STM32CubeProgrammer V2.4 or upper
  • 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 the installation directory, when it's requested by the installer
 ./SetupSTM32CubeProgrammer-x.y.z.linux

Screenshots, done with STM32CubeProgrammer V2.5.0, are given as examples below:

Splash screen
Welcome page
Installation path
  • 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 source]

  • 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 source]

The software package is provided AS IS, and by downloading it, you agree to be bound to the terms of the software license agreement (SLA). The detailed content licenses can be found here.

Warning white.png Warning
To download a package, it is recommended to be logged in to your "myst" account [1]. If, trying to download, you encounter a “403 error”, you could try to empty your browser cache to workaround the problem. We are working on the resolution of this problem.
We apologize for this inconvenience
For ecosystem release v2.1.0 More info.png[edit source]
Warning white.png Warning
Only microSD card SanDisk Class 10 and UHS Speed Class 1 are verified. Others are not recommended.
  • Create your STM32MP15 Starter Package directory on your host computer
 mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v2.1.0
 mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v2.1.0/Starter-Package
 cd $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v2.1.0/Starter-Package
  • Download the STM32MP15-Ecosystem-v2.1.0 Starter Package to the following directory:
    $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v2.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-4-dunfell-mp1-20-11-12.tar.xz
For ecosystem release v2.0.0 More info.png[edit source]
Warning white.png Warning
Only microSD card SanDisk Class 10 and UHS Speed Class 1 are verified. Others are not recommended.
  • Create your STM32MP15 Starter Package directory on your host computer
 mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v2.0.0
 mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v2.0.0/Starter-Package
 cd $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v2.0.0/Starter-Package
  • Download the STM32MP15-Ecosystem-v2.0.0 Starter Package to the following directory:
    $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v2.0.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-4-dunfell-mp1-20-06-24.tar.xz


6. Populate the SDCard[edit source]

  • Set the boot switches (located at the back of the board) to the off position :
boot switches position to flash the board


  • Connect USB Type A to Type C cable between PC and CN16/USB_OTG port of the STM32MP157x-EV1 mother board
  • Power up the board
  • Press the reset button to reset the board
  • Launch STM32CubeProgrammer to get the GUI :
STM32CubeProgrammer GUI


  • On the right, select USB (not STLINK, set by default) in the connexion picklist and click on refresh button. Serial Number is displayed if USB is detected.
Select USB for connection with board
  • Click on "Connect"
  • Select "Open File" tab and select the "FlashLayout_sdcard_stm32mp157c-ev1-trusted.tsv" file or the "FlashLayout_sdcard_stm32mp157f-ev1-trusted.tsv"" file (depending on the board) in the Starter Package installation folder ("$HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v2.y.z/Starter-Package/stm32mp1-openstlinux-5-4-dunfell-mp1-20-11-12/images/stm32mp1/flashlayout_st-image-weston/trusted")
  • Fill the "Binaries Path" by browsing up to folder $[Starter_Pack_Path]/images/stm32mp1
open .tsv and fill Binaries Path
  • Click on "Download" to start the flashing process.
  • Progress is displayed with progress bar till completion pop-up message.

7. Boot the board[edit source]

  • Set the boot switches (located at the back of the board) to the ON position
boot switches position to boot the board
  • Power up the board
  • Press the "Reset" button to reset the board
  • After few seconds, the board starts and automatically goes through the following screens
Warning white.png Warning
Be patient for very first boot after flash which takes about 2 min. It's less than 20s afterward
UBoot splash screen
Linux splash screen
Weston desktop
GTK demo launcher


Back button.png Overview button.png Next button.png