Last edited one year ago

Populate the target and boot the image

1. Open a terminal[edit source]

Open a terminal on the host computer.

Ubuntu terminal

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

  • Create your STM32MPU workspace directory on the host computer:
PC $> mkdir $HOME/STM32MPU_workspace
PC $> cd $HOME/STM32MPU_workspace

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

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

The command below enables checking for Internet access through http/https protocols:

PC $> 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:

PC $> export http_proxy=http://<MyProxyLogin>:<MyProxyPassword>@<MyProxyServerUrl>:<MyProxyPort>
PC $> export https_proxy=http://<MyProxyLogin>:<MyProxyPassword>@<MyProxyServerUrl>:<MyProxyPort>

Check again the Internet access using the command:

PC $> 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."

3. Install the tools[edit source]

3.1. STM32CubeProgrammer[edit source]

  • Create your STM32MPU tools directory on the host computer:
PC $> mkdir $HOME/STM32MPU_workspace/STM32MPU-Tools
PC $> mkdir $HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-x.y.z
  • Create a temporary directory in your STM32MPU workspace:
PC $> mkdir $HOME/STM32MPU_workspace/tmp

STM32CubeProgrammer V2.9 recommended for ecosystem release v3.1.0 More info.png

  • Uncompress the archive file to get the STM32CubeProgrammer installers:
PC $> cd $HOME/STM32MPU_workspace/tmp
PC $> 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.
PC $> ./SetupSTM32CubeProgrammer-x.y.z.linux

The screenshots below have been obtained with old STM32CubeProgrammer V2.7.0. They are provided as examples still valid for higher version :

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:
PC $> STM32_Programmer_CLI --h
     -------------------------------------------------------------------
                       STM32CubeProgrammer vx.y.z                  
     -------------------------------------------------------------------

3.2. USB serial link[edit source]

  • Install the libusb on your host computer:
PC $> sudo apt-get install libusb-1.0-0
  • To allow STM32CubeProgrammer to access the USB port through low-level commands, proceed as follows:
PC $> cd $HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-x.y.z/Drivers/rules
PC $> sudo cp *.* /etc/udev/rules.d/

4. Download the image[edit source]

4.1. For STM32MP13x lines More info.png[edit source]

  • Create your STM32MP13 Starter Package directory on the host computer:
PC $> mkdir $HOME/STM32MPU_workspace/STM32MP13-Ecosystem-v3.1.0
PC $> mkdir $HOME/STM32MPU_workspace/STM32MP13-Ecosystem-v3.1.0/Starter-Package


Warning white.png Warning
Only microSD cards SanDisk Class 10 and UHS Speed Class 1 are verified. Others are not recommended.
  • The STM32MP1 image (binaries) is delivered through one tarball file named
    • FLASH-stm32mp13-disco-openstlinux-5.10-dunfell-mp13-21-11-30.tar.xz for STM32MP135x-DK More info green.png

  • Download and install the STM32MP1 image (binaries):


STM32MP1 Starter Package image - STM32MP13-Ecosystem-v3.1.0.ALPHA release
Download

If you didn't retrieve yet the file FLASH-stm32mp13-disco-openstlinux-5.10-dunfell-mp13-21-11-30.tar.xz, please follow instructions on the downloading instructions page.

Installation
$ cd <working directory path>/Starter-Package
  • Download the tarball file in this directory
  • Uncompress the tarball file to get the binaries for the different partitions of the image, and the Flash layout files:
$ tar xvf FLASH-stm32mp13-disco-openstlinux-5.10-dunfell-mp13-21-11-30.tar.xz
Release note

Details of the content of this software package are available in the associated STM32MP13 ecosystem release note.
Archive box.png If you are interested in older releases, please have a look into the section Archives

  • The binaries and the Flash layout files are in the <Starter Package installation directory>/stm32mp13-disco-openstlinux-5.10-dunfell-mp13-21-11-30/images/stm32mp13-disco/ directory:
stm32mp13-disco
├── arm-trusted-firmware                       TF-A binaries for FSBL partitions and supported boot chains
│   ├── tf-a-stm32mp135f-dk-sdcard.stm32       TF-A binary for FSBL partition (microSD card boot device) for STM32MP135F-DK → STM32MP13 Discovery kits
│   ├── tf-a-stm32mp135f-dk-uart.stm32         TF-A binary for uart serial boot mode (STM32CubeProgrammer) for STM32MP135F-DK → STM32MP13 Evaluation boards
│   └── tf-a-stm32mp135f-dk-usb.stm32          TF-A binary for usb serial boot mode (STM32CubeProgrammer) for STM32MP135F-DK → STM32MP13 Discovery kits
├── fip                                        FIP binaries for FIP partitions and supported boot chains
│   └── fip-stm32mp135f-dk-optee.bin           FIP binary for FIP partition (optee boot chain) for STM32MP135F-DK → STM32MP13 Discovery kits
├── flashlayout_st-image-weston                                 Flash layout files (description of the partitions) for the supported boot chains on supported boot devices and boards
│   └── optee                                                   Flash layout files for optee boot chain
│       └── FlashLayout_sdcard_stm32mp135f-dk-optee.tsv         microSD card boot device for STM32MP135F-DK → STM32MP13 Discovery kits
├── kernel
│   └── config-5.10.61                              Kernel configuration file used to build kernel binaries
├── scripts
│   └── create_sdcard_from_flashlayout.sh
├── st-image-bootfs-openstlinux-weston-stm32mp13-disco.ext4                            Binary for bootfs partition on eMMC and microSD card devices
├── st-image-bootfs-openstlinux-weston-stm32mp13-disco.manifest
├── st-image-userfs-openstlinux-weston-stm32mp13-disco.ext4                            Binary for userfs partition on eMMC and microSD card devices
├── st-image-userfs-openstlinux-weston-stm32mp13-disco.manifest
├── st-image-vendorfs-openstlinux-weston-stm32mp13-disco.ext4                          Binary for vendorfs partition on eMMC and microSD card devices
├── st-image-weston-openstlinux-weston-stm32mp13-disco.ext4                            Binary for rootfs partition on eMMC and microSD card devices
├── st-image-weston-openstlinux-weston-stm32mp13-disco.license
├── st-image-weston-openstlinux-weston-stm32mp13-disco-license_content.html            License summary for all packages needed to feed all partitions
└── st-image-weston-openstlinux-weston-stm32mp13-disco.manifest

4.2. For STM32MP15x lines More info.png[edit source]

  • Create your STM32MP15 Starter Package directory on the host computer:
PC $> mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.1.0
PC $> mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.1.0/Starter-Package
PC $> cd $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.1.0/Starter-Package
  • Download the STM32MP15-Ecosystem-v3.1.0 Starter Package to the following directory:
    $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.1.0/Starter-Package
  • Uncompress the tarball file to get the binaries for the different partitions of the image, and the Flash layout files
PC $> tar xvf en.FLASH-stm32mp1-openstlinux-5-10-dunfell-mp1-21-11-17_tar.xz